Диспетчер развертывания должен отлично работать для этого типа установки. Есть несколько небольших оговорок, хотя.
- Вам нужен проект, в котором вы можете запустить диспетчер развертывания из
- Перед созданием развертывания необходимо предоставить учетной записи службы администратора развертывания все необходимые разрешения (например, создатель проекта на уровне организации). Учетная запись службы [PROJECT_ID] @ cloudservices.gserviceaccount.com
Далее вам нужно будет вызывать каждый из ресурсов по отдельности в манифесте менеджера развертывания, к счастью, все эти API ресурсов поддерживаются DM:
Проекты для создания проекта.
** Все следующие ресурсы должны содержать ссылку на этот ресурс для создания зависимости, чтобы DM не пытался создать их до того, как проект существует ... что приведет к сбою
VPC и виртуальные машины: используйте что-то вроде this
** Это включает в себя добавление кластеров GKE в конце и пиринг VPC, который вам не понадобится, но демонстрирует создание VPC, подсетей, правил брандмауэра и виртуальной машины
App Engine
GCS Bucket
Экземпляр SQL
Пока ваша общая конфигурация меньше 1 МБ, вы можете поместить все эти ресурсы в одну конфигурацию.
Если вы новичок в DM, я рекомендую попробовать каждый из этих ресурсов в отдельности, чтобы убедиться в правильности синтаксиса. Попытка отладки синтаксических ошибок с несколькими ресурсами намного сложнее.
Я также рекомендую использовать - флаг предварительного просмотра перед созданием или обновлением ресурсов, чтобы вы могли убедиться, что ваши конфигурации или изменения вступят в силу так, как вы планировали.
Наконец, вы можете записать все это непосредственно в конфигурацию YAML или создать шаблоны, используя либо jinja, либо python2 , которые можно импортировать в ваш config.yaml