我有一个使用boto3
库的Python 2脚本。
基本上,我有一个实例ID列表,我需要迭代它将每个实例的类型从c4.xlarge更改为t2.micro。
为了完成这项任务,我正在调用modify_instance_attribute
方法。
我不知道为什么,但我的脚本会挂起以下错误消息:
您所请求的配置不支持EBS优化的实例。
以下是我的一般情景:
说我有一段代码如下:
def change_instance_type(instance_id):
client = boto3.client('ec2')
response = client.modify_instance_attribute(
InstanceId=instance_id,
InstanceType={
'Value': 't2.micro'
}
)
所以,如果我这样执行:
change_instance_type('id-929102')
一切都没有问题。
然而,奇怪的是,如果我在for循环中执行它,如下面的
instances_list = ['id-929102']
for instance_id in instances_list:
change_instance_type(instance_id)
我收到上面的错误消息(即,您所请求的配置不支持EBS优化的实例)并且我的脚本死了。
知道为什么会这样吗?
答案 0 :(得分:3)
当我查看EBS优化实例时,我不会看到支持T2微处理器:
http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html
我认为您还需要添加EbsOptimized=false
。