20130413 qpstudy chef邪道編
DESCRIPTION
qpstudy 2013/04/13 LT大会資料 「Chef 邪道編」TRANSCRIPT
chef 邪道編#qpstudy 2013/04/13
おおむら @yktko
113年4月13日土曜日
qpstudy 3周年
おめでとうございます
これからもよろしくおねがいします
213年4月13日土曜日
自己紹介
おおむら ゆきたか @yktko
qpstudyスタッフやってます
SIerでクラウドの中の人やってます
chefとCloudStackがお気に入り
313年4月13日土曜日
chef
レシピを書けばサーバができる
chef ≒ 自動インストールツール
chef = 構成管理ツール
冪等性(何度実行しても同じ結果)
413年4月13日土曜日
でもさ
世の中そんなにキレイじゃない
rubyのコード書くの苦手
設定するための設定書くのマンドクセ
障害対応は実機直接触って当然
513年4月13日土曜日
邪道
公開cookbookライブラリ
汎用的なrecipe
rubyスクリプトによる高度な処理
613年4月13日土曜日
邪道
613年4月13日土曜日
Chef as a ◯◯◯◯
713年4月13日土曜日
Chef as a 設定ファイル配布ツール設定ファイルをfilesに置く
実機の設定を取り込む場合も
recipeは以下の4点のみ実行
パッケージをインストールする
サービスを自動起動させる
設定ファイルを配置する
設定ファイルが変更されていたらサービスをリロードする
package httpd do :installend
service httpd do :enableend
files "/etc/httpd/conf/httpd.conf" do file "httpd.conf" notifies :reload ! "service[httpd]", :immediatelyend
813年4月13日土曜日
Chef as a スクリプト生成ツール
対象:DRBD、pacemaker+corosync、MySQLレプリケーションなど
自動実行は怖いし厳密にチェックを入れたコードは難しい
複数サーバの状態を見ながら設定投入が必要
attributeとtemplateを使って初期セットアップスクリプトを生成
ホスト毎にセットアップスクリプトを自動生成して配布
recipeではパッケージの導入とサービス起動、セットアップスクリプトの配布のみ管理
レシピを適用したら、knife sshでスクリプトを実行
913年4月13日土曜日
Chef as a diff
1013年4月13日土曜日
Chef as a diffあれだけ言っても直接設定をイジるヤツがいる
1013年4月13日土曜日
Chef as a diffあれだけ言っても直接設定をイジるヤツがいる
chefのwhy-runを実行すると
1013年4月13日土曜日
Chef as a diffあれだけ言っても直接設定をイジるヤツがいる
chefのwhy-runを実行すると
レシピと実機の違いが分かる
1013年4月13日土曜日
Chef as a diffあれだけ言っても直接設定をイジるヤツがいる
chefのwhy-runを実行すると
レシピと実機の違いが分かる
稼動系と待機系の違いが分かる
1013年4月13日土曜日
Chef as a diffあれだけ言っても直接設定をイジるヤツがいる
chefのwhy-runを実行すると
レシピと実機の違いが分かる
稼動系と待機系の違いが分かる
差分があれば
1013年4月13日土曜日
Chef as a diffあれだけ言っても直接設定をイジるヤツがいる
chefのwhy-runを実行すると
レシピと実機の違いが分かる
稼動系と待機系の違いが分かる
差分があれば
担当者を問い詰める1013年4月13日土曜日
Chef as a unit test toolアジャイル開発のunit testのメリットをインフラに
初期セットアップ後時間があくとチェックインが怖い
chef使わなくなる!あかん
定期的にチェックインする≒リグレッションテスト
why-run!チェックイン!記録に残る
チェックインの記録はchef-serverの画面で確認
設定や状態が変わっていないことの確認・記録が可能
レシピを変更・適用する勇気が出る
1113年4月13日土曜日
chef as a ◯◯◯◯
使えるところから少しずつ
試してみよう
1213年4月13日土曜日
enjoy!
1313年4月13日土曜日