Amazon LinuxでVagrantとChef soloをする
ハッと気づいたらどうやら約1ヶ月ブログを放置していたようです。
そろそろ書かなきゃというのと、Provisioning Frameworks Casual Talks vol.1というChefとかPuppetとかの勉強会に参加する予定なので、予習がてらブログを書きます。
やる事
ざっくり構成図
手順
Amazon Linuxに必要なパッケージをインストールします。
$ sudo yum groupinstall "Development Tools" $ sudo yum install ruby19 ruby19-devel emacs libxml2-devel libxslt-devel
続いてVagrantをインストールします。
$ sudo rpm -ivh http://files.vagrantup.com/packages/7e400d00a3c5a0fdf2809c8b5001a035415a607b/vagrant_1.2.2_x86_64.rpm
AWSプラグインのインストール、ダミー用のboxをダウンロード、Vagrantfileを作成します。
$ vagrant plugin install vagrant-aws $ vagrant box add dummy https://github.com/mitchellh/vagrant-aws/raw/master/dummy.box $ vagrant init
Vagrantfileをこんな感じに編集しています。
## okochang configuration Vagrant.configure("2") do |config| config.vm.box = "dummy" config.vm.provider :aws do |aws, override| aws.access_key_id = "set your access key" aws.secret_access_key = "set your secret key" aws.region = "ap-northeast-1" aws.keypair_name = "okochang-key" aws.security_groups = ["sg-xxxxxx"] aws.subnet_id = "subnet-xxxxxxxx" aws.private_ip_address = "10.0.2.10" aws.ami = "ami-9763e696" override.ssh.username = "ubuntu" override.ssh.private_key_path = "~/.ssh/okochnag-key.pem" end end
$ vagrant up --provider aws
起動の確認とテストで接続してみます。
$ vagrant status $ vagrant ssh
kife-soloで接続するためにSSH設定を出力しておきます。
$ vagrant ssh-config --host ubuntu >> .ssh/config $ chmod 600 .ssh/config
Amazon LinxuにChefとknife-soloをインストールして、初期設定します。
$ curl -L http://www.opscode.com/chef/install.sh | sudo bash $ gem1.9 install knife-solo --pre --no-rdoc --no-ri $ knife configure
そのままknife solo initをするとエラーになるのでちょっと修正をします。
(require 'pathname'を追加しておきます)
$ vi /home/ec2-user/.gem/ruby/1.9.1/gems/knife-solo-0.3.0.pre3/lib/knife-solo.rb
リポジトリの初期化をして、ubuntuにchef-soloをインストールします。
その後はcook bookを作ってレシピ書いていけば良いわけです。
$ knife solo init chef-repo $ cd chef-repo/ $ knife solo prepare ubuntu
動作確認が終わったら削除も忘れずに。
$ vagrant destroy
まとめ
普段はMBAに入れてるVagrantとかを使っていますが、Amazon Linuxでも問題なく動きますね。
Chef soloの使い方は入門Chef soloが本当に分かりやすいと思うので是非。
参考リンク
http://d.hatena.ne.jp/naoya/20130315/1363340698
http://www.ryuzee.com/contents/blog/6538
http://blog.serverworks.co.jp/tech/2013/04/10/vagrantec2/
http://appshortcut.blogspot.jp/2013/04/knife-solo-init-uninitialized-constant.html
入門Chef Solo - Infrastructure as Code
- 作者: 伊藤直也
- 出版社/メーカー: 伊藤直也
- 発売日: 2013/03/11
- メディア: Kindle版
- 購入: 16人 クリック: 1,027回
- この商品を含むブログ (5件) を見る