背景
EC2を複数台使用したいという要件がありました。
webサーバならオートスケールを組んだりするのですが、1台1台sshしたいとのこと。
どうするか?
手っ取り早くcount
を使用します。
resource "aws_instance" "raido-rec" {
count = 2
ami = data.aws_ssm_parameter.amzn2_latest_ami.value # last parameter is the default value
instance_type = "t3.nano"
disable_api_termination = false
monitoring = false
key_name = "radio"
subnet_id = aws_subnet.public_subnet_1a.id
security_groups = [aws_security_group.radio_sg.id]
tags = {
Name = "${format("proxy%002d", count.index + 1)}"
}
}
作成したEC2のグローバルIPアドレス表示する
terraformに以下を記述。
output "ec2_global_ips" {
value = ["${aws_instance.raido-rec.*.public_ip}"]
}
以下のように出力される。
ec2_global_ips = [
[
"13.231.230.46",
"43.206.235.74",
],
]