Я создаю группу автоматического масштабирования AWS динамически, используя сценарии ruby и сценарии оболочки.После загрузки экземпляров в ASG я запускаю в них задачу в сценариях user_data
.Допустим, я создал 10 экземпляров в группе автоматического масштабирования.Я хочу как-то нумеровать эти экземпляры (возможно, используя теги или переменные окружения и т. Д.).Таким образом, у каждого экземпляра будет переменная окружения с именем «число» со значениями 1, 2, 3 ... 10, уникальными для каждого экземпляра.
Мы можем присоединить tags
к экземплярам, как показано ниже:
resource "aws_autoscaling_group" "autoscaling_group" {
name = "${var.asg_name}"
max_size = "${var.max_size}"
min_size = "${var.min_size}"
desired_capacity = "${var.desired_capacity}"
launch_configuration = "${aws_launch_configuration.launch_configuration.name}"
vpc_zone_identifier = ["${data.aws_subnet_ids.default.ids}"]
lifecycle {
create_before_destroy = true
}
tag {
key = "Environment"
value = "production"
propagate_at_launch = true
}
}
Но я бы хотел прикрепить тег "число" с различным значением к каждому экземпляру.
Или мы также можем отправлять переменные в сценариях user_data
, как показано ниже:
data "template_file" "user_data_client" {
template = "${file("./user-data-client.sh")}"
vars {
company_location_job_id = "${var.company_location_job_id}"
docker_login_username = "${var.docker_login_username}"
docker_login_password = "${var.docker_login_password}"
}
}
Но и здесь я не уверен, как отправлять добавочные числа для каждого экземпляра в переменной.
Возможно ли это сделать с помощью terraform?Заранее спасибо.