こんにちは! JQです。
前回は『Amazon RDS編~ログの管理について~』ということでお話をしました。
今回は『AWS SDK Ruby』についてお話したいと思いますが、その前にAWSの更新情報をご紹介します。
先日、Amazon LinuxがVersionUPを発表しました。
様々変更点があり、新しくCommand Line Toolのpython版がデフォルトでインストールされるようになりました。
後々、こちらもご紹介したいと思います!
さて、ここから本題に入りまして、AWS SDK Rubyに関して記述したいと思います。
AWSでは様々なプログラム言語からアクセス出来るSDKが数多く提供されております。
今回はRubyのSDKのAmazonLinuxでのインストールから簡単なプログラム実行までをしてみます。
1.まずは必要なモジュールをyumでインストールします。
1 2 |
$ sudo yum -y install gcc make libxml2-devel libxslt-devel $ sudo yum -y install ruby-devel rubygems |
2.gemコマンドにて「aws-sdk」の依存関係も含めてインストールが可能です。
1 |
$ sudo gem install aws-sdk |
これでインストールは完了です!
3.インスタンス一覧を取得するプログラムは以下のような物になります。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
#!/usr/bin/ruby require 'rubygems' require 'aws-sdk' ※AWS接続情報 ec2 = AWS::EC2.new( :ec2_endpoint => 'ec2.ap-northeast-1.amazonaws.com', :access_key_id => ‘xxxxxxxxxxx’, :secret_access_key => 'xxxxxxxxxxxxx' ) #インスタンス一覧の取得と表示 ec2.instances.each {|ins| p ins.id } |
4.インスタンスを作成するプログラムは以下のような感じになります。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
#!/usr/bin/ruby # require 'rubygems' require 'aws-sdk' ec2 = AWS::EC2.new( :ec2_endpoint => 'ec2.ap-northeast-1.amazonaws.com', :access_key_id => ‘xxxxxxxxxxx’, :secret_access_key => 'xxxxxxxxxxxxx' ) # EC2作成 ec2.instances.create( :image_id => "ami-78f44c79" ) |
オプションで他にも様々な指定が可能です。
例、VolumeSizeやSubnet
:volume_size => 30
:subnet => “subnet-xxxxx”
詳細をお知りになりたい方は下記の公式ドキュメントでご確認下さい。
http://docs.aws.amazon.com/AWSRubySDK/latest/frames.html
いかがでしたでしょうか?
SDKを利用してプログラマブルに効率よくAWSを利用しましょう!
次回は『AWS Command Line Interface (Developer Preview)を使ってみよう!』と題してお話したいと思います。
お楽しみに!