Chef Soloローカル開発環境の自動構築  ~Chef Solo 操作編~

1. Chef Solo インストール
* Chef社が提供しているオムニバスインスト―ラーを使ってChefをインストール
curl -L https://www.opscode.com/chef/install.sh | sudo bash

* インストールが完了したらchef-soloコマンドが実行できるか確認
(バージョンが表示されたらOK)
chef-solo -v 

 

2. knifeコマンドでクックブックを作成
デフォルトでは、Chefのリポジトリは/var/chefディレクトが使われるので、
サンプルではこのディレクトの中にというリポジトリを操作するための
ツールがインストールされ、クックブックはこのknifeコマンドを使って作成する。
knife cookbook create [クックブック名] -o [出力先ディレクトリ]
sudo knife cookbook create hello -o /var/chef/cookbooks

※/var/chef/cookbooksディレクトリ内にhelloというクックブックが作成される。

 

3. Chef Soloをテスト実行
*「Hello, World!」というログ出力を行うレシピを作成する。
クックブックを作成するとrecipesディレクトリの中にdefault.rbという名前で
ひな形ファイルが作成されており、今回はそのファイルに以下一文を追記する。
sudo vim /var/chef/cookbooks/hello/recipes/default.rb 
log "Hello, World!"

*クックブックを作りレシピを用意できたら、chef-soloコマンドをテスト実行する。
 -oオプションでhelloクックブックを使うことを明示的に指定し、実行する。
sudo chef-solo -o hello

 

 4. Chef Soloでパッケージをインストール
* サーバモニタリングツールのdstatをテストインスト―ルする。
sudo knife cookbook create dstat -o /var/chef/cookbooks

* dstatパッケージをインストールする設定を、
  recipesディレクトリの中のdefault.rbに記述。
sudo vim /var/chef/cookbooks/dstat/recipes/default.rb 
ーーーーーーーーーーーーーーーーーーーーーーーーー
package "dstat" do
    action :install
end
ーーーーーーーーーーーーーーーーーーーーーーーーー

chef-soloコマンドを実行し、dstatのインストールを行う。
sudo chef-solo -o hello,dstat

* rpmコマンドでdstatがインストールされたか確認。
rpm -qa dstat