Hosted Chef (Chef Server) に触れて冪等性を実感する
Opscode Chefの国内販売ベンダー(表現合ってるのか心配..)であるクリエーションラインさん主催のイベント「CL.kitchen vol.5」 に参加し、Hosted Chef(Chef Server)の入門的ハンズオンにトライしてきました。
講師は、先日の神戸・横浜でもお世話になった、@urasoko さん。
ハンズオンの内容はこんな感じ
- Opscode Chefについて
- 一般的なChef ServerとClient & Nodeの関係
- 重要コンセプトと単語
- ハンズオン
- Hosted Chef Serverへのユーザー登録
- Workstationの設定
- knife-ec2のインストールと設定
- cookbookの準備とサーバでの確認
- Apacheを設定するcookbookの自作
- Attributesの検索の結果をattribute.htmlに適用
- WorkstationからknifeコマンドでEC2を起動し設定
※ CLさんのイベント記事よりコピペ
ハンズオンの環境(超ざっくり)
- 自分のPC(Mac)
- EC2上のワークステーション(ここでレシピを作ったりknifeを実行したり。自分のPCでも良いんだけど、今回はここで。)
- Chef Server(今回はOpscode社のHosted Chefを使用)
- EC2上でChefにより作成されるノード(Serverに情報を取り行き、自動で環境を整える)
おおざっぱに流れを言うと、以下のような感じです。
- ワークステーションで作ったレシピをChef Serverにアップロードする。
- その後、ワークステーション上でknifeコマンドを実行すると、ノードがChef Serverに情報を取りに行き環境構築する。
ハンズオンをやった結果(成果&気づき)
- knife ec2でインスタンス起動&chef clientが実行できた。knifeコマンドの処理の内容と流れが分かり、けっこうモヤモヤ解消
- Attributes(変数指定)の設定が初めてうまく通った。今回はコピペだし当然なんだけど...
- 純粋に、Chef Serverってsoloより面白いかも。まだ今は、cronで定期的にchef clientを動かすような感覚に多少抵抗があるんだけど、 きっと、長い目で見たときに強い(コンフィグが腐らない)のは、そっなんだろうなとか、Chef Serverを使うことを考えると自然とDevOpsな分野に考えが及びますなー
- Hosted Chefの初期登録からセットップまでが若干手間で分かりづらい。でもたぶん自前でChef Serverを立てて運用するよりはマシなんでしょう。
- ネットワーク機器の自動構築も可能という情報は、追って調べてみる。どの辺りが対応してるんだろうか
- クリエーションラインさんのオフィスが想像以上にお洒落。あの建物はいわゆるリノベ物件ってやつですか?俺の中の篤史を何とか抑えて大人しく帰りました
ちなみに、Hosted Chef は5ノードまで無償なので、 とりあえずChef Serverを使ってみたいって時に最適すな。
一番大事なこと
Chef = インフラストラクチャをある状態に収束させるためのフレームワーク
特に、Chef Serverは単なる自動化ツールではないよと
今後、自分で調べたいこと
- Chef ServerのSearch機能でどこまでノードの情報が拾えて管理できるのか
- ruby知らないけどクックブック書きたい
最後に
8/31(土)に、浦底さん発起のJAWS-UG千葉(AWSのユーザーグループ)の第一回イベントがあるそうで、 Chefネタがあるかどうかは知らないけど、すでに興味深いテーマが挙っていて自分は参加登録しました。
JAWS-UG千葉團第1回勉強会 2013/08/31 (土) 13:00 - 17:00
また、今週のデブサミにも浦底さんは出られるそうで、 そんな圧力高めな週に丁寧に教えて頂いてどうもありがとうございました。