CentOS6.3でchef-soloを試してみた
こんな感じになりました
sudo yum install git -y mkdir workspace cd workspace git clone git://github.com/wiredool/chef-repo.git cd chef-repo git submodule init git submodule update sudo sh run-chef-solo.sh
実行するとApacheとかインストールされます。
よくわかっていないので、おかしなところがあるかも知れなません。
実際に利用してみる時は、もっと良さげなところを参考にしましょう。
思ったより簡単にできた
Ruby準備面倒そうだ、とか思っていました。
が、shなインストールスクリプト1つでバイナリ降ってきたのであっさり完了。便利なものですね。
途中の変なところでハマって、案外時間を取られたのが悲しかったです。
作業内容
実行したい作業のかたまりをこの辺の書く。
repo/site-cookbooks/hoge/recipes/default.rb
あるいは、誰かが作ったものを貰ってくる。
[submodule "cookbooks/man"] path = cookbooks/man url = git://github.com/opscode-cookbooks/man.git
準備した中で実行したいものの一覧をjsonに書く。
{ "run_list": [ "hoge", "man" ] }
あとは実行するだけ。
sudo chef-solo -c 設定ファイル -j jsonファイル
試した環境とか
AzureのCentOS6.3なVMにて。
利用したファイルはこのあたり。
https://github.com/wiredool/chef-repo
参考サイト
chef-soloとgitでCentOSの環境構築をらくらく自動化
http://kohkimakimoto.hatenablog.com/entry/2013/02/15/121741
chef-soloを使ってサーバ設定を自動化して楽をしよう! 〜chef-soloの使い方〜
http://blog.engineer.adways.net/archives/17808773.html
ハマった内容
sudo curl -L https://www.opscode.com/chef/install.sh | bash
で、権限がないよ的な。
正しくはこう。
権限が必要なのは「拾う」部分ではなくて「インストール」ですものね……
curl -L https://www.opscode.com/chef/install.sh | sudo bash