Terraform: Как всегда генерировать «свежий» EIP для нового экземпляра? - PullRequest
1 голос
/ 23 мая 2019

У меня есть следующая проблема, которую я пытаюсь решить с помощью 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, если экземпляр отсутствует?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...