У меня есть следующая проблема, которую я пытаюсь решить с помощью Terraform (0.11):
У меня есть пара экземпляров AWS EC2 экземпляра и Elastic IP, которые созданы с помощью TF.Теперь мне нужно создать fresh EIP в случае создания совершенно нового экземпляра.
Причина в том, что до тех пор, пока машина обновляется на месте, EIP может оставатьсятак же.Но если требуется / создан новый ресурс, EIP не должен равняться тому, который подключен к старой машине, потому что содержимое на машине изменилось.
Есть ли у кого-нибудьидея, как сгенерировать эти свежие EIP-файлы в случае необходимости повторного создания машины?
Спасибо!
EDIT: @ydaetskcoR Мне нужен EIP вЧтобы иметь возможность остановить и запустить машину без присоединения нового общего IP-адреса, но если экземпляр заменен , мне нужен новый EIP.
@ kenlukas Новый экземплярзаменит старую:
resource "aws_eip" "master" {
count = "${var.master_count}"
}
resource "aws_eip_association" "eip_assoc_master" {
count = "${var.master_count}"
instance_id = "${element(aws_instance.master.*.id, count.index)}"
allocation_id = "${element(aws_eip.master.*.id, count.index)}"
}
resource "aws_instance" "master" {
count = "${var.master_count}"
subnet_id = ${element(var.public_subnet_ids, count.index)}"
...
}
Вот как это делается сейчас, но мне нужна какая-то логика для генерации новых EIPS.Возможно ли вызвать запрос CLI AWS для удаления EIP, связанного с экземпляром X, чтобы при запуске Terraform он автоматически генерировал новый?Будет ли работать со скриптом, который запускается из Terraform, если экземпляр отсутствует?