ruby AWS EC2インスタンスをたくさん立ち上げて,削除する
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ruby AWS EC2インスタンスをたくさん立ち上げて,削除する相关的知识,希望对你有一定的参考价值。
require 'aws-sdk'
require 'pp'
ec2 = AWS::EC2.new(region: 'ap-northeast-1')
# Launch many instances
(1..30).each do |n|
pp new_instance = ec2.instances.create(
image_id: 'ami-0b13700a',
instance_type: 't1.micro'
#key_pair: 'TestSV'
)
# add tag. server name
new_instance.add_tag('Name', value: "TestSV-#{n}")
sleep 1
end
instances = ec2.instances
# Select launched instances
pp testsv = instances.select{|instance|
instance.tags.Name =~ /TestSV-[0-9]+/
}
testsv.each do |sv|
pp sv.tags.Name
pp sv.status.to_s
end
puts "waiting TestSVs terminate..."
# terminate instances
testsv.map(&:terminate)
loop do
terminated_servers = testsv.select{|x| x.status == :terminated}.size
if testsv.size == terminated_servers then
puts "TestSVs termination has been complete!"
break
end
sleep 3
end
=begin
AWS::EC2::Instance.status values
:pending
:running
:shutting_down
:terminated
:stopping
:stopped
=end
以上是关于ruby AWS EC2インスタンスをたくさん立ち上げて,削除する的主要内容,如果未能解决你的问题,请参考以下文章
markdown AWS CLIでインスタンスのメトリクスを取得
markdown AWS VPCの作成からEC2インスタンスの起动,ELBの设定まで
markdown EC2インスタンスからファイルをダウンロード
ruby モジュールとインスタンス変数について
ruby クラスメソッドとインスタンスメソッドをミックスイン
java 同クラスの各インスタンスから,共通であるインスタンスメソッドを呼び出して,特定の结果を得る