gcp_compute_instance_group – Создаёт группу экземпляров GCP
Новая версия с 2.6.
Обзор
- Представляет ресурс группы экземпляров. Группы экземпляров управляются самостоятельно и могут содержать идентичные или разные экземпляры. Группы экземпляров не используют шаблон экземпляра. В отличие от управляемых групп экземпляров, вы должны вручную создавать и добавлять экземпляры в группу экземпляров.
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| auth_kind строка / обязательно |
| Тип используемых учетных данных. | |
| description - | Необязательное описание этого ресурса. Укажите это свойство при создании ресурса. | ||
| instances - добавлен в 2.8 | Список экземпляров, связанных с этой группой экземпляров. Все экземпляры должны быть созданы перед добавлением в группу экземпляров. Все экземпляры, не входящие в этот список, будут удалены из группы экземпляров и не будут удалены. Будет возвращен только полный идентификатор экземпляра. | ||
| name - | Имя группы экземпляров. Имя должно быть длиной от 1 до 63 символов и соответствовать RFC1035. | ||
| named_ports - | Присваивает имя номеру порта. Например: {name: "http", port: 80}. Это позволяет системе ссылаться на порты по присвоенному имени вместо номера порта. Имена портов также могут содержать несколько портов. Например: [{name: "http", port: 80},{name: "http", port: 8080}] Названные порты применяются ко всем экземплярам в этой группе экземпляров. | ||
| name - | Имя для этого имени порта. Имя должно быть длиной от 1 до 63 символов и соответствовать RFC1035. | ||
| port - | Номер порта, который может быть значением от 1 до 65535. | ||
| network - | Сеть, к которой принадлежат все экземпляры в группе экземпляров. Это поле представляет собой ссылку на ресурс сети GCP. Его можно указать двумя способами. Во-первых, вы можете поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Кроме того, вы можете добавить `register: имя-ресурса` в задачу gcp_compute_network, а затем установить это поле сети в "{{ имя-ресурса }}" | ||
| project строка | Проект Google Cloud Platform, который нужно использовать. | ||
| region - | Регион, в котором расположена группа экземпляров (для региональных ресурсов). | ||
| scopes список | Массив используемых областей. | ||
| service_account_contents строка | Строка, представляющая содержимое файла JSON учетной записи службы. Это не должно передаваться как словарь, а как строка с точным содержимым файла json учетной записи службы (действительный JSON). | ||
| service_account_email строка | Необязательный адрес электронной почты учетной записи службы, если выбран machineaccount, и пользователь не хочет использовать адрес электронной почты по умолчанию. | ||
| service_account_file путь | Путь к файлу JSON учетной записи службы, если в качестве типа выбран serviceaccount. | ||
| state - |
| Требуется ли существование данного объекта в GCP | |
| subnetwork - | Подсеть, к которой принадлежат все экземпляры в группе экземпляров. Это поле представляет собой ссылку на ресурс подсети GCP. Его можно указать двумя способами. Во-первых, вы можете поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Кроме того, вы можете добавить `register: имя-ресурса` в задачу gcp_compute_subnetwork, а затем установить это поле подсети в "{{ имя-ресурса }}" | ||
| zone - / обязательно | Ссылка на зону, где находится группа экземпляров. | ||
Примечания
Примечание
- Для аутентификации вы можете установить service_account_file, используя переменную среды
GCP_SERVICE_ACCOUNT_FILE. - Для аутентификации вы можете установить service_account_email, используя переменную среды
GCP_SERVICE_ACCOUNT_EMAIL. - Для аутентификации вы можете установить service_account_contents, используя переменную среды
GCP_SERVICE_ACCOUNT_CONTENTS. - Для аутентификации вы можете установить auth_kind, используя переменную среды
GCP_AUTH_KIND. - Для аутентификации вы можете установить scopes, используя переменную среды
GCP_SCOPES. - Значения переменных среды будут использоваться только в том случае, если значения в playbook не заданы.
- Параметры service_account_email и service_account_file взаимоисключают друг друга.
Примеры
- name: create a network
gcp_compute_network:
name: network-instancegroup
project: "{{ gcp_project }}"
auth_kind: "{{ gcp_cred_kind }}"
service_account_file: "{{ gcp_cred_file }}"
state: present
register: network
- name: create a instance group
gcp_compute_instance_group:
name: test_object
named_ports:
- name: ansible
port: 1234
network: "{{ network }}"
zone: us-central1-a
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
state: present
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание | |
|---|---|---|---|
| creationTimestamp строка | успех | Маркер создания в формате RFC3339. | |
| description строка | успех | Необязательное описание данного ресурса. Укажите это свойство при создании ресурса. | |
| id целое число | успех | Уникальный идентификатор этой группы экземпляров. | |
| instances список | успех | Список экземпляров, связанных с этой группой экземпляров. Все экземпляры должны быть созданы перед добавлением в группу экземпляров. Все экземпляры, не входящие в этот список, будут удалены из группы экземпляров и не будут удалены. Будет возвращен только полный идентификатор экземпляра. | |
| name строка | успех | Имя группы экземпляров. Имя должно быть длиной от 1 до 63 символов и соответствовать RFC1035. | |
| namedPorts сложное | успех | Присваивает имя номеру порта. Например: {name: "http", port: 80}. Это позволяет системе ссылаться на порты по назначенному имени вместо номера порта. Имена портов также могут содержать несколько портов. Например: [{name: "http", port: 80},{name: "http", port: 8080}] Названные порты применяются ко всем экземплярам в этой группе экземпляров. | |
| name строка | успех | Имя для этого имени порта. Имя должно быть длиной от 1 до 63 символов и соответствовать RFC1035. | |
| port целое число | успех | Номер порта, который может быть значением от 1 до 65535. | |
| network словарь | успех | Сеть, к которой принадлежат все экземпляры в группе экземпляров. | |
| region строка | успех | Регион, в котором расположена группа экземпляров (для региональных ресурсов). | |
| subnetwork словарь | успех | Подсеть, к которой принадлежат все экземпляры в группе экземпляров. | |
| zone строка | успех | Ссылка на зону, где находится группа экземпляров. | |
Статус
- Данный модуль не гарантирует обратную совместимость интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [сообщество]
Авторы
- Google Inc. (@googlecloudplatform)
Подсказка
Если вы обнаружите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/gcp_compute_instance_group_module.html