【问题标题】:amazon aws auto scaling groups instance name tagamazon aws Auto Scaling 组实例名称标签
【发布时间】:2016-01-17 09:01:00
【问题描述】:

如何创建 Auto Scaling 组以创建名称标签包含 + 的实例?

当前标签

Name    LIVE

但我想改成

Name    LIVE-ap-southeast-1a

【问题讨论】:

    标签: amazon-web-services autoscaling


    【解决方案1】:

    我的理解是你想把 Key=Name Value=LIVE 改为 Key=Name Value=LIVE- ap-southeast-1a 适用于使用 Auto Scaling 组创建的实例。

    当您在步骤 4 创建 Auto Scaling 组时。配置标签可以指定标签的Key和Value。确保选中“标记新实例”复选框(默认情况下):

    如果您已经配置了 Auto Scaling 组,则可以选择该组并对其进行编辑:

    我测试了这些步骤并确认自动缩放创建的新实例显示正确的键和值:

    作为参考,这里是 AWS 关于自动扩展标记的指南:

    http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/ASTagging.html

    【讨论】:

    • 我想动态标记可用区。例如:在可用区 A 中自动创建新实例时,应标记为 LIVE-A,如果在可用区 B 中启动实例,则应标记为 LIVE-B
    【解决方案2】:

    您可以使用 EC2 实例的 EC2 user data 脚本来动态初始化您的实例,包括标签。 EC2 用户数据脚本是从您的 EC2 Auto Scaling 启动配置/模板中设置的。

    以运行 AWS Linux 2 的 EC2 为例,bash 脚本可以使用 EC2 metadata service 来获取启动实例的可用区及其 EC2 实例 ID。然后通过 AWS CLI 使用 ec2 create-tags 命令设置实例的名称标签。

    #!/bin/bash -x
    exec > >(tee /var/log/user-data.log|logger -t user-data -s 2>/dev/console) 2>&1
    
    # Get Instance MetaData
    AVAILABILITY_ZONE=$(curl -s http://169.254.169.254/latest/meta-data/placement/availability-zone)
    REGION=${AVAILABILITY_ZONE::-1}
    INSTANCE_ID=$(curl -s http://169.254.169.254/latest/meta-data/instance-id)
    
    # Dynamically set instance name
    aws ec2 create-tags --region $REGION --resources $INSTANCE_ID --tags Key=Name,Value=LIVE-$AVAILABILITY_ZONE
    

    您的 EC2 实例 IAM 角色需要附加一个允许对 EC2 实例执行ec2:CreateTags 操作的策略。您可以在策略语句中使用条件,仅允许在从您的 EC2 Auto Scaling 组创建的 EC2 实例上创建标签,从而为您的角色提供创建标签所需的最低权限。

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "",
                "Effect": "Allow",
                "Action": "ec2:CreateTags",
                "Resource": "arn:aws:ec2:{aws_region}:{aws_account}:instance/*",
                "Condition": {
                "StringEquals": {
                    "ec2:ResourceTag/aws:autoscaling:groupName": [
                        "prod-as-group"
                    ]
                }
            }
        ]
    } 
    

    【讨论】:

      猜你喜欢
      • 2018-09-22
      • 1970-01-01
      • 2015-08-16
      • 2015-01-09
      • 2016-10-29
      • 2018-03-25
      • 2018-04-25
      • 2014-01-06
      • 2023-03-13
      相关资源
      最近更新 更多