Spec-Zone.ru › Ansible 2.9

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

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
all_ports
boolean
добавлен в 2.8
    Варианты:
  • no
  • yes
Для внутренней балансировки нагрузки TCP/UDP (т.е. схема балансировки нагрузки — INTERNAL, и протокол — TCP/UDP), установите значение в true, чтобы разрешить перенаправление пакетов, адресованных любым портам, на бэкенды, настроенные с этой правилом перенаправления. Используется с backend service. Не может быть задано, если заданы port или portRange.
auth_kind
строка / обязательно
    Варианты:
  • application
  • machineaccount
  • serviceaccount
Тип используемых учетных данных.
backend_service
словарь
BackendService для приема соответствующего трафика. Используется только для внутренней балансировки нагрузки.
Это поле представляет ссылку на ресурс BackendService в GCP. Его можно указать двумя способами. Во-первых, вы можете поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Во-вторых, вы можете добавить `register: имя-ресурса` в задачу gcp_compute_backend_service и затем установить это поле backend_service на "{{ имя-ресурса }}"
description
строка
Необязательное описание этого ресурса. Укажите это свойство при создании ресурса.
env_type
строка
Указывает, в какой среде Ansible выполняется данный модуль.
Это поле не следует устанавливать, если вы не знаете, что делаете.
Это поле изменяет только строку User Agent для любых запросов к API.
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.
Некоторые допустимые значения включают: "TCP", "UDP", "ESP", "AH", "SCTP", "ICMP"
ip_version
строка
ipVersion не является допустимым полем для региональных правил перенаправления.
Некоторые допустимые значения включают: "IPV4", "IPV6"
load_balancing_scheme
строка
Это указывает, для чего будет использоваться правило перенаправления, и может принимать только следующие значения: INTERNAL, EXTERNAL. Значение INTERNAL означает, что это будет использоваться для внутренней балансировки сети (TCP, UDP). Значение EXTERNAL означает, что это будет использоваться для внешней балансировки (HTTP(S) LB, внешняя балансировка TCP/UDP, SSL-прокси).
Некоторые допустимые значения включают: "INTERNAL", "EXTERNAL"
name
строка / обязательно
Имя ресурса; предоставляется клиентом при создании ресурса. Имя должно быть длиной от 1 до 63 символов и соответствовать RFC1035. В частности, имя должно быть длиной от 1 до 63 символов и соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие символы — дефисом, строчной буквой или цифрой, за исключением последнего символа, который не может быть дефисом.
network
словарь
Для внутренней балансировки нагрузки это поле идентифицирует сеть, к которой должен принадлежать IP-адрес, сбалансированный по нагрузке, для данного правила перенаправления. Если это поле не указано, используется сеть по умолчанию.
Это поле используется только для внутренней балансировки нагрузки.
Это поле представляет ссылку на ресурс сети в GCP. Его можно указать двумя способами. Во-первых, вы можете поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Во-вторых, вы можете добавить `register: имя-ресурса` в задачу gcp_compute_network и затем установить это поле network на "{{ имя-ресурса }}"
network_tier
строка
добавлен в 2.8
Уровень сети, используемый для настройки этого адреса. Это поле может принимать следующие значения: PREMIUM или STANDARD. Если это поле не указано, предполагается значение PREMIUM.
Некоторые допустимые значения включают: "PREMIUM", "STANDARD"
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
строка
Используемый проект Google Cloud Platform.
region
строка / обязательно
Ссылка на регион, в котором находится региональное правило перенаправления.
Это поле не применимо к глобальным правилам перенаправления.
scopes
список
Массив используемых областей.
service_account_contents
jsonarg
Содержимое файла Service Account в формате JSON, либо в виде словаря, либо как строка JSON, его представляющая.
service_account_email
строка
Необязательный адрес электронной почты учетной записи службы, если выбран machineaccount, и пользователь не хочет использовать адрес по умолчанию.
service_account_file
путь
Путь к файлу Service Account в формате JSON, если выбран тип serviceaccount.
service_label
строка
добавлен в 2.8
Необязательный префикс к имени службы для данного правила перенаправления.
Если указано, будет первым меткой в полном имени службы.
Метка должна быть длиной от 1 до 63 символов и соответствовать RFC1035.
В частности, метка должна быть длиной от 1 до 63 символов и соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие символы — дефисом, строчной буквой или цифрой, за исключением последнего символа, который не может быть дефисом.
Это поле используется только для внутренней балансировки нагрузки.
state
строка
    Варианты:
  • present ←
  • absent
Указывает, должен ли данный объект существовать в GCP
Подсеть
словарь
Подсеть, к которой должен принадлежать IP-адрес с балансировкой нагрузки для этого Правила переадресации. Это поле используется только для ВНУТРЕННЕЙ балансировки нагрузки.
Если указанная сеть находится в режиме автоматической подсети, это поле является необязательным. Однако, если сеть находится в режиме пользовательской подсети, подсеть необходимо указать.
Это поле представляет ссылку на ресурс Подсети в GCP. Его можно указать двумя способами. Во-первых, вы можете поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Во-вторых, вы можете добавить `register: имя-ресурса` в задачу gcp_compute_subnetwork и затем установить это поле подсети на "{{ имя-ресурса }}"
Целевой ресурс
словарь
добавлен в 2.7
Это поле используется только для ВНЕШНЕЙ балансировки нагрузки.
Ссылка на ресурс TargetPool для приема совпавшего трафика.
Этот целевой ресурс должен находиться в том же регионе, что и правило переадресации.
Переадресованный трафик должен быть соответствующего типа для целевого объекта.
Это поле представляет ссылку на ресурс TargetPool в GCP. Его можно указать двумя способами. Во-первых, вы можете поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Во-вторых, вы можете добавить `register: имя-ресурса` в задачу gcp_compute_target_pool и затем установить это поле целевого ресурса на "{{ имя-ресурса }}"

Примечания

Примечание

  • Ссылка на API: https://cloud.google.com/compute/docs/reference/v1/forwardingRule
  • Официальная документация: https://cloud.google.com/compute/docs/load-balancing/network/forwarding-rules
  • для аутентификации можно установить service_account_file, используя переменную среды c(gcp_service_account_file).
  • для аутентификации можно установить service_account_contents, используя переменную среды c(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 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: serviceaccount
    service_account_file: "/tmp/auth.pem"
    state: present

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

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

Ключ Возвращаемое значение Описание
allPorts
boolean
успех
Для внутренней балансировки нагрузки TCP/UDP (т.е. схема балансировки — INTERNAL, а протокол — TCP/UDP), установите это значение в true, чтобы разрешить пересылку пакетов, адресованных любым портам, на бэкенды, настроенные с этой правилом пересылки. Используется с сервисом бэкенда. Не может быть установлено, если заданы порт или диапазон портов.

backendService
словарь
успех
Сервис бэкенда для приема соответствующего трафика. Используется только для внутренней балансировки нагрузки.

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

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

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

IPAddress
строка
успех
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 .

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

ipVersion
строка
успех
ipVersion — некорректное поле для региональных правил пересылки.

loadBalancingScheme
строка
успех
Это указывает, для чего будет использоваться правило пересылки, и может принимать следующие значения: 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-адрес, сбалансированный по нагрузке, для этого правила пересылки. Если это поле не указано, используется сеть по умолчанию.
Это поле используется только для внутренней балансировки нагрузки.

networkTier
строка
успех
Уровень сети, используемый для настройки этого адреса. Это поле может принимать следующие значения: PREMIUM или STANDARD. Если это поле не указано, предполагается, что это PREMIUM.

portRange
строка
успех
Это поле используется совместно с полем 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
строка
успех
Ссылка на регион, где находится региональное правило пересылки.
Это поле не применимо к глобальным правилам пересылки.

serviceLabel
строка
успех
Необязательный префикс к имени сервиса для этого правила пересылки.
Если указано, будет первым меткой полному имени сервиса.
Метка должна содержать 1-63 символа и соответствовать RFC1035.
В частности, метка должна содержать 1-63 символа и соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие символы — дефисом, строчной буквой или цифрой, за исключением последнего символа, который не может быть дефисом.
Это поле используется только для внутренней балансировки нагрузки.

serviceName
строка
успех
Внутреннее полное имя сервиса для этого правила пересылки.
Это поле используется только для внутренней балансировки нагрузки.

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

Spec-Zone.ru

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