狠狠撸

狠狠撸Share a Scribd company logo
2016年3月4日	
	
日本IBM 	
クラウド?テクニカル?サービス 	
高良真穂	
サーバーサイド技術者不足に効く?
CHEFを使ったサーバー構築自動化
CHEF	
Knife	
(使わないよ)	
SoftLayerの	
Server
¨? 高良 真穂 (たから まほ)	
¨? 会社 日本アイ?ビー?エム株式会社	
¤? 所属 クラウド?テクニカル?サービス	
¤? 入社14年目(中途入社)	
¨? 仕事	
¤? インフラストラクチャ アーキテクト	
¤? 過去 企業向けシステムのIT基盤の設計&構築を担当	
n? 金融業、製造業、流通業、航空業界、HPC分野などのオンプレミ
スのシステム構築に参画	
¤? 現在 クラウドでゲーム業界担当	
自己紹介
¨? クラウドのプロビジョニング速度に対応	
¨? エンジニアの不足対策	
なぜサーバー自動設定ツール?	
設計	 開発	 テスト	 運用	企画	
設
計	
開
発	
テ
ス
ト	
運用	
企画	
設
計	
開
発	
テ
ス
ト	
設
計	
開
発	
テ
ス
ト	
クラウド以前	
クラウド後	
サーバーは将来の需要を見込んだ先行設備投資	
サーバーは経費で必要な分だけ注文して即利用	
短いサイクルで開発とリリースを繰り返すため	
人材不足が深刻化
¨? クラウドのサーバーを注文後、10分で利用開始できるスピード感	
クラウドのスピードを活かすサーバー設定	
サーバー調達	
電源工事	
LAN工事	
テスト	OS設定	 M/W設定	 アプリ配置	
サーバー
調達	 テスト	M/W設定	 アプリ配置	
運用	
運用	
14日	 1日	 2日	 1日	
10分	 2日	 1日	
18日	
3日	
サーバー
調達	
テスト	
M/W
設定	
アプリ
配置	 運用	
10分	 5分	
OS
設定	
25分	
OS設定	
1日	
5分	
オンプレ時代	
クラウド利用	
クラウド+自動設定	
5分	
クラウド	
  +ゴールデンイメージ	
サーバー設定	
自動化	
クラウドにより	
自動化	
クラウドにより	
自動化
サーバー設定自動ツールを使うという事は、?
手工業からロボットラインへ移行する様なこと	
手作業の様なサーバー構築	 ロボットによるサーバー構築作業	
人数が生産力に比例	 ロボット数が生産力を決める	
優秀な技術者は簡単に育たない	 优秀な技术者のノウハウを真似
¨? Shell Script	
¨? デプロイツール	
¤? Jenkins	
¤? Capistrano	
¤? UrbanCode	
¨? サーバー設定自動化ツール	
¤? Ansible	
¤? CHEF	
¤? Puppet labs	
¤? Itamae	
¨? AWS 運用自動化ツール	
¤? Cloud Formation	
¤? OpsWorks	
自動化ツールは沢山あるけど
今日はCHEFのはなし
¨? 今日の話は、スタンドアロンパターンです	
CHEFの利用パターン	
Chef-Server	
Node	
Chef-
Client	Knife	
ssh	
Node	
Chef-
Client	Knife
solo	
ssh	
Git	
Node	
Chef-
Client	
Knife
zero	
ssh	
Chef
zero	
Repo	
ssh トンネリングで接続	
Node	
Chef-
Client	
Git	
sshリモート実行	
CHEF-Server構成	
CHEF-solo構成	 CHEF-zoro構成	
スタンドアロン	
設定対象	
設定対象	
設定対象	
設定対象	
設定を自動で実行
したいだけの人に
はコレが便利
¨? Knife や Chef Server の面倒な設定が不要、Knife-solo のsshリモート実行環境も不要	
¨? 設定の自動化のために、Chef Server を運用管理する必要がない。	
¨? 設定用の Cookbook は、設定対象のサーバーの/var/chef/cookbooks に置かれるので
単純明快	
¨? 仮想サーバーやベアメタルのプロビジョニング?スクリプトを利用すると便利	
¨? CHEF の Cookbookは、Git Server から必要なものをクローンして利用する	
¨? Cookbookは、iSCSI設定、MySQL設定など単体パーツに分けて作っておくと、再利用し
やすく便利	
	
CHEFをスタンドアロンで利用するメリット	
プライベート	
テンプレート	
イメージ	
カスタマーポータルからのプロビジョニング	
Provisioning Script	
実行	 Node	
ssh でログインして	
Cookbook適用	
Git	
Shell Script
Download	
Cookbook
Download	
本番適用	
OSイメージ	
or	
オートスケーリングのプロビジョニング	
SoftLayerで	
設定対象
¨? CHEFを利用する場合の手順と時間	
¤? ポータルから仮想サーバーをオーダー (5分)	
¤? CHEFのコマンドを実行 (2分)	
n? クックブック (https://github.com/takara9/wordpress01)	
¤? WebページからWordPressの初期設定 (2分)	
¨? CHEFのコマンドか実行する内容	
¤? Ubuntu リポジトリから最新状態に更新	
¤? nginx と php-fpm の導入と設定	
¤? MySQL の導入と設定 (セキュアインストール)	
¤? WordPressの最新版の導入	
具体的な実行例 WordPressのHP構築 
¨? Ubuntu14.04 minimal Core 1, RAM 1GB	
ポータルから仮想サーバーをオーダー
¨? コマンド実行手順 	
ログインしてCHEFを実行
実行の様子をビデオでご覧下さい	
①CHEFインストール	
②フォルダ作成	
③クックブック取得	
④クックブック適用	
https://youtu.be/xxUc7vRjW5k	
YouTube CHEFでWordPressを設定するデモ on SoftLayer
¨? WordPressの初期設定画面を開いてインストールを完了する	
Cookbook適用後の作業
インストール後の初期画面	
WP管理画面	
構築完了!
¨? Cookbookのディレクトリ
CHEF クックブックの解説 1
/var/chef/cookbook/wordpress01	
パラメータ  導入パス、ユーザーID、パスワードなど	
そのまま置く設定ファイルやシェルなど	
レシピ 設定の手順	
固有パラメータなどを設定して配置するファイル
¨? Attribute のディレクトリ
CHEF クックブックの解説 2
/var/chef/cookbook/wordpress01
¨? filesは、固定的な設定ファイルなど
CHEF クックブックの解説 3
/var/chef/cookbook/wordpress01/files
¨? Recipes は設定手順
CHEF クックブックの解説 4
/var/chef/cookbook/wordpress01/recipes
¨? Nginx_fpm の要所説明
CHEF クックブックの解説 5
/var/chef/cookbook/wordpress01/recipes/nginx_fpm.rb	
パッケージを追加インストール	
設定ファイルを置く	
パラーメータ値をセットしてファイルを置く
¨? Templateは Attribute の値で置き換え可能
CHEF クックブックの解説 6
/var/chef/cookbook/wordpress01/recipes/nginx_fpm.rbの例	
Attribute の値で置き換えられる
¨? CHEFは学習コストが高いと言われますが、簡単
に使えば、即に適用できます。	
¨? Chef Server, Chef zero, Knife など使わなくても
自動設定は可能なので、使いこなすことに拘らず、
効率を上げられるところだけ利用	
¨? レシピはパターンを覚えれば簡単	
まとめ

More Related Content

サーハ?ーサイト?技术者不足に効く颁丑别蹿