Amazon ec2 如何通过boto python代码创建EC2实例

Amazon ec2 如何通过boto python代码创建EC2实例,amazon-ec2,boto,Amazon Ec2,Boto,我使用了以下代码。但是它不起作用。使用以下代码从python命令行创建实例 requests = [conn.request_spot_instances(price=0.0034, image_id='ami-6989a659', count=1,type='one-time', instance_type='m1.micro')] 导入boto.ec2 conn=boto.ec2.将_连接到_地区(“us-west-2”, aws\u访问\u密钥\u id=“”, aws_secret_a

我使用了以下代码。但是它不起作用。

使用以下代码从python命令行创建实例

requests = [conn.request_spot_instances(price=0.0034, image_id='ami-6989a659', count=1,type='one-time', instance_type='m1.micro')]
导入boto.ec2
conn=boto.ec2.将_连接到_地区(“us-west-2”,
aws\u访问\u密钥\u id=“”,
aws_secret_access_key='')
conn=boto.ec2.将_连接到_地区(“us-west-2”)
conn.run_实例(“”,key_name='myKey',
实例_type='t2.micro',
安全组=['your-security-group-here'])

要在AWS上使用Python创建EC2实例,您需要有“AWS\u access\u key\u id\u value”和“AWS\u secret\u access\u key\u value”。 您可以将这些变量存储在config.properties中,并在create-ec2-instance.py文件中编写代码

创建config.properties并在其中保存以下代码

 import boto.ec2
 conn = boto.ec2.connect_to_region("us-west-2",
 aws_access_key_id='<aws access key>',
 aws_secret_access_key='<aws secret key>')
 conn = boto.ec2.connect_to_region("us-west-2")
 conn.run_instances('<ami-image-id>',key_name='myKey', 
 instance_type='t2.micro',
 security_groups=['your-security-group-here'])
aws_access_key_id_value='YOUR-ACCESS-KEY-OF-THE-AWS-ACCOUNT'
aws_secret_access_key_value='YOUR-SECRETE-KEY-OF-THE-AWS-ACCOUNT'
region_name_value='region'
ImageId_value = 'ami-id'
MinCount_value = 1
MaxCount_value = 1
InstanceType_value = 't2.micro'
KeyName_value = 'name-of-ssh-key'
创建Create-ec2-instance.py并在其中保存以下代码

 import boto.ec2
 conn = boto.ec2.connect_to_region("us-west-2",
 aws_access_key_id='<aws access key>',
 aws_secret_access_key='<aws secret key>')
 conn = boto.ec2.connect_to_region("us-west-2")
 conn.run_instances('<ami-image-id>',key_name='myKey', 
 instance_type='t2.micro',
 security_groups=['your-security-group-here'])
aws_access_key_id_value='YOUR-ACCESS-KEY-OF-THE-AWS-ACCOUNT'
aws_secret_access_key_value='YOUR-SECRETE-KEY-OF-THE-AWS-ACCOUNT'
region_name_value='region'
ImageId_value = 'ami-id'
MinCount_value = 1
MaxCount_value = 1
InstanceType_value = 't2.micro'
KeyName_value = 'name-of-ssh-key'
使用以下命令执行python代码

import boto3

def getVarFromFile(filename):
    import imp
    f = open(filename)
    global data
    data = imp.load_source('data', '', f)
    f.close()


getVarFromFile('config.properties')

ec2 = boto3.resource(
'ec2',
    aws_access_key_id=data.aws_access_key_id_value,
    aws_secret_access_key=data.aws_secret_access_key_value,
    region_name=data.region_name_value
)

instance = ec2.create_instances(
    ImageId = data.ImageId_value,
    MinCount = data.MinCount_value,
    MaxCount = data.MaxCount_value,
    InstanceType = data.InstanceType_value,
    KeyName = data.KeyName_value)
print (instance[0].id)