Spec-Zone.ru › Ansible 2.10

google.cloud.gcp_compute_target_instance – Создаёт GCP TargetInstance

Примечание

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

Для его установки используйте: ansible-galaxy collection install google.cloud.

Чтобы использовать его в книге задач, укажите: google.cloud.gcp_compute_target_instance.

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Обзор

  • Представляет ресурс TargetInstance, который определяет экземпляр конечной точки, завершающий трафик определённых протоколов. В частности, они используются в протоколировании переадресации, где правила переадресации могут отправлять пакеты на не-NAT-экземпляр конечной точки. Каждый экземпляр конечной точки содержит один виртуальный машиннный экземпляр, который получает и обрабатывает трафик от соответствующих правил переадресации.

Требования

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

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

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
auth_kind
строка / обязательно
    Варианты:
  • application
  • machineaccount
  • serviceaccount
Тип используемых учетных данных.
description
строка
Необязательное описание этого ресурса.
env_type
строка
Указывает, в какой среде Ansible вы выполняете этот модуль.
Это не следует устанавливать, если вы не знаете, что делаете.
Это изменяет только строку User Agent для любых запросов к API.
instance
словарь / обязательно
URL виртуального машинного экземпляра, который обрабатывает трафик для данного экземпляра конечной точки. Принимает ссылки на себя или частичные пути с форматом `projects/project/zones/zone/instances/instance` или `zones/zone/instances/instance`.
Это поле представляет ссылку на ресурс Instance в GCP. Его можно указать двумя способами. Во-первых, вы можете поместить словарь с ключом 'selfLink' и значением ссылки на ресурс. Во-вторых, вы можете добавить `register: имя_ресурса` к задаче gcp_compute_instance, а затем установить это поле instance в "{{ имя_ресурса }}"
name
строка / обязательно
Имя ресурса. Предоставляется клиентом при создании ресурса. Длина имени должна быть от 1 до 63 символов, а также соответствовать RFC1035. То есть, длина имени должна быть от 1 до 63 символов и соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие символы — дефисом, строчной буквой или цифрой, за исключением последнего символа, который не может быть дефисом.
nat_policy
строка
По умолчанию:
"NO_NAT"
Параметр NAT, управляющий тем, как IP-адреса NAT-руются к экземпляру.
В настоящее время поддерживается только NO_NAT (значение по умолчанию).
Некоторые допустимые значения включают: "NO_NAT"
project
строка
Проект Google Cloud Platform, который нужно использовать.
scopes
список / элементы=строка
Массив областей, которые будут использоваться
service_account_contents
jsonarg
Содержимое файла JSON учетной записи службы, либо в словаре, либо в виде строки JSON, которая его представляет.
service_account_email
строка
Необязательный адрес электронной почты учетной записи службы, если выбран machineaccount, и пользователь не хочет использовать адрес электронной почты по умолчанию.
service_account_file
путь
Путь к файлу JSON учетной записи службы, если тип выбран как serviceaccount.
state
строка
    Варианты:
  • present ←
  • absent
Нужно ли существование данного объекта в GCP
zone
строка / обязательно
URL зоны, в которой находится экземпляр конечной точки.

Примечания

Примечание

  • Ссылка на API: https://cloud.google.com/compute/docs/reference/v1/targetInstances
  • Использование протоколирования переадресации: https://cloud.google.com/compute/docs/protocol-forwarding
  • для аутентификации можно установить service_account_file, используя переменную среды gcp_service_account_file.
  • для аутентификации можно установить service_account_contents, используя переменную среды GCP_SERVICE_ACCOUNT_CONTENTS.
  • для аутентификации можно установить service_account_email, используя переменную среды GCP_SERVICE_ACCOUNT_EMAIL.
  • для аутентификации можно установить auth_kind, используя переменную среды GCP_AUTH_KIND.
  • для аутентификации можно установить scopes, используя переменную среды GCP_SCOPES.
  • Значения переменных среды будут использоваться только в том случае, если значения в книге задач не заданы.
  • Параметры service_account_email и service_account_file взаимоисключающие.

Примеры

- name: create a network
  google.cloud.gcp_compute_network:
    name: network-instance
    project: "{{ gcp_project }}"
    auth_kind: "{{ gcp_cred_kind }}"
    service_account_file: "{{ gcp_cred_file }}"
    state: present
  register: network

- name: create a instance
  google.cloud.gcp_compute_instance:
    name: "{{ resource_name }}"
    machine_type: n1-standard-1
    disks:
    - auto_delete: 'true'
      boot: 'true'
      initialize_params:
        source_image: projects/ubuntu-os-cloud/global/images/family/ubuntu-1604-lts
    labels:
      environment: production
    network_interfaces:
    - network: "{{ network }}"
    zone: us-central1-a
    project: "{{ gcp_project }}"
    auth_kind: "{{ gcp_cred_kind }}"
    service_account_file: "{{ gcp_cred_file }}"
    state: present
  register: instance

- name: create a target instance
  google.cloud.gcp_compute_target_instance:
    name: target
    instance: "{{ instance }}"
    zone: us-central1-a
    project: test_project
    auth_kind: serviceaccount
    service_account_file: "/tmp/auth.pem"
    state: present

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

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

Ключ Возвращаемое значение Описание
creationTimestamp
строка
success
Марка времени создания в формате RFC3339.

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

instance
словарь
success
URL виртуального машинного экземпляра, который обрабатывает трафик для данного экземпляра конечной точки. Принимает ссылки на себя или частичные пути с форматом `projects/project/zones/zone/instances/instance` или `zones/zone/instances/instance`.

name
строка
success
Имя ресурса. Предоставляется клиентом при создании ресурса. Длина имени должна быть от 1 до 63 символов, а также соответствовать RFC1035. То есть, длина имени должна быть от 1 до 63 символов и соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие символы — дефисом, строчной буквой или цифрой, за исключением последнего символа, который не может быть дефисом.

natPolicy
строка
success
Параметр NAT, управляющий тем, как IP-адреса NAT-руются к экземпляру.
В настоящее время поддерживается только NO_NAT (значение по умолчанию).

zone
строка
success
URL зоны, в которой находится экземпляр конечной точки.



Авторы

  • 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_target_instance_module.html

Spec-Zone.ru

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