2

我正在使用 aws-sdk gem,我不知道如何列出所有正在运行的 ec2 实例并将它们加载到数据库中。

我需要一种方法来做到这一点。

4

3 回答 3

3
require 'aws-sdk-v1'
ec2 = AWS::EC2.new(
    access_key_id: 'YOUR_ACCESS_KEY_ID',
    secret_access_key: 'YOUR_SECRET_ACCESS_KEY',
    region: 'YOUR_EC2_REGION'
)

ec2.instances

http://docs.amazonwebservices.com/AWSRubySDK/latest/frames.html

于 2012-05-20T01:51:00.577 回答
2

上面的答案将返回所有实例,而不仅仅是正在运行的实例。您可以使用过滤器仅获取正在运行的实例:

ec2 = AWS::EC2.new
ec2.instances.filter('instance-state-name', 'running')
于 2014-05-30T03:11:54.627 回答
0

安装 AWS CLI 并运行以下命令以获取正在运行的实例 ID 列表:

aws ec2 describe-instances --filter "Name=instance-state-name,Values=running" \
| grep InstanceId | awk '{print $2}' | sed 's/^\"//g' | sed 's/\",$//g'
于 2014-06-25T16:59:54.120 回答