ruby1.9.2でChef-severを動かす
先日書いたさくらのVPSにchef-serverをインストール - kikumotoのメモ帳では ruby は 1.8.6 が使われる。
個人的には 1.9.2 の環境の方が都合がよいので、ruby 1.9.2 で chef-server を動かすようにしたときの構築をメモ。
基本的にほぼ同様な手順だけど、一部異なることとなった。
chef-server
chef-server環境はEPELのモジュールを必要とするので、
# rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
は実行しておく。ELFFは不要。
で、
# gem install chef
を実行すると
ERROR: While generating documentation for chef-0.9.14 ... MESSAGE: Error while evaluating /usr/lib/ruby/1.9.1/rdoc/generator/template/darkfish/classpage.rhtml: undefined method `gsub' for nil:NilClass (at "\"method-source-code\"\n\t\t\t\t\t\tid=\"run-source\">\n<pre>\n")
というエラーがでた。解決策がわからいけれど、rdocとか不要にするととりあえず動作させるのに必要なものインストールできるようである。なので、以下を実行した。
# gem install chef --no-rdoc --no-ri
このあと、/etc/chef/solo.rb, chef.json などの記述は以前と同じで、chef-soloを実行すれば chef-server 環境がインストールされた。
ただし、ruby1.9.2 では ruby1.8.6 でしたときのような rack のバージョンダウンは不要。一方で、chef-server, chef-server-webuiの動作ユーザをrootに変更することは必要。
あとの作業は以前と同じ。
これで満足のいく環境ができた。。。と思う。