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
Public DNS名を調べないでも接続出来るのは素晴らしい。
このあとChefで環境をががーっと流し込むんだよねぇ〜
とりあえずここまで^^;;
とはいえDevOpsの世界・・・こんなにすぐ近くまで手軽に出来るようになっている・・・・awsで上がってしまえばサービスイン可能だもんねー
DevOpsとは
開発(Development)と運用(Operations)が協力し、ビジネス要求に対して、より柔軟に、スピーディに対応できるシステムを作り上げるためのプラクティスです。
でも個人的にはDevOpsとかいう事では無くローカルとリモートとの垣根や境界線がだんだん薄まってくることが大切かと思う。
未来は今以上に境界線があやふやになってきて垣根が低くなるんだろうなぁ〜
Vagrant + Jenkins の CI を AWS でも回すを読みながら次の事を考える。
今度はChef?それともMulti VM?