Модуль google.cloud.gcp_compute_instance_group_manager — Создает GCP InstanceGroupManager
Примечание
Этот модуль входит в коллекцию google.cloud (версия 1.4.1).
Эта коллекция может быть уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install google.cloud. Для использования этого модуля необходимы дополнительные требования, см. Требования для подробностей.
Чтобы использовать его в playbook, укажите: google.cloud.gcp_compute_instance_group_manager.
Описание
- Создаёт управляемую группу виртуальных машин, используя информацию, указанную в запросе. После создания группы запланируется действие для создания виртуальных машин в группе, используя указанную шаблонную виртуальную машину. Эта операция помечается как ВЫПОЛНЕНО, когда группа создана, даже если виртуальные машины в группе ещё не созданы. Необходимо отдельно проверить статус отдельных виртуальных машин.
- Управляемая группа виртуальных машин может содержать до 1000 виртуальных машин на группу.
Требования
Ниже приведены требования к хосту, на котором будет выполняться этот модуль.
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
Параметры
Параметр | Комментарии |
|---|---|
access_token строка | Токен доступа OAuth2, если тип аутентификации — accesstoken. |
auth_kind строка / обязательно | Тип используемых учетных данных. Варианты:
|
base_instance_name строка / обязательно | Базовое имя экземпляра для использования в группе экземпляров. Длина значения должна составлять от 1 до 58 символов. К имени базового экземпляра добавляется дефис и случайная четырёхзначная строка. Базовое имя экземпляра должно соответствовать RFC1035. |
description строка | Необязательное описание данного ресурса. Укажите это свойство при создании ресурса. |
env_type строка | Указывает, в какой среде Ansible выполняется этот модуль. Это поле не следует устанавливать, если вы не знаете, что делаете. Это поле изменяет только строку пользовательского агента для любых запросов к API. |
instance_template словарь / обязательно | Шаблон экземпляра, заданный для этой группы управляемых экземпляров. Группа использует этот шаблон для создания всех новых экземпляров в группе управляемых экземпляров. Это поле представляет собой ссылку на ресурс InstanceTemplate в GCP. Его можно указать двумя способами. Во-первых, вы можете поместить словарь с ключом ‘selfLink’ и значением selfLink вашего ресурса. Во-вторых, вы можете добавить `register: name-of-resource` к задаче gcp_compute_instance_template, а затем установить это поле instance_template в «{{ name-of-resource }}» |
name строка / обязательно | Имя группы управляемых экземпляров. Длина имени должна составлять от 1 до 63 символов и соответствовать RFC1035. |
named_ports список / элементы=словарь | Настроенные имена портов для групп экземпляров, дополняющих данную группу управляемых экземпляров. |
|
name строка |
Имя для этого именованного порта. Длина имени должна составлять от 1 до 63 символов и соответствовать RFC1035. |
|
port целое число |
Номер порта, значение которого может быть от 1 до 65535. |
project строка | Проект Google Cloud Platform для использования. |
scopes список / элементы=строка | Массив используемых областей |
service_account_contents jsonarg | Содержимое файла JSON учетной записи службы, представленное либо в виде словаря, либо в виде JSON-строки. |
service_account_email строка | Необязательный адрес электронной почты учетной записи службы, если выбран параметр machineaccount, и пользователь не хочет использовать адрес по умолчанию. |
service_account_file путь | Путь к файлу JSON учетной записи службы, если выбран тип serviceaccount. |
state строка | Необходимо ли существование данного объекта в GCP Варианты:
|
target_pools список / элементы=словарь | Ресурсы TargetPool, к которым добавляются экземпляры в поле instanceGroup. Эти целевые пулы автоматически применяются ко всем экземплярам в группе управляемых экземпляров. |
target_size целое число | Целевое количество работающих экземпляров для этой группы управляемых экземпляров. Удаление или отказ от экземпляров уменьшает это число. Изменение размера группы изменяет это число. |
zone строка / обязательно | Зона, в которой находится группа управляемых экземпляров. |
Примеры
- name: create a network
google.cloud.gcp_compute_network:
name: network-instancetemplate
project: "{{ gcp_project }}"
auth_kind: "{{ gcp_cred_kind }}"
service_account_file: "{{ gcp_cred_file }}"
state: present
register: network
- name: create a address
google.cloud.gcp_compute_address:
name: address-instancetemplate
region: us-west1
project: "{{ gcp_project }}"
auth_kind: "{{ gcp_cred_kind }}"
service_account_file: "{{ gcp_cred_file }}"
state: present
register: address
- name: create a instance template
google.cloud.gcp_compute_instance_template:
name: "{{ resource_name }}"
properties:
disks:
- auto_delete: 'true'
boot: 'true'
initialize_params:
source_image: projects/ubuntu-os-cloud/global/images/family/ubuntu-1604-lts
machine_type: n1-standard-1
network_interfaces:
- network: "{{ network }}"
access_configs:
- name: test-config
type: ONE_TO_ONE_NAT
nat_ip: "{{ address }}"
project: "{{ gcp_project }}"
auth_kind: "{{ gcp_cred_kind }}"
service_account_file: "{{ gcp_cred_file }}"
state: present
register: instancetemplate
- name: create a instance group manager
google.cloud.gcp_compute_instance_group_manager:
name: test_object
base_instance_name: test1-child
instance_template: "{{ instancetemplate }}"
target_size: 3
zone: us-west1-a
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
state: present
Значения возврата
Общие значения возврата описаны здесь, следующие поля уникальны для этого модуля:
Ключ | Описание |
|---|---|
baseInstanceName строка | Базовое имя экземпляра для использования в группе экземпляров. Значение должно быть длиной от 1 до 58 символов. Имена экземпляров формируются путем добавления тире и случайной четырехсимвольной строки к базовому имени экземпляра. Базовое имя экземпляра должно соответствовать RFC1035. Возвращается: успешно |
creationTimestamp строка | Маркер времени создания данного управляемого кластера экземпляров в формате RFC3339. Возвращается: успешно |
currentActions сложный | Список действий экземпляра и количество экземпляров в этом управляемом кластере экземпляров, запланированных для каждого из этих действий. Возвращается: успешно |
|
abandoning целое число |
Общее количество экземпляров в управляемом кластере экземпляров, запланированных для отмены. Отмена экземпляра удаляет его из управляемого кластера экземпляров без удаления. Возвращается: успешно |
|
creating целое число |
Количество экземпляров в управляемом кластере экземпляров, которые запланированы на создание или в настоящее время создаются. Если кластер не удается создать какие-либо из этих экземпляров, он пытается снова, пока экземпляр не будет успешно создан. Если повторные попытки создания отключены, это поле не будет заполняться; вместо этого будет заполняться поле creatingWithoutRetries. Возвращается: успешно |
|
creatingWithoutRetries целое число |
Количество экземпляров, которые управляемый кластер экземпляров попытается создать. Кластер пытается создать каждый экземпляр только один раз. Если кластеру не удается создать какой-либо из этих экземпляров, он соответственно уменьшает значение targetSize кластера. Возвращается: успешно |
|
deleting целое число |
Количество экземпляров в управляемом кластере экземпляров, которые запланированы на удаление или в настоящее время удаляются. Возвращается: успешно |
|
none целое число |
Количество экземпляров в управляемом кластере экземпляров, которые работают и для которых не запланированы действия. Возвращается: успешно |
|
recreating целое число |
Количество экземпляров в управляемом кластере экземпляров, которые запланированы на повторное создание или в настоящее время повторно создаются. Повторное создание экземпляра удаляет существующий корневой постоянный диск и создаёт новый диск из образа, определённого в шаблоне экземпляра. Возвращается: успешно |
|
refreshing целое число |
Количество экземпляров в управляемом кластере экземпляров, которые переконфигурируются с параметрами, не требующими перезапуска или действия по пересозданию. Например, установка или удаление целевых пулов для экземпляра. Возвращается: успешно |
|
restarting целое число |
Количество экземпляров в управляемом кластере экземпляров, которые запланированы на перезапуск или в настоящее время перезапускаются. Возвращается: успешно |
описание строка | Необязательное описание этого ресурса. Укажите этот параметр при создании ресурса. Возвращается: успешно |
id целое число | Уникальный идентификатор этого ресурса. Возвращается: успешно |
instanceGroup словарь | Управляемый кластер экземпляров. Возвращается: успешно |
instanceTemplate словарь | Шаблон экземпляра, указанный для данного управляемого кластера экземпляров. Кластер использует этот шаблон для создания всех новых экземпляров в управляемом кластере экземпляров. Возвращается: успешно |
name строка | Имя управляемого кластера экземпляров. Длина имени должна быть от 1 до 63 символов, и оно должно соответствовать RFC1035. Возвращается: успешно |
namedPorts сложный | Названные порты, настроенные для кластеров экземпляров, дополняющих этот менеджер кластеров экземпляров. Возвращается: успешно |
|
name строка |
Имя этого названного порта. Длина имени должна быть от 1 до 63 символов, и оно должно соответствовать RFC1035. Возвращается: успешно |
|
порт целое число |
Номер порта, который может быть значением от 1 до 65535. Возвращается: успешно |
регион строка | Регион, в котором находится этот управляемый экземпляр группы (для региональных ресурсов). Возвращается: успешно |
targetPools список / элементы=строка | Ресурсы TargetPool, к которым добавляются экземпляры в поле instanceGroup. Целевые пулы автоматически применяются ко всем экземплярам в управляемой группе экземпляров. Возвращается: успешно |
targetSize целое число | Целевое количество работающих экземпляров для этой управляемой группы экземпляров. Удаление или отказ от экземпляров уменьшает это число. Изменение размера группы изменяет это число. Возвращается: успешно |
зона строка | Зона, в которой находится управляемая группа экземпляров. Возвращается: успешно |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/google/cloud/gcp_compute_instance_group_manager_module.html