如何标记使用Terraform自动缩放启动的实例?

时间:2019-03-26 12:12:02

标签: amazon-web-services terraform autoscaling

我正在使用Terraform设置ECS集群。这是我的启动配置:

resource "aws_launch_configuration" "launch_config" {
  name_prefix = "my_project_lc"
  image_id = "ami-ff15039b"
  instance_type = "t2.medium"
  user_data = "${data.template_file.user_data.rendered}"
  lifecycle {
    create_before_destroy = true
  }
}

resource "aws_autoscaling_group" "autoscaling_group" {
  name = "my_project_asg"
  max_size = 2
  min_size = 1
  launch_configuration = "${aws_launch_configuration.launch_config.name}"
  vpc_zone_identifier = ["${aws_subnet.public.id}"]
}

它工作正常,但是EC2实例没有名称(标记“名称”)。如何更改配置以为实例赋予有意义的名称?前缀或其他内容...

谢谢

1 个答案:

答案 0 :(得分:1)

是的,有可能。请参阅aws_autoscaling_group resource的文档。示例代码:

resource "aws_autoscaling_group" "bar" {
  name = "my_project_asg"
  max_size = 2
  min_size = 1
  launch_configuration = "${aws_launch_configuration.launch_config.name}"
  vpc_zone_identifier = ["${aws_subnet.public.id}"]

  tag {
    key                 = "Name"
    value               = "something-here"
    propagate_at_launch = true
  }

  tag {
    key                 = "lorem"
    value               = "ipsum"
    propagate_at_launch = false
  }
}

或者,您可以使用terraform-aws-autoscaling模块来实现不同类型的标签。