とりあえずインストールしたCentOSにChefでインストールしてみる

VirtualBoxにCentOSをとりあえずインストール
の続き
かつ、Macにchefとknife-soloがインストールされた状態。

とりあえずインストールしたCentOSにChefでインストールしてみる。


今回は、PHPをインストールしてみる。
インストール先のCentOSIPアドレスは「192.168.56.101」となっている。

パスワード無しの設定

パスワード無しでCentOSにログインできるようにしておく。

まず、鍵がなければ作成しておく。

$ ssh-keygen

鍵を転送し、authorized_keysに追加する。

$ scp ~/.ssh/id_rsa.pub ユーザー名@192.168.56.101:
$ ssh ユーザー名@192.168.56.101
centos$ mkdir .ssh
centos$ chmod 700 .ssh
centos$ cat id_rsa.pub >> .ssh/authorized_keys
centos$ chmod 600 .ssh/authorized_keys
centos$ rm id_rsa.pub

あと、パスワード無しでsudoを実行できるようにしておく。

centos$ sudo visudo
#%wheel        ALL=(ALL)       ALL	←コメントアウト
%wheel        ALL=(ALL)       NOPASSWD: ALL	←コメントアウトを解除

以上で、パスワード関連の設定完了。

centos$ exit

これで、パスワードを何度も入力せずにすむ。

CentOSにchefの設定を行う

Chefのリポジトリを作成し、

$ cd 適当なディレクトリ
$ knife solo init chef-repo

CentOSにChefの設定を行う。

$ cd chef-repo
$ knife solo prepare ユーザー名@192.168.56.101

クックブックを適用してみる

PHPをインストールするクックブックを作成し、

$ knife cookbook create php -o site-cookbooks
$ vi site-cookbooks/php/recipes/default.rb
package "php" do
  action :install
end

適用してみる。

$ vi nodes/192.168.56.101.json
{
  "run_list" : [
    "recipe[php]"
  ]
}
$ knife solo cook ユーザー名@192.168.56.101

以上で、PHPがインストールされる。

$ ssh ユーザー名@192.168.56.101
centos$ php -v
PHP 5.3.3 (cli) (built: Dec 11 2013 03:29:57)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies