簡単!MacOSXやLinuxにChef,Knife,Berkshelfを一発でインストールしてくれるChefDKの紹介

最近 ChefDKという全部入りパッケージがリリースされたので、これで一発です。
http://www.getchef.com/downloads/chef-dk/

CentOS6だとこんな感じで一発です。
sudo rpm -ivh https://opscode-omnibus-packages.s3.amazonaws.com/el/6/x86_64/chefdk-0.3.0-1.x86_64.rpm
rubyとかrbenvとかgemとかの環境について頭を悩ませる必要がないのでとても楽です。
ちなみにChefDKを使わずに自力でこれらをインストールしようとするとどうなるかというと、すごい時間がかかります。
とくにBerkshelfが依存しているライブラリで"dep-selector-libgecode" というのがものすごい怪物のようなしろもので、コンパイルするのにメモリを2GBも占有するのでしょぼいマシンだとOOM Kiillerにやられてコンパイル途中で落ちたりします。悲しい。

詳しくはこの辺をごらんください。
"さくらのVPS Ubuntu14.04LTS初期設定 -berkshelfのインストール- | schrödinger.jp"

なので余計な苦労をしたくない人にはChefDKがおすすめです。

追加でknife soloをインストールする方法

ChefDKにはknife soloが含まれていません。追加でインストールするには下記のようにします。
(MaxOSXで動作確認済み。Linuxでは未確認)
chef gem install knife-solo
こうすれば、ChefDK内蔵のruby/gemのエコシステム内にknife-soloをインストールしてくれます。
すばらしい!

knife solo prepareは使う必要ないかも

よくリモート先のサーバにChefを入れるのにknife solo prepareする例が紹介されますが、そんなラッパーをかませるより上の手順で直接インストールしてしまった方が単純でトラブルも起こりにくいと思います。
(もちろんケースバイケースだとは思いますが)
私はChefDKの簡単さに感動して、 knife solo prepareは使わないで済まそうと心に決めました。
カテゴリ: