Chefを試すためにVagrantで仮想OSを用意する

Vagrantインストール

今作っているアンテナサイトをそろそろVPSに上げようと思うので、今話題のChefを使って自動化してみようと思う。

ただ、Chef自体初めてなので、まずかローカルで試すためにVagrantを入れる。

ゴール

Chefが使える環境をVagrantを使って準備する。

インストール

下記からインストールする。インストールしたVersionは「1.3.5」です。

Vagrant

boxの取得

VagrantのOSイメージは「box」と呼ばれているため、まずはboxを取ってくる必要がある。 boxの取得自体はvagrantコマンドでできるため、必要なイメージのURLを下記のリンクからコピーする

A list of base boxes for Vagrant - Vagrantbox.es

今回は「CentOS 6.4 x86_64 Minimal (VirtualBox Guest Additions 4.2.16, Chef 11.6.0, Puppet 3.2.3)」のURLをコピーする

Vagrantにboxを追加する際のコマンドは以下の通り

$ vagrant box add <ラベル名> <boxのURL>

今回は以下のコマンドを実行

$ vagrant box add centos6.4 http://developer.nrel.gov/downloads/vagrant-boxes/CentOS-6.4-x86_64-v20130731.box

ここからしばらく待ちます。

仮想OSの起動とログイン

適当な作業ディレクトリを作成して、仮想OSを起動します。

$ mkdir .~/vagrant
$ vagrant init centos6.4
$ vagrant up

起動後にsshでログインします。

$ vagrant ssh

これでログインができます。

ただし、このままではvagrantのコマンドを介してしかssh出来ないので、sshconfigに設定を書きます

ssh/configにvagrantの設定を書く

下記コマンドを実行します。ホスト名は適当で問題無いです。

$ vagrant ssh-config --host  <ホスト名> >> ~/.ssh/config 

これでsshコマンドで下記のようにログインすることが出来ます。

$ ssh <ホスト名>

仮想OSの停止

ついでに停止する方法も書きます。

$ vagrant halt

仮想OSの削除

仮想OSを削除する方法

$ vagrant destroy

おわりに

ここまででvagrantの準備とvagrantを使った仮想OSの起動が出来ました。

virtual boxから仮想OS作成と比べるとかなりラクに感じます。(コマンドだけで済むので)

次はChefを使って環境構築を行っていきます。