使用python boto启动Openstack实例
我尝试在opensatck设置上启动实例,并使用python boto配置多个网络 但我犯了以下错误使用python boto启动Openstack实例,python,amazon-ec2,boto,openstack,Python,Amazon Ec2,Boto,Openstack,我尝试在opensatck设置上启动实例,并使用python boto配置多个网络 但我犯了以下错误 EC2ResponseError:EC2ResponseError:400错误请求 网络不明确找到多个可能的网络,使用网络ID更具体。req-28b5a4e8-3838-4111-95db-337c5048716d 我的代码是这样的 from boto import ec2 ostack = ec2.connection.EC2Connection( ec2_access_key, ec
EC2ResponseError:EC2ResponseError:400错误请求
我的代码是这样的网络不明确
找到多个可能的网络,使用网络ID更具体。req-28b5a4e8-3838-4111-95db-337c5048716d对于配置为openstack的单个网络,上述方法工作正常 注意:run_实例没有network-id的关键字参数 我在哪里犯了错误,或者如何纠正?还是python boto中的bug 提前谢谢。你试过了吗from boto import ec2 ostack = ec2.connection.EC2Connection( ec2_access_key, ec2_secret_key, is_secure=False, port=8773, region='nova', path='/services/Cloud' ) ostack.run_instances('ami-xxxxx', key_name='BotoTest')
然后from boto import ec2 ostack = ec2.connection.EC2Connection( ec2_access_key, ec2_secret_key, is_secure=False, port=8773, region='nova', path='/services/Cloud', debug=1 )
亚马逊将其用于VPC网络?您正在运行VPC吗?我相信这不是boto的错误,boto是为与AWS-API通信而构建的。虽然EC2-AWS的大部分功能都可以与EC2 OpenStack API配合使用,但有些功能没有实现,并且会出现HTTP错误500或400 AWS使用VPC(虚拟私有云)作为网络,使用可用性区域作为子网。两者都有一个默认设置,如果在创建新实例时没有进一步的规范,则采用该设置。但在OpenStack中,我看不到将网络和子网标记为默认的可能性 在我的尝试中,如果OpenStack中有多个网络/子网,则无论是还是private\u ip\u address
都无法在subnet\u id
处指定网络/子网 编辑:如果您只有一个网络/子网,则以下代码适用于trystack.org上的boto:run\u instances()
import boto conn = boto.connect_ec2_endpoint("http://8.21.28.222:8773/services/Cloud",aws_access_key_id='...',aws_secret_access_key='...') new_instance = conn.run_instances("ami-00000020", key_name="trystack", security_groups=["default"], instance_type="m1.small")
是的,你是对的。但我试图推翻它。更新此问题很快就会出现:-)你能检查一下吗?我发现OpenStack EC2 API没有过滤vpc/子网/网络ID,它应该只为启用。与ruby libraryright\u aws
。。。正如您所说,这是一个api问题,请不要使用最新版本的openstack进行检查。我检查完后会通知你的。EC2相同的问题。启动\u实例
import boto conn = boto.connect_ec2_endpoint("http://8.21.28.222:8773/services/Cloud",aws_access_key_id='...',aws_secret_access_key='...') new_instance = conn.run_instances("ami-00000020", key_name="trystack", security_groups=["default"], instance_type="m1.small")