«前の日記(Mon, 25 Mar 2013 (平成25年)) 最新 次の日記(Wed, 27 Mar 2013 (平成25年))» 編集 RSS with tsukkomi RSS without tsukkomi

実験的「実験的日記」


Tue, 26 Mar 2013 (平成25年) [長年日記]

_ chef を使おう

ruby 2.0.0-p0 を rbenv で入れるところまで進んだサーバのセットアップ作業のつづき。tDiary をそこに移動するのが最終目標なので次は apache となるわけだけど chef を使ってみようかとこちらに寄り道。

いろいろと回り道をしてしまったのでざっくりと書いておくと

失敗ポイント

ruby 2.0.0 の環境下に gem install chef でインストールすると

$ sudo chef-solo -c solo.rb -j ./localhost.json
sudo: chef-solo: command not found

む、パスが通ってないのか。

$ sudo ~/.rbenv/versions/2.0.0-p0/bin/chef-solo -c solo.rb -j ./localhost.json
(中略)
/home/fuga/.rbenv/versions/2.0.0-p0/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:106:in `require': cannot load such file -- rubygems/format (LoadError)

これは何 ? ということでググってみたら 2.0 になっての変更によるものらしい。これ以上深入りするのは回り道になりすぎるから素直に 1.9.3 を入れることにして回避。

ruby の切り替え

1.9.3 を入れて、そっちに gem install chef で chef を入れ直したところで、chef を使う時だけ 1.9.3 を使えるといいなと思って調べてたら、rbenv local で特定のディレクトリ内で使う ruby を指定できることを知った。(まったくドキュメントを読まずに使い始めていることが丸わかりである)

ということで、

$ cd chef-repo/
$ rbenv local 1.9.3-p392

とすると、chef-repo/.ruby-version というものが作成されて

$ ruby -v
ruby 1.9.3p392 (2013-02-22 revision 39386) [x86_64-linux]

これでよし。やっと使えるようになった。サンプルレシピを実行。

$ sudo ~/.rbenv/versions/1.9.3-p392/bin/chef-solo -c solo.rb -j ./localhost.json

毎回これを打つのはめんどくさいから alias を設定して準備完了。apache のセットアップまでなかなかたどり着けない。

_ chef による apache のインストール

やっとここまで来た。

これまでの環境で使ってたから suexec は使えるようにしたいので、参考図書(まだ買ってないけど)のレシピファイルをこうして

%w{apache2 apache2-suexec}.each do |pkg|
   package pkg do
      action :install
   end
end

chef-solo 実行。

$ sudochefsolo -c solo.rb -j _chef-server-setup.json
Starting Chef Client, version 11.4.0
[2013-03-25T23:47:28+09:00] WARN: unable to detect ip6address
Compiling Cookbooks...
Converging 4 resources
Recipe: server-setup::default
 * package[apache2] action install
   - install version 2.2.22-1ubuntu1.3 of package apache2

 * package[apache2-suexec] action install
   - install version 2.2.22-1ubuntu1.3 of package apache2-suexec

 * package[openssl-blacklist] action install
   - install version 0.5-3 of package openssl-blacklist

Chef Client finished, 3 resources updated

次は設定ファイルをいじくるためのレシピの書き方を調査する。そうそう、ufw で 80 番ポートを開くのを忘れずに。これももしかしたら chef でできるのかな。

_ Windows XP および Office 2003 サポート終了まであと約 1 年。

2014 年 4 月 8 日 (米国時間) にどっちもサポート終了、と。管理下の PC では Office 2003 のほうは目処がついたけど、Windows XP のほうは終わらないかもしれない。

目次

«前の日記(Mon, 25 Mar 2013 (平成25年)) 最新 次の日記(Wed, 27 Mar 2013 (平成25年))» 編集