More Related Content
Similar to Chefで始めるWindows Server構築 (20)
More from Takashi Kanai (9)
Chefで始めるWindows Server構築
- 2. 名前:金井 崇
所属:株式会社IDCフロンティア
仕事:2008年からクラウド(IaaS)インフラの設計・構築・運用
を担当。最近はオールフラッシュやGPUなどIaaSの強化を担当。
Chefを使った基盤の設計・構築も過去に実施。
SNSなど:
Facebook https://www.facebook.com/anikundesu
Blog http://www.takanyan.net/
Twitter @anikundesu
LinkedIn https://jp.linkedin.com/in/takashikanai/ja
Copyright © 2016 System Center User Group Japan.
All Rights Reserved. 1
- 3. Copyright © 2016 System Center User Group Japan.
All Rights Reserved. 2
内容は当社クラウドに関することが多いですが、
私の担当は、本日の主題でもある「Chef」について。
以下のような疑問への答えが、あるかも。
• クラウドでインスタンス作成・ミドルウェア構築・
リリースまで全自動で実行する方法
• 本日扱わない、Linux系OSの自動構築方法
• Chef以外の構築自動化ツールの利用方法
- 6. 本セッションは、Windows10 Insider Preview(Fast Ring、タイミングによりバージョンが異なる)とWindows Server
2016 Technical Preview 5での検証結果をもとに記述をしています。正式版では挙動が異なる場合がありますので、
ご留意ください。
本セッション資料は、個人で準備した環境において、個人的に実施した検証/結果を基に記載しています。
あくまで個人の意見/見解であり、所属する会社/組織及びマイクロソフト社とは関係がございません。
所属する会社/組織/マイクロソフト社の正式な回答/見解ではない事に留意してください。
また、本資料を閲覧した事により問題が生じた場合、または問題が発生しかけた場合、または生じた一切の不利益に
ついて、発表者は一切の責任を負う事はできませんのでご了承ください。
Copyright © 2016 System Center User Group Japan.
All Rights Reserved. 5
- 7. 1. Chef Overview
• Chefとは何か
• なぜChefを使うのか
• ChefとWindows
2. Chef環境の構築
• Chef Serverの構築
• Chef Workstationの構築
• ChefからWindows Serverを自動構築
3. Chef開発環境の整備
• Windows Subsystem for Linux
• Visual Studio Code
Copyright © 2016 System Center User Group Japan.
All Rights Reserved. 6
- 9. 構築・構成管理の自動化ツール
オープンソースソフトウェア
管理サーバー(Chef Server)で構成を一括管理
Agent(Chef Client)がサーバーから構成を取得(Pull)
開発はChef Workstationで行う
Copyright © 2016 System Center User Group Japan.
All Rights Reserved. 8
Chef開発環境
(Workstation)
構成管理
(Server)
管理対象Agent
(Client)
- 11. Cookbook:Rubyで記述した特定の操作・ソフトの設計書
Role :Cookbook、Recipeを束ねた役割(Web、DBなど)
Knife :Chefに指示を出すためのコマンド
Copyright © 2016 System Center User Group Japan.
All Rights Reserved. 10
Cookbook
Metadata
(名称、バージョンなど)
Recipes
(操作の指示)
Attributes
(変数の指示)
Resources (操作する対象・Action・変数)
Execute
(コマンド実行)
File
(File操作)
Packages
(アプリ導入)
Templates
(変数有File)
Service
(起動・停止)
etc….
Providers
(OS抽象化)
Libraries
(補助Script)
OS(Client)
指示
抽象化 補助
- 12. DevOps
◦ インフラをコードで記述→“Infrastructure as Code”
◦ Code Test手法が使える→“Test Driven Infrastructure”
Open Source
◦ Open Sourceのコミュニティの力を使える
◦ Chef”エコシステム”が出来ている
シームレス
◦ Windows, Linux両方で使える
◦ クラウドでもオンプレでも使える
Copyright © 2016 System Center User Group Japan.
All Rights Reserved. 11
- 13. ChefはWindowsをフルサポート
◦ Cookbook開発はWindows/Linuxで同等に可能
◦ PowerShell DSC対応
◦ Azure RM対応ツール群(テストツールなど)
◦ リモートコマンド実行はwinrm, ssh両方対応
Copyright © 2016 System Center User Group Japan.
All Rights Reserved. 12
“Together, Chef and Microsoft are empowering DevOps adoption in the enterprise
with integrated technologies that improve collaboration and speed software
development.”
- Jeffrey Snover, Technical Fellow and Lead Architect for Windows Server, Microsoft
- 15. Chef ClientChef ServerChef Workstation
Windows10 ProノートPC上のHyper-Vで構成
Copyright © 2016 System Center User Group Japan.
All Rights Reserved. 14
• Windows10 Pro上のBash on Ubuntu
• Cookbook開発はVisual Studio Code
• Hyper-Vのホストを兼務
• Windows10 Pro上のVM
• CentOS 7.2
• ホスト名はChefServer
• Windows10 Pro上のVM
• Windows Server 2016 TP5
• ホスト名はWin2016TP5-chef
- 16. Chef ServeはLinux系OS上にのみ構築可能
Chef本家サイトにある手順で実行
https://docs.chef.io/install_server.html
Copyright © 2016 System Center User Group Japan.
All Rights Reserved. 15
- 19. DEMO 2
Bash on Ubuntu on Windows10で構築した
Chef Workstationでのknifeコマンド実行
Copyright © 2016 System Center User Group Japan.
All Rights Reserved. 18
- 20. <事前準備>
◦ Windows ServerにIPアドレスを設定
◦ “winrm quickconfig”でリモート管理を有効化
◦ 名前解決ができるようChef Serverのhostsを編集
◦ Windows用Cookbookを開発
<構築時の操作>
“knife bootstrap”コマンド
⇒Chef ClientのインストールからCookbook実行を自動化
Copyright © 2016 System Center User Group Japan.
All Rights Reserved. 19
- 21. DEMO 3
Chef cookbookを実行してWindows Server 2016 TP5へ
(1) IISの役割のインストール
(2) IISで公開するコンテンツ展開を実行
Copyright © 2016 System Center User Group Japan.
All Rights Reserved. 20
- 22. Cookbookの更新(開発)
Chef Serverへのアップロード
$ git add (更新したファイル)
$ git commit –m “コメント”
$ knife cookbook upload (Cookbook名)
Chef Clientプログラムの実行(Workstationから)
$ knife winrm ‘name:(Clientのホスト名)' 'chef-client' -x Administrator
Copyright © 2016 System Center User Group Japan.
All Rights Reserved. 21
- 23. DEMO 4
Chef cookbookを実行してWindows Server 2016 TP5へ
(1) IIS Cookbookのコンテンツを編集
(2) ClientでのCookbook再実行
Copyright © 2016 System Center User Group Japan.
All Rights Reserved. 22
- 25. Windows10 build 14393から利用可能
Windows10上にUbuntu 14.04が!
導入手順はMSDNの下記URLを参照
https://msdn.microsoft.com/ja-jp/commandline/wsl/install_guide
Copyright © 2016 System Center User Group Japan.
All Rights Reserved. 24
- 26. Windows, Linux, Mac OSで動く
Chef用拡張プラグインもある
Windowsでの導入手順はこちら
https://code.visualstudio.com/docs/setup/windows
Copyright © 2016 System Center User Group Japan.
All Rights Reserved. 25
- 27. デフォルトのTerminalはcmd.exe
設定変更は「ファイル」>「基本設定」>「ユーザー設定」
以下の内容をsettings.jsonに記述
統合Terminalでのコピー&ペーストは「Ctrl+Shift+c (or v)」
Copyright © 2016 System Center User Group Japan.
All Rights Reserved. 26
{
"terminal.integrated.shell.windows": "C:¥¥Windows¥¥sysnative¥¥bash.exe",
"termnial.integrated.shell.unixlike": "bash.exe"
}