我想获取未被某些特定键标记但未能获得所需输出的实例是我的代码
import boto3
import json
import time
import os
client = boto3.client('ec2')
response = client.describe_instances(
# DryRun=True|False,
Filters=[
{
'Name': 'tag: elasticbeanstalk:environment-name',
'Values': [
'Not tagged'
]
}
]
)
print(response)
输出我正在
{u'Reservations': [], 'ResponseMetadata': {'RetryAttempts': 0, 'HTTPStatusCode': 200, 'RequestId': 'b66a2bb5-ac75-4bc1-b359-fdac50fdfaee', 'HTTPHeaders': {'transfer-encoding': 'chunked', 'vary': 'Accept-Encoding', 'server': 'AmazonEC2', 'content-type': 'text/xml;charset=UTF-8', 'date': 'Tue, 21 Mar 2017 12:55:12 GMT'}}}
答案 0 :(得分:1)
据我所知,底层API不支持这种过滤。找到它的唯一方法是查询所有内容,或查询特定状态的机器子集,例如 RUNNING ,然后在python中对未标记资源进行过滤。
请参阅此相关问题:http://docs.confluent.io/current/streams/developer-guide.html
答案 1 :(得分:0)
我之前使用过以下内容来获取未标记的EC2的InstanceIds,您可以稍微修改一下代码以获得所需的输出。
希望有所帮助:
$ python get_untagged_ec2.py
InstanceID: i-012345abcdefg, RunningState: running
InstanceID: i-123456hijklmn, RunningState: running
InstanceID: i-234567opqrstu, RunningState: running
上述代码的输出如下所示:
mainloop