Назад | Перейти на главную страницу

CloudFormation - Создать подсеть, если она не существует

Можно ли с помощью шаблонов CloudFormation обеспечить создание подсети, если она еще не существует?

Вариант использования - при запуске развертывания стека в существующем VPC, этот VPC может иметь или не иметь другие ресурсы, использующие указанную подсеть.

Похоже, это обычный запрос, но я не могу найти по нему документации.

Думаю, можно предположить, что подсети, с которыми я работаю, существуют всегда, но это не кажется особенно надежным.

Вообще-то нет. Ресурсы CloudFormation всегда создаются.

Причина в том, чтобы гарантировать, что ресурсы стека CloudFormation изолированы и могут полностью контролироваться одним-единственным стеком.

Если вы хотите использовать существующую подсеть, у вас есть несколько вариантов:

  1. Зафиксируйте идентификатор подсети в своем шаблоне и используйте его,
  2. Передайте идентификатор подсети в свой стек в качестве параметра,
  3. Используйте новые ссылки на ресурсы стека CloudFormation для ссылки на ресурсы в других стеках.

Если вам действительно нужно использовать ресурс «создать, если не существует», вы можете сделать это с помощью настраиваемых ресурсов. Однако вам придется беспокоиться о том, что делать при очистке стека и откатах.