user icon

CentOS6でchef-soloを9手でインストールして実行する

chef-soloで(一例として)PostgreSQLサーバをインストールして起動するまで。
上手い人はもっと短く出来るんだろうなーと思いつつ。
それと、あわよくばchef-serverを誰か最短手で書いてくれないかなーと思いつつ。

1: http://www.opscode.com/chef/install/ から自分の環境のRPMを取得する
Chef Client > Enterprise Linux > 6 > i686 > 11.4.4-2

2: rpmをインストールする
# rpm -ivh chef-11.4.4-2.el6.i686.rpm

3:knifeの設定
# knife configure
全てデフォルトのままエンター

4:/etc/chef/solo.rbを作成
file_cache_path "/tmp/chef-repo"
cookbook_path ["/hoge/chef-repo/cookbooks"]

5:gitからレポジトリ構成をクローン
# cd /hoge
# git clone http://github.com/opscode/chef-repo.git
※/hoge/は4:のsolo.rbで指定したcookbook_pathの場所で、chef-repo以下はgitで作成される。

6:クックブック作成
# knife cookbook create postgres -o ./chef-repo/cookbooks

7:レシピ作成
./chef-repo/cookbooks/postgres/recipe/default.rb を編集
# yum install
yum_package "postgresql-server" do
action :install
end
# initdb
version_file = "/var/lib/pgsql/data/PG_VERSION"
if not File.exists? version_file then
execute "postgresql-init" do
command "service postgresql initdb"
end
sleep 5
end
# start
service "postgresql" do
action [:enable, :restart]
end

8:設定用JSON ./chef-repo/postgres.json を作成
{
"run_list": ["recipe[postgres]"]
}

9:実行
# chef-solo -j ./chef-repo/postgres.json

後はひたすら6~9を繰り返すだけです。

Facebooktwitterlinkedintumblrmail

Trackback

Comment

  • 1.
  • murave
  • 2013/07/23 00:59

chef-serverは大仰なのでcapistranoと組み合わせるってのも良いかも。
下記サイトとか素敵。

chef-solo + capistrano で複数ホストを管理する
http://d.hatena.ne.jp/sfujiwara/20120705/1341477250

名前
E-mail
URL
コメント

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)