Vagrant サーバーのセットアップを自動化するには

Vagrantを使うと公開されているBoxesを選択するだけで仮想マシンを立ち上げることができますが、その先のいろいろなアプリケーションのインストールや設定を自動化する方法が分からないので、方法を調べます。

何がしたいか

とりあえず次の項目をよく行うするので、自動化できると嬉しい。

  • Vimの設定(.vimrcの作成と汎用的なデフォルト設定値の入力)
  • Nginxのインストール

どんな方法があるのか

ググるとこれは構築自動化というテーマであり、次のような組み合わせがあるようである。

  • Vagrant + Chef
  • Vagrant + Chef Solo
  • Vagrant + Chef + Knife
  • Vagrant + Puppet
  • Vagrant + Ansible
  • Vagrant + Ansible + Bercshelf
  • Vagrant + Capistrano
  • Vagrant + Docker
  • Vagrant + SEIL

どういったものなのか、簡単に調べてみます。

Chef

レシピに書いた内容をChef実行時に実行してくれるツール。

Knife

Chefの実行をサポートしてくれるツール。

Berkshelf

Chefの依存関係を管理してくれるツール。

Ansible

構成管理ツール。ChefやPuppetよりも後発で、シンプル。

Puppet

まとめ

サーバーのセットアップを自動化するには構成管理ツールの、Chef、Puppet、Ansibleを使えばいいようです。