chef-solo & Windows & gitを使わない インストール
手順の流れは
- chef-clientをダウンロードしてインストールする
- chefのルートのディレクトリを決める。ただし、solo用
- その中にキャッシュのファイルとかrepoとかcookbook(repoの中)を用意して
- cookbookの中にrecipeを用意する
- recipeを使うためのファイルを用意して、chef-soloコマンドを叩けば成功!
となる予定。
他のrecipeを使いたければ自作するかダウンロードして同じように使えばOK
chef clientのダウンロード
http://www.opscode.com/chef/install/
windows
chef-client 11.4.0 ファイルサイズ60M
ダウンロード開始
この間に決めること
chefのルートディレクトリ
とりあえず、c:\chef と仮定して以降記述
インストーラをダウンロードしたところの隣にnextなリンクがあるのでそっちに行く
http://wiki.opscode.com/display/chef/Installation
インストールマニュアル!
http://wiki.opscode.com/display/chef/Installing+Chef+Client+on+Windows
後半はnot chef-soloなのでこっちを見る
http://wiki.opscode.com/display/chef/Chef+Solo
chef-soloの環境定義のファイルを用意
homeディレクトリに
solo.rb ファイルを作成する
notepad solo.rb
もしくは任意のエディタでsolo.rbを作る
中身は
file_cache_path "c://chef/cache" cookbook_path "c://chef/chef-solo/cookbooks"
chef-soloのrunlist(?)を用意
runlistに書いてるrecipeが実行される
コマンドプロンプトで
notepad chef_handler.json
もしくは任意のエディタでchef_handler.jsonを作る
中身は
{ "run_list": [ "recipe[chef_handler]" ] }
ちなみに、これはあとで試しにインストールする時に必要になるファイル
chefのローカルリポジトリを用意する
https://github.com/opscode/chef-repo
ここからzipをダウンロード
chef-repo-master.zip
c://chef/chef-solo/という名前で解凍するか中身をコピペする
結果的にディレクトリ構造としてこの構造が存在していることを確認する
c:/chef/chef-solo/cookbook
gitを使う場合はここでcloneすればOK
試しにchef-soloでインストールしてみる
chef_handlerを用意する
https://github.com/opscode-cookbooks/chef_handler
ここからzipをダウンロード
c:/chef/chef-solo/cookbook ここにchef_handlerディレクトリとして解凍する
ディレクトリ構造としては C:\chef\chef-solo\cookbooks\chef_handler こんな感じになっている
gitを使う場合はここでcloneしてもOK
runlistのファイルを作った場所でコマンドプロンプトからchf-soloをテスト起動する
chef-solo -W -c solo.rb -j chef_handler.json
エラーが無ければ-Wを消して実行すれば実行される
chef-solo -c solo.rb -j chef_handler.json
これでwindowsのchef-solo環境はとりあえず完成!
あとは好きなrecipeをダウンロードしたりできるはず(一部誇張)