Я хочу раскрутить 2 экземпляра ec2 с тегами "ins-1" и "ins-2" . Далее, при запуске обоих ins-1 / ins-2 я хочу установить их имена хостов: "server-1" и "server-2" с использованием cloudinit. Приведенный ниже код прекрасно создает 2 экземпляра с тегами ins-1 и ins-2, но оба экземпляра получают имя хоста "server-1"
variable "host_count" {
default = "2"
}
variable "host_name_prefix" {
default = "cluster-node-"
}
variable "aws_keypair_privatekey_filepath" {
default = "../mykey.pem"
}
resource "aws_instance" "ins" {
count = "${var.host_count}"
ami = "${lookup(var.AMIS, var.aws_region)}"
instance_type = "t2.micro"
subnet_id = "${aws_subnet.mypublic-1.id}"
tags {
Name = "server-${count.index + 1}"
}
vpc_security_group_ids = ["${aws_security_group.allow-ssh.id}"]
user_data = "${data.template_cloudinit_config.example.rendered}"
}
data "template_cloudinit_config" "example" {
gzip = true
base64_encode = true
# count = "${var.host_count}"
part {
content_type = "text/cloud-config"
content = <<EOF
preserve_hostname: false
fqdn: "server-${count.index + 1}"
hostname: "server-${count.index + 1}"
EOF
}
}
Высоко ценю ваши отзывы об этом. Большое спасибо заранее