Spec-Zone.ru › Ansible 2.7

gcp_compute_forwarding_rule – Создаёт GCP ForwardingRule

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

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Значения возврата
  • Статус

Обзор

  • Ресурс ForwardingRule. Ресурс ForwardingRule указывает, в какой пул целевых виртуальных машин будет направлен пакет, если он соответствует заданной кортеже [IPAddress, IPProtocol, portRange].

Требования

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

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

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
auth_kind
- / обязательно
    Варианты:
  • machineaccount
  • serviceaccount
  • application
Тип используемых учетных данных.
backend_service
-
Ссылка на BackendService для получения соответствующего трафика.
Используется для внутреннего балансирования нагрузки.
(не используется для внешнего балансирования).
description
-
Необязательное описание этого ресурса. Укажите это свойство при создании ресурса.
ip_address
-
IP-адрес, по которому этот маршрут перенаправления обслуживает запросы.
Адреса ограничены в зависимости от схемы балансирования нагрузки (EXTERNAL или INTERNAL) и области (глобальной или региональной).
При схеме балансирования EXTERNAL для глобальных маршрутов перенаправления адрес должен быть глобальным IP-адресом, а для региональных маршрутов перенаправления — адресом в том же регионе, что и маршрут перенаправления. Если это поле пустое, будет назначен временный IPv4-адрес из той же области (глобальной или региональной). Региональный маршрут перенаправления поддерживает только IPv4. Глобальный маршрут перенаправления поддерживает IPv4 или IPv6.
При схеме балансирования INTERNAL это может быть только IP-адрес RFC 1918, принадлежащий сети/подсети, настроенной для маршрута перенаправления. По умолчанию, если это поле пустое, будет автоматически выделен временный внутренний IP-адрес из диапазона IP-адресов подсети или сети, настроенной для данного маршрута перенаправления.
Адрес можно указать либо по буквальному IP-адресу, либо по URL-ссылке на существующий ресурс Address. Следующие примеры являются корректными: * 100.1.2.3 * https://www.googleapis.com/compute/v1/projects/project/regions/region/addresses/address * projects/project/regions/region/addresses/address * regions/region/addresses/address * global/addresses/address * address.
ip_protocol
-
    Варианты:
  • TCP
  • UDP
  • ESP
  • AH
  • SCTP
  • ICMP
IP-протокол, к которому относится данное правило. Допустимые значения — TCP, UDP, ESP, AH, SCTP или ICMP.
При схеме балансирования INTERNAL допустимы только TCP и UDP.
ip_version
-
    Варианты:
  • IPV4
  • IPV6
Версия IP, которая будет использоваться этим маршрутом перенаправления. Допустимые значения — IPV4 или IPV6. Это можно указать только для глобального маршрута перенаправления.
load_balancing_scheme
-
    Варианты:
  • INTERNAL
  • EXTERNAL
Указывает, для чего используется ForwardingRule, и может принимать только следующие значения: INTERNAL, EXTERNAL. Значение INTERNAL означает, что это будет использоваться для внутреннего балансирования нагрузки (TCP, UDP). Значение EXTERNAL означает, что это будет использоваться для внешнего балансирования нагрузки (HTTP(S) LB, внешний балансировщик TCP/UDP, SSL-прокси).
name
- / обязательно
Имя ресурса; предоставляется клиентом при создании ресурса. Имя должно быть длиной от 1 до 63 символов и соответствовать RFC1035. То есть, длина должна быть от 1 до 63 символов, и имя должно соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие — дефисом, строчной буквой или цифрой, за исключением последнего символа, который не может быть дефисом.
network
-
Для внутреннего балансирования нагрузки это поле идентифицирует сеть, к которой должен принадлежать IP-адрес балансирования для этого Forwarding Rule. Если это поле не указано, будет использоваться сеть по умолчанию.
Это поле не используется для внешнего балансирования нагрузки.
port_range
-
Это поле используется вместе с полем target для TargetHttpProxy, TargetHttpsProxy, TargetSslProxy, TargetTcpProxy, TargetVpnGateway, TargetPool, TargetInstance.
Применимо только при IPProtocol TCP, UDP или SCTP. Только пакеты, адресованные портам в указанном диапазоне, будут пересылаться целевому узлу.
Маршруты перенаправления с одинаковой парой [IPAddress, IPProtocol] должны иметь непересекающиеся диапазоны портов.
Некоторые типы целевых ресурсов перенаправления имеют ограничения на допустимые порты: * TargetHttpProxy: 80, 8080 * TargetHttpsProxy: 443 * TargetTcpProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 5222 * TargetSslProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 5222 * TargetVpnGateway: 500, 4500.
ports
-
Это поле используется вместе с полем backend_service для внутреннего балансирования нагрузки.
Когда схема балансирования INTERNAL, можно настроить один порт или список портов, разделенных запятыми. Только пакеты, адресованные этим портам, будут пересылаться бэкендам, настроенным с этим маршрутом перенаправления.
Вы можете указать до 5 портов.
project
-
По умолчанию:
null
Проект Google Cloud Platform, который следует использовать.
region
- / обязательно
Ссылка на регион, в котором находится региональный маршрут перенаправления.
Это поле не применимо к глобальным маршрутам перенаправления.
scopes
-
Массив используемых областей.
service_account_email
-
Необязательный адрес электронной почты учетной записи сервиса, если выбран machineaccount и пользователь не хочет использовать адрес по умолчанию.
service_account_file
-
Путь к файлу JSON учетной записи сервиса, если в качестве типа выбран serviceaccount.
state
-
    Варианты:
  • present ←
  • absent
Указывает, должен ли данный объект существовать в GCP
subnetwork
-
Ссылка на подсеть.
Для внутреннего балансирования нагрузки это поле идентифицирует подсеть, к которой должен принадлежать IP-адрес балансирования для данного Forwarding Rule.
Если указанная сеть настроена в режиме автоматической подсети, это поле необязательно. Однако, если сеть настроена в режиме пользовательской подсети, подсеть необходимо указать.
Это поле не используется для внешнего балансирования нагрузки.
target
-
добавлен в 2.7
Ссылка на TargetPool для получения соответствующего трафика.
Для региональных маршрутов перенаправления этот целевой ресурс должен находиться в том же регионе, что и маршрут перенаправления. Для глобальных маршрутов перенаправления этот целевой ресурс должен быть ресурсом глобального балансирования нагрузки. Пересылаемый трафик должен быть подходящего типа для целевого объекта.
Это поле не используется для внутреннего балансирования нагрузки.

Примечания

Примечание

  • Ссылка на API: https://cloud.google.com/compute/docs/reference/latest/forwardingRule
  • Официальная документация: https://cloud.google.com/compute/docs/load-balancing/network/forwarding-rules
  • Для аутентификации можно установить 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 address
  gcp_compute_address:
      name: "address-forwardingrule"
      region: us-west1
      project: "{{ gcp_project }}"
      auth_kind: "{{ gcp_cred_kind }}"
      service_account_file: "{{ gcp_cred_file }}"
      state: present
  register: address

- name: create a target pool
  gcp_compute_target_pool:
      name: "targetpool-forwardingrule"
      region: us-west1
      project: "{{ gcp_project }}"
      auth_kind: "{{ gcp_cred_kind }}"
      service_account_file: "{{ gcp_cred_file }}"
      state: present
  register: targetpool

- name: create a forwarding rule
  gcp_compute_forwarding_rule:
      name: "test_object"
      region: us-west1
      target: "{{ targetpool }}"
      ip_protocol: TCP
      port_range: 80-80
      ip_address: "{{ address.address }}"
      project: "test_project"
      auth_kind: "service_account"
      service_account_file: "/tmp/auth.pem"
      state: present

Значения возврата

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

Ключ Возвращаемое значение Описание
backend_service
словарь
успех
Ссылка на BackendService для получения сопоставленного трафика.
Используется для внутренней балансировки нагрузки.
(не используется для внешней балансировки нагрузки).

creation_timestamp
строка
успех
Дата и время создания в формате RFC3339.

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

id
целое число
успех
Уникальный идентификатор ресурса.

ip_address
строка
успех
IP-адрес, который обслуживает эта правила перенаправления.
Адреса ограничены схемой балансировки нагрузки (EXTERNAL или INTERNAL) и областью (глобальной или региональной).
Когда схема балансировки нагрузки EXTERNAL, для глобальных правил перенаправления адрес должен быть глобальным IP-адресом, а для региональных правил перенаправления адрес должен находиться в том же регионе, что и правило перенаправления. Если это поле пустое, будет назначен временный IPv4-адрес из той же области (глобальной или региональной). Региональное правило перенаправления поддерживает только IPv4. Глобальное правило перенаправления поддерживает IPv4 или IPv6.
Когда схема балансировки нагрузки INTERNAL, это может быть только IP-адрес RFC 1918, принадлежащий сети/подсети, настроенной для правила перенаправления. По умолчанию, если это поле пустое, будет автоматически выделен временный внутренний IP-адрес из диапазона IP-адресов подсети или сети, настроенной для данного правила перенаправления.
Адрес может быть указан либо по буквам IP-адреса, либо по ссылке URL на существующий ресурс Address. Следующие примеры являются допустимыми: * 100.1.2.3 * https://www.googleapis.com/compute/v1/projects/project/regions/region/addresses/address * projects/project/regions/region/addresses/address * regions/region/addresses/address * global/addresses/address * address .

ip_protocol
строка
успех
IP-протокол, к которому применяется это правило. Допустимые значения: TCP, UDP, ESP, AH, SCTP или ICMP.
Когда схема балансировки нагрузки INTERNAL, допустимы только TCP и UDP.

ip_version
строка
успех
Версия IP, которая будет использоваться этим правилом перенаправления. Допустимые значения: IPV4 или IPV6. Это может быть указано только для глобального правила перенаправления.

load_balancing_scheme
строка
успех
Это указывает, для чего будет использоваться ForwardingRule и может принимать только следующие значения: INTERNAL, EXTERNAL Значение INTERNAL означает, что это будет использоваться для внутренней балансировки сети (TCP, UDP). Значение EXTERNAL означает, что это будет использоваться для внешней балансировки (HTTP(S) LB, внешняя балансировка TCP/UDP, SSL-прокси).

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

network
словарь
успех
Для внутренней балансировки нагрузки это поле идентифицирует сеть, к которой должен принадлежать IP-адрес балансировки нагрузки для данного правила перенаправления. Если это поле не указано, будет использоваться сеть по умолчанию.
Это поле не используется для внешней балансировки нагрузки.

port_range
строка
успех
Это поле используется вместе с полем target для TargetHttpProxy, TargetHttpsProxy, TargetSslProxy, TargetTcpProxy, TargetVpnGateway, TargetPool, TargetInstance.
Применимо только когда IPProtocol TCP, UDP или SCTP, только пакеты, адресованные портам в указанном диапазоне, будут перенаправлены на целевой ресурс.
Правила перенаправления с одинаковым [IPAddress, IPProtocol] должны иметь непересекающиеся диапазоны портов.
Некоторые типы целевых ресурсов перенаправления имеют ограничения на приемлемые порты: * TargetHttpProxy: 80, 8080 * TargetHttpsProxy: 443 * TargetTcpProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 5222 * TargetSslProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 5222 * TargetVpnGateway: 500, 4500 .

ports
список
успех
Это поле используется вместе с полем backend_service для внутренней балансировки нагрузки.
При схеме балансировки INTERNAL можно настроить отдельный порт или список портов, разделенных запятыми. Только пакеты, адресованные этим портам, будут перенаправлены на бэкенды, настроенные с данным правилом перенаправления.
Вы можете указать максимальное количество до 5 портов.

region
строка
успех
Ссылка на регион, где находится региональное правило перенаправления.
Это поле неприменимо к глобальным правилам перенаправления.

subnetwork
словарь
успех
Ссылка на подсеть.
Для внутренней балансировки нагрузки это поле идентифицирует подсеть, к которой должен принадлежать IP-адрес балансировки нагрузки для данного правила перенаправления.
Если указанная сеть находится в режиме автоматической подсети, это поле необязательно. Однако, если сеть находится в режиме пользовательской подсети, подсеть необходимо указать.
Это поле не используется для внешней балансировки нагрузки.

target
словарь
успех
Ссылка на ресурс TargetPool для получения сопоставленного трафика.
Для региональных правил перенаправления этот целевой ресурс должен находиться в том же регионе, что и правило перенаправления. Для глобальных правил перенаправления этот целевой ресурс должен быть глобальным ресурсом балансировки нагрузки. Перенаправляемый трафик должен быть соответствующего типа для целевого объекта.
Это поле не используется для внутренней балансировки нагрузки.



Статус

  • Интерфейс этого модуля не гарантирует обратной совместимости. [предварительная версия]
  • Этот модуль поддерживается сообществом Ansible. [community]

Авторы

  • 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.7/modules/gcp_compute_forwarding_rule_module.html

Spec-Zone.ru

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