Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 卷与实例不在同一可用性区域中_Python_Amazon Web Services_Amazon Ec2_Volume_Boto - Fatal编程技术网

Python 卷与实例不在同一可用性区域中

Python 卷与实例不在同一可用性区域中,python,amazon-web-services,amazon-ec2,volume,boto,Python,Amazon Web Services,Amazon Ec2,Volume,Boto,我试图在我的代码中找到一个错误,因此我创建了一个实例,而不是试图将卷附加到此实例,但出现错误:卷“vol-fc61968f”与实例不在同一可用性区域,这清楚地表明区域不同 我试图将可用性区域放入a_zone变量中,但不幸的是,它不起作用,所以请告诉我我的问题是什么 >>> a_zone = instance.placement >>> a_zone us-east-1c >>> ec2.create_volume(2,a_zone) Volu

我试图在我的代码中找到一个错误,因此我创建了一个实例,而不是试图将卷附加到此实例,但出现错误:
卷“vol-fc61968f”与实例不在同一可用性区域
,这清楚地表明区域不同 我试图将可用性区域放入
a_zone
变量中,但不幸的是,它不起作用,所以请告诉我我的问题是什么

>>> a_zone = instance.placement
>>> a_zone
us-east-1c
>>> ec2.create_volume(2,a_zone)
Volume:vol-7957a00a
>>> 
>>> volume.zone
us-east-1d
更新 我这样做:

>>> dir(instance)
['__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', '_in_monitoring_element', '_placement', '_previous_state', '_state', '_update', 'add_tag', 'ami_launch_index', 'architecture', 'block_device_mapping', 'client_token', 'confirm_product', 'connection', 'create_image', 'dns_name', 'ebs_optimized', 'endElement', 'eventsSet', 'get_attribute', 'get_console_output', 'group_name', 'groups', 'hypervisor', 'id', 'image_id', 'instance_profile', 'instance_type', 'interfaces', 'ip_address', 'item', 'kernel', 'key_name', 'launch_time', 'modify_attribute', 'monitor', 'monitored', 'monitoring', 'persistent', 'placement', 'placement_group', 'placement_tenancy', 'platform', 'previous_state', 'previous_state_code', 'private_dns_name', 'private_ip_address', 'product_codes', 'public_dns_name', 'ramdisk', 'reason', 'reboot', 'region', 'remove_tag', 'requester_id', 'reset_attribute', 'root_device_name', 'root_device_type', 'spot_instance_request_id', 'start', 'startElement', 'state', 'state_code', 'state_reason', 'stop', 'subnet_id', 'tags', 'terminate', 'unmonitor', 'update', 'use_ip', 'virtualization_type', 'vpc_id']
>>> instance.placement
us-east-1c
>>> instance.placement.zone
Traceback (most recent call last):
  File "/usr/lib/gedit/plugins/pythonconsole/console.py", line 383, in __run
    r = eval(command, self.namespace, self.namespace)
  File "<string>", line 1, in <module>
AttributeError: 'unicode' object has no attribute 'zone'
>>> 
>>目录(实例)
“UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU","str","subclass hook","weakref","inu monitoring"元素","placement","previous state","state"update","add tag"ami_启动索引、体系结构、块设备映射、客户端令牌、确认产品、连接、创建映像、dns名称、ebs\U优化、endElement、EventSet、get\U属性、get\U控制台输出、组名称、组、虚拟机监控程序、id、映像id、实例配置文件、实例类型、接口、ip地址、项、内核el、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、ster_id’、‘重置_属性’、‘根_设备名称’、‘根_设备类型’、‘点_实例_请求_id’、‘开始’、‘startElement’、‘状态’、‘状态代码’、‘状态原因’、‘停止’、‘子网_id’、‘标记’、‘终止’、‘卸载’、‘更新’、‘使用_ip’、‘虚拟化_类型’、‘vpc_id’]
>>>例如:位置
美国-东方-1c
>>>instance.placement.zone
回溯(最近一次呼叫最后一次):
文件“/usr/lib/gedit/plugins/pythonconsole/console.py”,第383行,运行
r=eval(命令,self.namespace,self.namespace)
文件“”,第1行,在
AttributeError:“unicode”对象没有属性“zone”
>>> 

placement
似乎未记录,但我猜它返回的是
boto.ec2.instance.InstancePlacement
,而不仅仅是一个区域。你试过
a_zone=instance.placement.zone吗?所以我错了。刚刚检查了代码,对我来说效果很好。您可以发布一个完整的自包含示例吗?我不知道这是剪切/粘贴错误还是什么,但您发布的示例在us-east-1c中创建了一个卷,但实际上并没有将其分配给变量
volume
。你能从previos操作中得到一个值吗?所示的代码(除此之外)应该可以工作。