vagrant+awsであやふやな境界線へ

最近はまっているvagrant。楽しすぎる。
JAWSな人としてはEC2をvagrantで起動してという事やっておかないとねー^^;;

ということで vagrant-aws を利用してEC2の起動にチャレンジ

プラグインのインストール

vagrant-awsをインストールします。

vagrant plugin install vagrant-aws

これでインストール完了。かなり楽ちん
私が入れているpluginは

  • sahara (0.0.15)
  • vagrant-aws (0.2.2)
  • vagrant-omnibus (1.1.0)

boxの準備

vagrant box add dummy https://github.com/mitchellh/vagrant-aws/raw/master/dummy.box

起動するのはEC2だけどvagrantにはboxが必要なのでdummyのboxを用意します。

Vagrantfileの編集

aws用に編集します。

抜き出すと下記のような感じ

config.vm.provider :aws do |aws, override|
aws.access_key_id = “アクセスキー”
aws.secret_access_key = “シークレットアクセスキー”
aws.keypair_name = “キーペア名”
aws.instance_type = “起動するインスタンスタイプ名”
aws.region = “リージョン”
aws.ami = “起動するAMI名”
override.ssh.username = “SSHユーザ名”
override.ssh.private_key_path = “キーのパス”
aws.security_groups = [‘適用するセキュリティグループ名’]
aws.tags = {
‘Name’ => ‘vagrant-test’,
‘Description’ => ‘vagrant test’
}
end

そんでもって起動

起動は
vagrant up –provider=aws
で起動します。

SSH接続

いつも通りのコマンドで接続可能
vagrant ssh

2013 08 05 16 50 45

Public DNS名を調べないでも接続出来るのは素晴らしい。

このあとChefで環境をががーっと流し込むんだよねぇ〜
とりあえずここまで^^;;

とはいえDevOpsの世界・・・こんなにすぐ近くまで手軽に出来るようになっている・・・・awsで上がってしまえばサービスイン可能だもんねー

DevOpsとは

開発(Development)と運用(Operations)が協力し、ビジネス要求に対して、より柔軟に、スピーディに対応できるシステムを作り上げるためのプラクティスです。

でも個人的にはDevOpsとかいう事では無くローカルとリモートとの垣根や境界線がだんだん薄まってくることが大切かと思う。

未来は今以上に境界線があやふやになってきて垣根が低くなるんだろうなぁ〜

Vagrant + Jenkins の CI を AWS でも回すを読みながら次の事を考える。
今度はChef?それともMulti VM?