EC2インスタンスの起動と停止
rubyからEC2インスタンスを操作を小さなサンプルを作り練習しました。
ASW.configにてaccess_key_id
とsecret_access_key
だけでなくregion_id
も必要なのですね。それに気づかずかなり嵌りました。
そもそもどのリージョンに属しているかは、インスタンスの情報ページではなく、management consoleの右上にありました。
そのリージョンに対応するregion_idはこちらから。
http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/using-regions-availability-zones.html
EC2インスタンス起動
1 require File.expand_path(File.dirname(__FILE__) + '/../samples_config') 2 3 instance_id = "i-XXXXXXXX" 4 instance = nil 5 begin 6 instance = AWS::EC2.new.instances[instance_id] 7 if instance.status == :stopped 8 instance.start 9 p instance_id + " send run signal" 10 end 11 end
EC2インスタンス停止
1 require File.expand_path(File.dirname(__FILE__) + '/../samples_config') 2 3 instance_id = "i-XXXXXXXX" 4 instance = nil 5 begin 6 instance = AWS::EC2.new.instances[instance_id] 7 if instance.status == :running 8 instance.stop 9 p instance_id + " send stop signal" 10 end 11 end