Spec-Zone.ru › Ansible 2.6

gcp_compute_instance_group_manager - Создаёт GCP InstanceGroupManager

Новое в версии 2.6.

  • Обзор
    • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус
  • Техническое обслуживание
    • Автор

Обзор

  • Создаёт управляемую группу виртуальных машин (Instance Group) используя предоставленную в запросе информацию. После создания группы, планируется действие для создания виртуальных машин в группе, используя указанную шаблонную виртуальную машину (Instance Template). Данная операция отмечается как выполнена (DONE), когда группа создана, даже если виртуальные машины в группе ещё не были созданы. Вам необходимо отдельно проверить статус отдельных виртуальных машин.
  • Управляемая группа виртуальных машин может содержать до 1000 виртуальных машин на группу.

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • python >= 2.6
  • requests >= 2.18.4
  • google-auth >= 1.3.0

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
auth_kind
обязательно
    Варианты:
  • machineaccount
  • serviceaccount
  • application
Тип используемых учетных данных.
base_instance_name
обязательно
Базовое имя виртуальной машины для использования в данной группе. Значение должно быть длиной от 1 до 58 символов. Имя виртуальной машины формируется путём добавления тире и четырёх случайных символов к базовому имени.
Базовое имя виртуальной машины должно соответствовать RFC1035.
description
Необязательное описание этого ресурса. Укажите это свойство при создании ресурса.
instance_template
обязательно
Ссылка на ресурс InstanceTemplate.
name
обязательно
Имя управляемой группы виртуальных машин. Длина имени должна быть от 1 до 63 символов, и соответствовать RFC1035.
named_ports
Настроенные имена портов для групп виртуальных машин, дополняющих эту группу управляемых виртуальных машин.
name
Имя для этого имени порта. Длина имени должна быть от 1 до 63 символов, и соответствовать RFC1035.
port
Номер порта, значение которого может быть от 1 до 65535.
project
Проект Google Cloud Platform для использования.
scopes
обязательно
Массив используемых областей.
service_account_email
Необязательный адрес электронной почты учетной записи службы, если выбран machineaccount и пользователь не хочет использовать адрес по умолчанию.
service_account_file
Путь к файлу JSON учетной записи службы, если в качестве типа выбрано serviceaccount.
state
обязательно
    Варианты:
  • present ←
  • absent
Требуется ли существование данного объекта в GCP
target_pools
Ресурсы TargetPool, к которым добавляются виртуальные машины в поле instanceGroup. Целевые пулы автоматически применяются ко всем виртуальным машинам в управляемой группе виртуальных машин.
target_size
Целевое количество работающих виртуальных машин для данной управляемой группы виртуальных машин. Удаление или отказ от виртуальных машин уменьшает это число. Изменение размера группы изменяет это число.
zone
обязательно
Ссылка на ресурс Zone.

Примечания

Примечание

  • Для аутентификации можно установить service_account_file используя переменную среды GCP_SERVICE_ACCOUNT_FILE.
  • Для аутентификации можно установить service_account_email используя переменную среды GCP_SERVICE_ACCOUNT_EMAIL.
  • Для аутентификации можно установить auth_kind используя переменную среды GCP_AUTH_KIND.
  • Для аутентификации можно установить scopes используя переменную среды GCP_SCOPES.
  • Значения переменных среды будут использованы только в том случае, если значения из playbook не заданы.
  • Параметры service_account_email и service_account_file взаимно исключают друг друга.

Примеры

- name: create a network
  gcp_compute_network:
      name: 'network-instancetemplate'
      project: "{{ gcp_project }}"
      auth_kind: "{{ gcp_cred_kind }}"
      service_account_file: "{{ gcp_cred_file }}"
      scopes:
        - https://www.googleapis.com/auth/compute
      state: present
  register: network
- name: create a address
  gcp_compute_address:
      name: 'address-instancetemplate'
      region: 'us-west1'
      project: "{{ gcp_project }}"
      auth_kind: "{{ gcp_cred_kind }}"
      service_account_file: "{{ gcp_cred_file }}"
      scopes:
        - https://www.googleapis.com/auth/compute
      state: present
  register: address
- name: create a instance template
  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 }}"
      scopes:
        - https://www.googleapis.com/auth/compute
      state: present
  register: instancetemplate
- name: create a instance group manager
  gcp_compute_instance_group_manager:
      name: testObject
      base_instance_name: 'test1-child'
      instance_template: "{{ instancetemplate }}"
      target_size: 3
      zone: 'us-west1-a'
      project: testProject
      auth_kind: service_account
      service_account_file: /tmp/auth.pem
      scopes:
        - https://www.googleapis.com/auth/compute
      state: present

Возвращаемые значения

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

Ключ Возвращаемое значение Описание
base_instance_name
str
успешно
Имя базового экземпляра, используемое для экземпляров в этой группе. Значение должно быть длиной от 1 до 58 символов. Имена экземпляров образуются путем добавления тире и случайной четырехсимвольной строки к имени базового экземпляра.
Имя базового экземпляра должно соответствовать RFC1035.

creation_timestamp
str
успешно
Отметка времени создания этой управляемой группы экземпляров в формате RFC3339.

current_actions
complex
успешно
Список действий над экземплярами и количество экземпляров в этой управляемой группе экземпляров, запланированных для каждого из этих действий.

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

creating
int
успешно
Количество экземпляров в управляемой группе экземпляров, которые запланированы для создания или в настоящее время создаются. Если группе не удается создать какой-либо из этих экземпляров, она пытается снова, пока экземпляр не будет создан успешно.
Если повторные попытки создания отключены, это поле не будет заполняться; вместо этого будет заполняться поле creatingWithoutRetries.

creating_without_retries
int
успешно
Количество экземпляров, которые управляемая группа экземпляров попытается создать. Группа пытается создать каждый экземпляр только один раз. Если группе не удается создать какой-либо из этих экземпляров, она уменьшает значение targetSize группы соответственно.

deleting
int
успешно
Количество экземпляров в управляемой группе экземпляров, которые запланированы для удаления или в настоящее время удаляются.

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

recreating
int
успешно
Количество экземпляров в управляемой группе экземпляров, которые запланированы для пересоздания или в настоящее время пересоздаются.
При пересоздании экземпляра удаляется существующий корневой постоянный диск и создается новый диск из образа, определенного в шаблоне экземпляра.

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

restarting
int
успешно
Количество экземпляров в управляемой группе экземпляров, которые запланированы для перезапуска или в настоящее время перезапускаются.

description
str
успешно
Необязательное описание этого ресурса. Укажите это свойство при создании ресурса.

id
int
успешно
Уникальный идентификатор этого ресурса.

instance_group
dict
успешно
Ссылка на ресурс InstanceGroup.

instance_template
dict
успешно
Ссылка на ресурс InstanceTemplate.

name
str
успешно
Имя управляемой группы экземпляров. Имя должно иметь длину от 1 до 63 символов и соответствовать RFC1035.

named_ports
complex
успешно
Назначенные порты, настроенные для групп экземпляров, дополняющих эту группу менеджера экземпляров.

name
str
успешно
Имя этого назначенного порта. Имя должно иметь длину от 1 до 63 символов и соответствовать RFC1035.

port
int
успешно
Номер порта, который может быть значением от 1 до 65535.

region
str
успешно
Ссылка на ресурс Region.

target_pools
list
успешно
Ресурсы TargetPool, к которым добавляются экземпляры в поле instanceGroup. Целевые пулы автоматически применяются ко всем экземплярам в управляемой группе экземпляров.

target_size
int
успешно
Целевое количество работающих экземпляров для этой управляемой группы экземпляров. Удаление или отмена экземпляров уменьшает это число. Изменение размера группы изменяет это число.

zone
str
успешно
Ссылка на ресурс Zone.



Статус

Этот модуль помечен как превью, что означает, что его интерфейс не гарантируется как обратная совместимость.

Техническое обслуживание

Этот модуль помечен как сообщество, что означает, что он поддерживается сообществом Ansible. Более подробную информацию см. в разделе Техническое обслуживание и поддержка модулей.

Список других модулей, также поддерживаемых сообществом 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.6/modules/gcp_compute_instance_group_manager_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API