Администратор развертывания GCP создает проект с новым вычислительным экземпляром - PullRequest
0 голосов
/ 04 декабря 2018

Я следовал этому руководству по созданию проектов с помощью развертывания mangaer: https://cloud.google.com/blog/products/gcp/automating-project-creation-with-google-cloud-deployment-manager

Он работает хорошо, но у меня возникают проблемы с выяснением, как создать экземпляр вычисления внутри недавно созданного проекта.

Все, что я пытаюсь выдать, выдает ошибку: указанный тип машины 'f1-micro' находится в другом проекте '58535xxxxxx', чем экземпляр '919628xxxxxx'. "," Reason ":" invalid "

Экземплярпытается быть создан в проекте ProjectCreation (из учебника) вместо вновь созданного проекта.

Проект создается (номер «58535 ..»), и я пытаюсь сослаться на него вURL-адрес machineType. Например:

'https://www.googleapis.com/compute/v1/projects/' + project_id +'/zones/us-central1-f/machineTypes/f1-micro'

Я пробовал в файле config.yaml и пытался добавить дополнительный ресурс в файл project.py. Оба с одинаковыми результатами.

ДляPython Я попытался добавить в массив ресурсов в project.py:

{
'name': 'server-paul-1',
'type': 'compute.v1.instance',
'metadata': {
    'dependsOn': [project_id]
},
'properties': {
    'zone': 'us-central1-f',
    'machineType': 'https://www.googleapis.com/compute/v1/projects/' + project_id +'/zones/us-central1-f/machineTypes/f1-micro'
}

Ответы [ 2 ]

0 голосов
/ 06 декабря 2018

Объявления в диспетчере развертывания выполняются параллельно, а не последовательно.Создание проекта и создание других проектов GCP выполняются параллельно.Если проект еще не существует, ресурс не может быть создан.

Диспетчер развертывания попытается запустить все модификации ресурсов параллельно (если вы не укажете зависимость между ресурсами).Диспетчер развертывания является декларативной конфигурацией, он будет запускать развертывания параллельно, независимо от того, являются они независимыми или нет.Обходной путь должен использовать ссылки .

Как вы заметили в общей документации о зависимостях, которые вы указали в последнем комментарии.Мы всегда рекомендуем нашим клиентам сначала убедиться, что проект создается, прежде чем добавлять какие-либо ресурсы, и именно поэтому я предложил вам создать запрос на функцию, чтобы наша команда по продукту упростила этапы создания, чтобы мы могли сделать это гладкос большой легкостью при управлении ресурсами проекта.

0 голосов
/ 04 декабря 2018

В соответствии с общей документацией мы заявили следующее:

«Мы рекомендуем использовать проект создания DM в первую очередь для создания новых проектов и их ресурсов.ИЗБЕГАЙТЕ создания других ресурсов GCP в проекте Creation. ”

Поэтому я бы предложил сначала создать новый проект и его ресурсы.После этого управляйте вновь созданными ресурсами GCP, включая Compute Engine.

Ресурсы проекта: 1 - имя нового проекта, который вы хотите создать.Он должен быть уникальным среди всех названий проектов.2- Установите параметр идентификатор организации или параметр идентификатор родительской папки.Если оба указаны, parent-folder-id имеет приоритет.3- Установите платежную учетную запись для использования.4- Установите API для включения.5- Установите учетные записи службы для создания.6- Установите желаемую политику IAM для проекта.

Подробнее о том, как добавить конфигурацию и список ресурсов, а также их соответствующие свойства, можно найти в следующей ссылка .

При этом, пожалуйста, не стесняйтесь подать Запрос функции , чтобы иметь возможность добавить больше ресурсов проекта в процессе создания, включая (Compute Engine, Container Engine, Cloud SQL, BigQuery и т. Д.).Я не могу гарантировать реализацию или предоставить вам ETA для этого.Будьте уверены, что Google стремится улучшить свои продукты, и что ваши отзывы помогут нам сделать это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...