Администратор развертывания GCP одно и то же имя ресурса в другом развертывании
Чтобы выяснить, как ведет себя менеджер развертывания, когда у нас одно и то же имя ресурса в другом развертывании, я сделал следующие шаги:
- Я создаю развертывание с именем dep-1 с одной виртуальной машиной с именем vm1.
- Затем я создал развертывание с именем dep-2 с той же виртуальной машиной с именем vm1.
Я думал, что dep-2 не сможет сказать, что ресурс уже существует с таким же именем, но он прошел без предупреждения / ошибки.
Позже, когда я удалил dep-2, он удалил ресурс vm с именем vm-1.
Теперь я хочу знать, как бороться с этим поведением. Скажем, я хочу развернуть свою среду для dev, qa и prod. Как лучше всего это делать в диспетчере развертывания GCP?
2 ответа
Я предполагаю, что вы использовали один и тот же файл yaml для обоих развертываний (одно и то же имя экземпляра и одна и та же зона).
- Первое развертывание создало экземпляр, как и ожидалось, без проблем.
- Второе развертывание не создало другого экземпляра, просто назначьте тот же экземпляр этому развертыванию. Вот почему вы видите, что экземпляр удален при удалении развертывания dep-2.
Чтобы увидеть ошибки, вы можете перейти на страницу регистрации Stackdriver для вашего проекта. и отфильтруйте журнал для создания экземпляров.
Эта ссылка документирует политику обновления менеджера развертывания. Вышеуказанное поведение ожидается.
https://cloud.google.com/deployment-manager/docs/deployments/updating-deployments
https://cloud.google.com/deployment-manager/docs/deployments/updating-deployments
(Необязательно) Определите политики, которые будут использоваться для обновления
- Политика по умолчанию для добавления ресурсов - CREATE_OR_ACQUIRE.
- Политика по умолчанию для удаления ресурсов - УДАЛИТЬ.
- Политика по умолчанию для обновления ресурсов - ОБНОВЛЕНИЕ.