【发布时间】:2023-03-03 02:30:01
【问题描述】:
main.tf
resource "aws_instance" "service" {
ami = "${lookup(var.aws_winamis, var.awsregion)}"
count = "${var.count}"
key_name = "${var.key_name}"
instance_type = "t2.medium"
subnet_id = "${aws_subnet.private.id}"
# private_ip = "${lookup(var.server_instance_ips, count.index)}"
vpc_security_group_ids = ["${aws_security_group.private-sg.id}"]
associate_public_ip_address = false
availability_zone = "${var.awsregion}a"
tags {
Name = "${format("server-%01d", count.index + 1)}"
Environment = "${var.environment}"
}
}
变量.tf
variable "awsregion" {default =""}
variable "count" {default = ""}
variable "server_instance_ips" {default = ""}
dev.tfvars
server_instance_ips = ["10.0.2.25", "10.0.2.26"] #doesn't work as a list but works with single IP address
count = "4"
awsregion = "us-east-1"
我希望服务器在创建后有标签 - dla-server-1/2/3/4 但使用上面的代码我只能做server-1/2/@987654330 @/4 但不是dla/sla/pla 取决于环境; IP 地址是随机分配给服务器的,因为我无法传递 IP 列表,最后,如何在不同的 AZ 中创建服务器,即 AZ1a 中的 2 个服务器和 AZ1b 中的 2 个服务器?
【问题讨论】:
标签: amazon-web-services terraform