★参考URL
http://higelog.brassworks.jp/?p=654 (主にセットアップの部分はこちらを参考に記載)
http://shrkw.hatenablog.com/entry/configure_with_chef-solo_and_knife-solo (knife-soloの設定はこちらを参考に記載)
■必要なパッケージのインストール
cd /usr/local/src
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.x86_64.rpm
rpm -ivh rpmforge-release-0.5.1-1.el5.rf.x86_64.rpm
yum install -y git
yum install -y gcc-c++ patch readline readline-devel zlib zlib-devel libyaml-devel libffi-devel openssl-devel git
yum update
■Ruby 1.9.2のインストール
wget ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.2-p0.tar.bz2
tar xjf ruby-1.9.2-p0.tar.bz2
cd ruby-1.9.2-p0
./configure
make
make install
■Chefのインストール
gem install chef
gem install knife-solo
■knifeの設定ファイル作る
cd ~
knife configure
(質問は全部Enter)
■作業場所を作る
knife solo init chef-repo
■リモートサーバへChef環境の展開
cd chef-repo
knife solo prepare [IPAddress]
■実行対象のレシピを指定
vi nodes/[IPAddress].json
-----------------------------------------------------------------
{
"run_list": [ "recipe[lamp]" ]
}
-----------------------------------------------------------------
■cookbook作成
knife cookbook create lamp -o ./site-cookbooks/
vi site-cookbooks/lamp/recipes/default.rb
-----------------------------------------------------------------
%w{httpd httpd-devel mysql mysql-server mysql-devel php}.each do |package_name|
package package_name do
action :install
end
end
-----------------------------------------------------------------
■knife solo実行
knife solo cook [IPAddress]
−−−
<<<以下リモートサーバにログインして作業>>>
■サービス起動
/etc/init.d/httpd start
/etc/init.d/mysqld start
■自動起動設定
chkconfig httpd on
chkconfig mysqld on
■動作確認
vi /var/www/html/index.php