Модуль google.cloud.gcp_compute_region_instance_group_manager – Создает управляемую группу виртуальных машин GCP RegionInstanceGroupManager
Примечание
Этот модуль входит в коллекцию google.cloud (версия 1.4.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install google.cloud. Для использования этого модуля требуются дополнительные зависимости. Подробности см. в разделе Требования.
Для использования в плейбуке укажите: google.cloud.gcp_compute_region_instance_group_manager.
Описание
- Создает управляемую группу виртуальных машин, используя информацию, указанную в запросе. После создания группы планируется действие для создания виртуальных машин в группе, используя указанную шаблонную виртуальную машину. Данная операция отмечается как завершенная (DONE) при создании группы, даже если виртуальные машины в группе еще не созданы. Необходимо отдельно проверить статус каждой виртуальной машины.
- Управляемая группа виртуальных машин может содержать до 1000 виртуальных машин на группу.
Требования
Ниже перечислены требования, которые должны быть выполнены на хосте, на котором выполняется этот модуль.
- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0
Параметры
Параметр | Комментарии |
|---|---|
access_token строка | Токен доступа OAuth2, если тип учетных данных — accesstoken. |
auth_kind строка / обязательно | Тип учетных данных, используемых для авторизации. Варианты:
|
auto_healing_policies список / элементы=словарь | Политика автоматического исправления для этого управляемого кластера виртуальных машин. |
|
health_check строка |
URL проверки работоспособности, сигнализирующий об автоматическом исправлении. |
|
initial_delay_sec целое число |
Количество секунд, которое управляемый кластер виртуальных машин ожидает, прежде чем применить политики автоматического исправления к новым или недавно воссозданным виртуальным машинам. |
base_instance_name строка / обязательно | Базовое имя виртуальной машины для использования в данном кластере. Значение должно быть длиной от 1 до 58 символов. К имени добавляется дефис и случайная четырёхзначная строка. Базовое имя виртуальной машины должно соответствовать RFC1035. |
description строка | Необязательное описание данного ресурса. Укажите это свойство при создании ресурса. |
env_type строка | Указывает, в какой среде Ansible выполняется этот модуль. Не устанавливайте это значение, если вы не знаете, что делаете. Это влияет только на строку User Agent для любых запросов к 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, который нужно использовать. |
region строка / обязательно | Регион, в котором находится управляемый кластер виртуальных машин. |
scopes список / элементы=строка | Массив используемых областей |
service_account_contents jsonarg | Содержимое файла JSON учетной записи службы, либо в словаре, либо как JSON-строка, его представляющая. |
service_account_email строка | Необязательный адрес электронной почты учетной записи службы, если выбран machineaccount и пользователь не хочет использовать адрес по умолчанию. |
service_account_file путь | Путь к файлу JSON учетной записи службы, если тип serviceaccount выбран в качестве типа. |
state строка | Необходимо ли наличие данного объекта в GCP. Варианты:
|
target_pools список / элементы=словарь | Ресурсы TargetPool, к которым добавляются виртуальные машины в поле instanceGroup. Целевые пулы автоматически применяются ко всем виртуальным машинам в управляемом кластере. |
target_size integer | Целевое количество запущенных экземпляров для этой группы управляемых экземпляров. Удаление или отказ от экземпляров уменьшает это число. Изменение размера группы изменяет это число. |
Примеры
- 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-central1
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 region instance group manager
google.cloud.gcp_compute_region_instance_group_manager:
name: test_object
base_instance_name: test1-child
region: us-central1
instance_template: "{{ instancetemplate }}"
target_size: 3
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
state: present
Значения возврата
Общие значения возврата документированы здесь, следующие — поля, уникальные для данного модуля:
Ключ | Описание |
|---|---|
autoHealingPolicies сложный тип | Политика автоматического исправления для этой управляемой группы виртуальных машин. Возвращается при: успехе |
|
healthCheck строка |
URL проверки работоспособности, сигнализирующей об автоматическом исправление. Возвращается при: успехе |
|
initialDelaySec целое число |
Количество секунд, в течение которого управляемая группа виртуальных машин ожидает, прежде чем применять политики автоматического исправления к новым экземплярам или недавно воссозданным экземплярам. Возвращается при: успехе |
baseInstanceName строка | Базовое имя экземпляра, используемое для экземпляров в этой группе. Значение должно быть длиной от 1 до 58 символов. К имени базового экземпляра добавляется дефис и случайная четырёхсимвольная строка. Базовое имя экземпляра должно соответствовать RFC1035. Возвращается при: успехе |
creationTimestamp строка | Маркер создания этой управляемой группы виртуальных машин в формате RFC3339. Возвращается при: успехе |
currentActions сложный тип | Список действий экземпляров и количество экземпляров в этой управляемой группе виртуальных машин, запланированных на каждое из этих действий. Возвращается при: успехе |
|
abandoning целое число |
Общее количество экземпляров в управляемой группе виртуальных машин, запланированных на отказ. Отказ от экземпляра удаляет его из управляемой группы виртуальных машин без удаления. Возвращается при: успехе |
|
creating целое число |
Количество экземпляров в управляемой группе виртуальных машин, запланированных на создание или находящихся в процессе создания. Если группа не может создать ни один из этих экземпляров, она пытается снова до успешного создания экземпляра. Если повторные попытки создания были отключены, это поле не будет заполнено; вместо этого будет заполнено поле creatingWithoutRetries. Возвращается при: успехе |
|
creatingWithoutRetries целое число |
Количество экземпляров, которые управляемая группа виртуальных машин попытается создать. Группа пытается создать каждый экземпляр только один раз. Если группа не может создать ни один из этих экземпляров, она уменьшает значение targetSize группы соответственно. Возвращается при: успехе |
|
deleting целое число |
Количество экземпляров в управляемой группе виртуальных машин, которые запланированы на удаление или находятся в процессе удаления. Возвращается при: успехе |
|
none целое число |
Количество экземпляров в управляемой группе виртуальных машин, которые работают и не имеют запланированных действий. Возвращается при: успехе |
|
recreating целое число |
Количество экземпляров в управляемой группе виртуальных машин, которые запланированы на пересоздание или находятся в процессе пересоздания. Пересоздание экземпляра удаляет существующий корневой постоянный диск и создаёт новый диск из образа, определённого в шаблоне экземпляра. Возвращается при: успехе |
|
refreshing целое число |
Количество экземпляров в управляемой группе виртуальных машин, которые перенастраиваются с помощью свойств, не требующих перезапуска или пересоздания. Например, установка или удаление целевых пулов для экземпляра. Возвращается при: успехе |
|
restarting целое число |
Количество экземпляров в управляемой группе виртуальных машин, которые запланированы на перезапуск или находятся в процессе перезапуска. Возвращается при: успехе |
description строка | Необязательное описание этого ресурса. Укажите это свойство при создании ресурса. Возвращается при: успехе |
id целое число | Уникальный идентификатор этого ресурса. Возвращается при: успехе |
instanceGroup словарь | Управляемая группа экземпляров. Возвращается при: успехе |
instanceTemplate словарь | Шаблон виртуальной машины, указанный для этой группы управляемых виртуальных машин. Группа использует этот шаблон для создания всех новых виртуальных машин в группе управляемых виртуальных машин. Возвращается: успешно |
name строка | Имя группы управляемых виртуальных машин. Имя должно содержать от 1 до 63 символов и соответствовать RFC1035. Возвращается: успешно |
namedPorts сложное | Назначенные порты, настроенные для групп виртуальных машин, дополняющих эту группу менеджера групп виртуальных машин. Возвращается: успешно |
|
name строка |
Имя для этого назначенного порта. Имя должно содержать от 1 до 63 символов и соответствовать RFC1035. Возвращается: успешно |
|
port целое число |
Номер порта, который может быть значением от 1 до 65535. Возвращается: успешно |
region строка | Регион, в котором расположена группа управляемых виртуальных машин. Возвращается: успешно |
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_region_instance_group_manager_module.html