Модуль google.cloud.gcp_compute_instance_group — создание InstanceGroup в GCP
Примечание
Этот модуль входит в коллекцию google.cloud (версия 1.13.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install google.cloud. Для работы с этим модулем необходимы дополнительные требования; подробности см. в разделе Требования.
Чтобы использовать модуль в плейбуке, укажите: google.cloud.gcp_compute_instance_group.
Краткое описание
- Представляет ресурс группы экземпляров. Группы экземпляров управляются самостоятельно и могут содержать одинаковые или разные экземпляры. Группы экземпляров не используют шаблон экземпляра. В отличие от управляемых групп экземпляров, экземпляры в группу экземпляров необходимо создавать и добавлять вручную.
Требования
На узле, выполняющем этот модуль, должны быть установлены следующие компоненты.
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
Параметры
Параметр | Комментарии |
|---|---|
access_token string | Токен доступа OAuth2, если в качестве типа учетных данных указано accesstoken. |
auth_kind string / обязательный | Тип используемых учетных данных. Варианты:
|
description string | Необязательное описание этого ресурса. Укажите это свойство при создании ресурса. |
env_type string | Указывает, в какой среде Ansible выполняется этот модуль. Не задавайте этот параметр, если не уверены в его назначении. Он влияет только на строку User Agent для запросов к API. |
instances list / элементы=dictionary | Список экземпляров, связанных с этой InstanceGroup. Все экземпляры необходимо создать до добавления в InstanceGroup. Все экземпляры, отсутствующие в этом списке, будут удалены из InstanceGroup, но не будут удалены из системы. Будет возвращен только полный идентификатор экземпляра. |
name string | Имя группы экземпляров. Имя должно содержать от 1 до 63 символов и соответствовать RFC1035. |
named_ports list / элементы=dictionary | Назначает номеру порта имя. Например: {name: “http”, port: 80}. Это позволяет системе обращаться к портам по назначенному имени, а не по номеру. Именованные порты также могут содержать несколько портов. Например: [{name: “http”, port: 80},{name: “http”, port: 8080}] Именованные порты применяются ко всем экземплярам в этой группе экземпляров. |
|
name string |
Имя этого именованного порта. Имя должно содержать от 1 до 63 символов и соответствовать RFC1035. |
|
port integer |
Номер порта — значение от 1 до 65535. |
network dictionary | Сеть, к которой принадлежат все экземпляры в группе экземпляров. Это поле представляет ссылку на ресурс Network в GCP. Его можно задать двумя способами. Во-первых, можно указать словарь с ключом ‘selfLink’ и значением selfLink ресурса. Кроме того, можно добавить `register: name-of-resource` в задачу gcp_compute_network, а затем присвоить полю сети значение “{{ name-of-resource }}” |
project string | Проект Google Cloud Platform, который следует использовать. |
region string | Регион, в котором находится группа экземпляров (для региональных ресурсов). |
scopes list / элементы=string | Массив используемых областей действия |
service_account_contents jsonarg | Содержимое JSON-файла учетной записи службы в виде словаря или JSON-строки, представляющей его. |
service_account_email string | Необязательный адрес электронной почты учетной записи службы, если выбран machineaccount и пользователь не хочет использовать адрес по умолчанию. |
service_account_file path | Путь к JSON-файлу учетной записи службы, если в качестве типа выбрано serviceaccount. |
state string | Должен ли указанный объект существовать в GCP Варианты:
|
subnetwork dictionary | Подсеть, к которой принадлежат все экземпляры в группе экземпляров. Это поле представляет ссылку на ресурс Subnetwork в GCP. Его можно задать двумя способами. Во-первых, можно указать словарь с ключом ‘selfLink’ и значением selfLink ресурса. Кроме того, можно добавить `register: name-of-resource` в задачу gcp_compute_subnetwork, а затем присвоить этому полю подсети значение “{{ name-of-resource }}” |
zone string / обязательный | Ссылка на зону, в которой находится группа экземпляров. |
Примеры
- name: create a network
google.cloud.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
google.cloud.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 string | Временная метка создания в текстовом формате RFC3339. Возвращается: при успешном выполнении |
description string | Необязательное описание этого ресурса. Укажите это свойство при создании ресурса. Возвращается: при успешном выполнении |
id integer | Уникальный идентификатор этой группы экземпляров. Возвращается: при успешном выполнении |
instances list / элементы=string | Список экземпляров, связанных с этой InstanceGroup. Все экземпляры необходимо создать до добавления в InstanceGroup. Все экземпляры, отсутствующие в этом списке, будут удалены из InstanceGroup, но не будут удалены из системы. Будет возвращен только полный идентификатор экземпляра. Возвращается: при успешном выполнении |
name string | Имя группы экземпляров. Имя должно содержать от 1 до 63 символов и соответствовать RFC1035. Возвращается: при успешном выполнении |
namedPorts complex | Назначает номеру порта имя. Например: {name: “http”, port: 80}. Это позволяет системе обращаться к портам по назначенному имени, а не по номеру. Именованные порты также могут содержать несколько портов. Например: [{name: “http”, port: 80},{name: “http”, port: 8080}] Именованные порты применяются ко всем экземплярам в этой группе экземпляров. Возвращается: при успешном выполнении |
|
name string |
Имя этого именованного порта. Имя должно содержать от 1 до 63 символов и соответствовать RFC1035. Возвращается: при успешном выполнении |
|
port integer |
Номер порта — значение от 1 до 65535. Возвращается: при успешном выполнении |
network dictionary | Сеть, к которой принадлежат все экземпляры в группе экземпляров. Возвращается: при успешном выполнении |
region string | Регион, в котором находится группа экземпляров (для региональных ресурсов). Возвращается: при успешном выполнении |
subnetwork dictionary | Подсеть, к которой принадлежат все экземпляры в группе экземпляров. Возвращается: при успешном выполнении |
zone string | Ссылка на зону, в которой находится группа экземпляров. Возвращается: при успешном выполнении |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/google/cloud/gcp_compute_instance_group_module.html