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

Диспетчер развертывания Google Cloud и изменения ресурсов

Я хочу развернуть приложение в Google Cloud. Для этого потребуются следующие компоненты Google Cloud:

Я оцениваю Deployment Manager как инструмент для построения инфраструктуры как кода.

В настоящее время я обнаружил следующие проблемы:

Изменение размера кластера Container Engine

Изменить размер кластера Container Engine в моем шаблоне yaml диспетчера развертывания нельзя:

gcloud deployment-manager deployments update <deployment-name> --config <deployment-config.yml>

не работает с:

{"ResourceType": "container.v1.cluster", "ResourceErrorCode": "400", "ResourceErrorMessage": {"code": 400, "message": "Получена недопустимая полезная нагрузка JSON. Неизвестное имя \" cluster \ ": Не удается найти поле. "," Status ":" INVALID_ARGUMENT "," details ": [{" @ type ":" type.googleapis.com/google.rpc.BadRequest","fieldViolations":[{"description ":" Получены недопустимые данные JSON. Неизвестное имя \ "cluster \": поле не найдено. "}]}]," StatusMessage ":" Bad Request "," requestPath ":"https://container.googleapis.com/v1/projects/1013690875001/zones/europe-west1-b/clusters/dev-cluster"}}

Изменение размера постоянного диска

Когда я изменяю размер диска в моем шаблоне и пытаюсь применить изменение (снова с gcloud deployment-manager deployments update command) Я также получаю сообщение об ошибке:

Не найден метод для обновления поля sizeGb в ресурсе my-data-storage типа compute.v1.disk. Возможно, потребуется воссоздать ресурс с новым полем.

Вопрос

Я думаю, что описанные выше операции являются одними из наиболее распространенных, применимых к среде, и я удивлен, что они не поддерживаются.

Я неправильно понимаю, как следует использовать Deployment Manager, или он просто не предоставляет нужные мне функции? Как мне управлять такими изменениями среды, чтобы их можно было отслеживать в системе управления версиями (вместо императивных команд вроде cloud compute disks resize)?

Это сбивающее с толку сообщение об ошибке от GCP. В вашем JSON все в порядке, скорее, переход состояния конфигурации не может быть обновлен. Было бы здорово, если бы это произвело incompatible configuration update ошибка.

В моем случае мы добавили области, которые, как оказалось, нельзя обновить (добавить или удалить).

Похоже, что первый случай (изменение размера кластера) - проблема, о которой уже сообщалось в Google: Обновление свойств Container Engine приводит к получению данных 400: JSON. Неизвестное название "кластер"

Для второго я тоже открыл проблему: Диспетчер развертывания не поддерживает постоянное изменение размера диска


Обновить

Проблема с изменением размера постоянного диска была решена.