У меня есть простое развертывание AWS с vpc, общедоступной подсетью, маршрутом и группой безопасности.Запуск terraform apply
запустит экземпляр AWS, и у меня есть этот экземпляр, настроенный для связывания публичного IP-адреса.После того, как экземпляр был создан, я запускаю terraform plan
, и он правильно говорит, что все обновлено.Пока проблем нет.
У нас есть узел управления, который отключит этот экземпляр, если он не используется в течение определенного периода времени в качестве меры экономии.
Вот проблема: как только этот экземплярзавершите работу, когда я запускаю terraform plan
, поставщик aws видит, что все настроено правильно, но поскольку общедоступный IP-адрес был освобожден, значение для associate_public_ip_address больше не соответствует тому, что настроено в конфигурациях terraform, поэтому terraform хочет удалить и воссоздать этоэкземпляр:
associate_public_ip_address: "false" => "true" (forces new resource)
Есть ли способ заставить terraform игнорировать только этот один параметр?
Этот вопрос незначительно связан с https://github.com/hashicorp/terraform/issues/7262. Нов моем случае я не хочу устанавливать ожидаемое состояние, я просто хочу дать возможность terraform игнорировать этот один параметр, потому что это нормально, что он не связан прямо сейчас , пока он настроенбыть связанным когда оно начинается .
(Это пришло мне в голову при написании этого вопроса: я неЭто связано с настройкой подсети для автоматического связывания общедоступного IP-адреса для запущенных в нем экземпляров.Предположительно, сделав это автоматически в подсети и удалив опцию из «aws_instance», я смогу заставить terraform не обращать внимания на это значение ... но я сомневаюсь в этом.)