Spec-Zone.ru › Ansible 2.10

google.cloud.gcp_compute_region_instance_group_manager – Создаёт GCP RegionInstanceGroupManager

Примечание

Этот плагин входит в коллекцию google.cloud (версия 1.0.1).

Для его установки используйте: 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

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
auth_kind
строка / обязательный
    Варианты:
  • application
  • machineaccount
  • serviceaccount
Тип используемых учетных данных.
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: имя-ресурса` к задаче gcp_compute_instance_template, а затем установить это поле instance_template в "{{ имя-ресурса }}"
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
строка
    Варианты:
  • present ←
  • absent
Существует ли данный объект в GCP
target_pools
список / элементы=словарь
Ресурсы TargetPool, к которым добавляются экземпляры в поле instanceGroup. Целевые пулы автоматически применяются ко всем экземплярам в управляемой группе виртуальных машин.
target_size
целое число
Целевое количество работающих экземпляров для этой управляемой группы виртуальных машин. Удаление или отказ от экземпляров уменьшает это число. Изменение размера группы изменяет это число.

Примеры

- 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
complex
success
Политика автоматического исправления для этой группы управляемых виртуальных машин.

healthCheck
string
success
URL для проверки состояния, которая сигнализирует об автоматическом исправлении.

initialDelaySec
integer
success
Количество секунд, которое группа управляемых виртуальных машин ожидает, прежде чем применить политики автоматического исправления к новым виртуальным машинам или недавно воссозданным виртуальным машинам.

baseInstanceName
string
success
Базовое имя виртуальной машины для использования в этой группе. Значение должно быть длиной от 1 до 58 символов. Имена виртуальных машин формируются путем добавления дефиса и случайной четырехсимвольной строки к имени базовой виртуальной машины.
Базовое имя виртуальной машины должно соответствовать RFC1035.

creationTimestamp
string
success
Дата и время создания этой группы управляемых виртуальных машин в формате RFC3339.

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

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

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

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

deleting
integer
success
Количество виртуальных машин в группе управляемых виртуальных машин, запланированных на удаление или находящихся в процессе удаления.

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

recreating
integer
success
Количество виртуальных машин в группе управляемых виртуальных машин, запланированных на пересоздание или находящихся в процессе пересоздания.
При пересоздании виртуальной машины удаляется существующий корневой постоянный диск и создается новый диск из образа, определённого в шаблоне виртуальной машины.

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

restarting
integer
success
Количество виртуальных машин в группе управляемых виртуальных машин, запланированных на перезапуск или находящихся в процессе перезапуска.

description
string
success
Необязательное описание этого ресурса. Укажите этот параметр при создании ресурса.

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

instanceGroup
dictionary
success
Управляемая группа виртуальных машин.

instanceTemplate
dictionary
success
Шаблон виртуальной машины, указанный для этой группы управляемых виртуальных машин. Группа использует этот шаблон для создания всех новых виртуальных машин в группе управляемых виртуальных машин.

name
string
success
Имя группы управляемых виртуальных машин. Имя должно быть длиной от 1 до 63 символов и соответствовать RFC1035.

namedPorts
complex
success
Настроенные именованные порты для групп виртуальных машин, дополнительных к этой группе управляемых виртуальных машин.

name
string
success
Имя для этого именованного порта. Имя должно быть длиной от 1 до 63 символов и соответствовать RFC1035.

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

region
string
success
Регион, в котором находится группа управляемых виртуальных машин.

targetPools
list / elements=string
success
Ресурсы TargetPool, к которым добавляются виртуальные машины в поле instanceGroup. Целевые пулы автоматически применяются ко всем виртуальным машинам в группе управляемых виртуальных машин.

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



Авторы

  • 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.10/collections/google/cloud/gcp_compute_region_instance_group_manager_module.html

Spec-Zone.ru

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