我正在尝试使用Python和Boto3标记一个现有的自动缩放组。
我可以用名称来描述ASG:
import boto3
asg_client = boto3.client("autoscaling")
asg_name = "foo-bar20220502044025104700000001"
response = asg_client.describe_auto_scaling_groups(AutoScalingGroupNames=[asg_name])
create_or_update_tags()
和delete_tags()
方法的问题是它们似乎不接受ASG名称列表。例如,这不起作用:
asg_client.create_or_update_tags(
AutoScalingGroupNames=[asg_name],
Tags=[my_tag]
)
明确说明:
- ASG已经存在,我不会在这里创建它
- 我不想对ASG进行任何其他更改
- 如果我知道ASG的名字,我只想能够标记它
- 我需要使用Python中的boto3
与标记相关的方法似乎与所有其他ASG客户端方法不同,因为它们不接受ASG名称或名称列表作为参数。
您可以做到这一点,只需要提供不同的输入即可。可以为这些客户端方法的ResourceId
提供ASG名称。
以下是create_or_update_tags
调用的boto3文档。
这里有一个例子:
asg_client.create_or_update_tags(
Tags=[
{
'ResourceId': asg_name,
'ResourceType': 'auto-scaling-group',
'Key': 'myTagKey',
'Value': 'myTagValue',
'PropagateAtLaunch': True
},
]
)