knife-soloを使わない低依存なChef&Vagrant連携術

knife-soloのインスコに半日を費やしたあげくインスコできなかったDQNEOですこんにちは。

knife-soloは何がいいのかというと、
「手元のレシピをリモートにrsyncで転送した後chef-soloを実行し、その出力をストリームで送り返してくれる」のです。

ふむふむ。

え、ちょっと待って。
それってrsyncとsshでやればよくね?

しかもVagrantはデフォルトでホストとゲストでディレクトリ共有できる機能があるので、レシピを共有領域に置いておけばrsyncで転送する必要もないわけです。

とういわけでやってみたらできました。

手順

ホスト側のマシン(WindowsとかCygwinとかMacとか)でクックブックを編集した後、
ssh remotehost 'cd /vagrant/chef-repo &&  sudo chef-solo -c solo.rb -j ./localhost.json'

たったこれだけでChefレシピの実行ができます。
なんと簡単!!


この方法のメリットはホスト側にChefやらGemやらRubyやらを入れずに済むことです。

\(低依存バンザイ)/

knife-soloをインストールしようとして七転八倒した人には、ぜひこの方法を試してみて下さい☆

それでは Happy Provisioning!
カテゴリ: