我制作了源实例的映像,现在我不得不克隆新实例,因此我在目标实例创建中对源实例的安全组名称进行了硬编码。现在我希望它是动态的。下面是我的代码:
ec2 = boto3.resource('ec2',region_name='region')
instance = ec2.create_instances( ImageId=image, InstanceType='t2.micro', KeyName='keyName', SecurityGroups=['sgr-ssh-http-public'], MaxCount=1, MinCount=1 )
答案 0 :(得分:0)
这是获得所需输出的多种方法之一。
import boto3
client = boto3.client('ec2',region_name='ap-south-1')
response = client.describe_instances()
for i in response['Reservations']:
for j in i['Instances']:
if (j['InstanceId']=="yourparentinstanceid"):
for k in j['SecurityGroups']:
sgname=k['GroupId']
ec2 = boto3.resource('ec2',region_name='ap-south-1')
instance = ec2.create_instances( ImageId='imageid', InstanceType='t2.micro', KeyName='keyname',SecurityGroupIds=[sgname], MaxCount=1, MinCount=1,SubnetId='subnetid',)
注意:请先研究有关如何在stackoverflow中在此处提出问题以及如何设置其格式的规则。由于您似乎是stackoverflow的初学者,因此我不会标记您的问题。请以后避免这些错误。