【问题标题】:How to set tags for AWS EC2 instance in boto3如何在 boto3 中为 AWS EC2 实例设置标签
【发布时间】:2020-04-14 11:02:56
【问题描述】:

我是 Boto3 的新手,想创建一个 VPC、子网和一些 ec2 实例。基本架构是有一个 VPC、2 个不同可用区(us-east-1a 和 b)内的 2 个子网,并应用允许 SSHping 的安全组。

我的问题是如何为每个资源指定附加选项。 Python SDK(与Javadoc 的工作方式不同)没有显示所需的参数和示例选项,所以我很困惑。

如何为资源指定tags? (例如 ec2 实例)。我需要设置nameowner等。

instances2 = ec2.create_instances(ImageId='ami-095575c1a372d21db', InstanceType='t2.micro', MaxCount=1, MinCount=1, NetworkInterfaces=[{'SubnetId': subnet2.id, 'DeviceIndex': 0, 'AssociatePublicIpAddress': True, 'Groups': [sec_group.group_id]}])
instances2[0].wait_until_running()
print(instances1[0].id)

【问题讨论】:

标签: python amazon-web-services aws-sdk boto3 botocore


【解决方案1】:

您需要将 'ResourceType' 设置为 'instance'TagSpecifications 参数:

TagSpecifications=[
    {
      'ResourceType': 'instance',
      'Tags': [
        {
          'Key': 'name',
          'Value': 'foobar'
        },
        {
          'Key': 'owner',
          'Value': 'me'
        },
      ]
    },
  ],

它在文档中,但您确实需要知道您要查找的内容...

【讨论】:

  • 谢谢。是的,我是 AWS SDK 的新手。所以这个TagSpecificationsec2.create_instances() 中的一个参数?
【解决方案2】:

以下适用于 python 3.7 和 boto3 1.12.39

参考 - https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ec2.html?highlight=create_instances#EC2.ServiceResource.create_instances

    AMI = os.environ['AMI']
    INSTANCE_TYPE = os.environ['INSTANCE_TYPE']
    KEY_NAME = os.environ['KEY_NAME']
    SUBNET_ID = os.environ['SUBNET_ID']    

    TAG_SPEC = [
        {
        "ResourceType":"instance",
        "Tags": [
                {
                    "Key": "Name",
                    "Value": "EC2_INSTANCE_TEST_AUTOGENERATED"
                }
            ]
    }
    ]

    ec2 = boto3.resource('ec2')

    instance = ec2.create_instances(
        ImageId = AMI,
        InstanceType = INSTANCE_TYPE,
        KeyName = KEY_NAME,
        SubnetId = SUBNET_ID,
        TagSpecifications = TAG_SPEC,
        MaxCount = 1,
        MinCount = 1
        )

【讨论】:

    猜你喜欢
    • 2018-04-16
    • 1970-01-01
    • 1970-01-01
    • 2014-06-06
    • 2021-04-27
    • 1970-01-01
    • 2019-04-04
    • 2020-09-30
    • 1970-01-01
    相关资源
    最近更新 更多