Spec-Zone.ru › Ansible 2.6

gcp_compute_global_forwarding_rule - Создаёт GCP GlobalForwardingRule

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

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

Описание

  • Представляет ресурс GlobalForwardingRule. Правила глобального перенаправления используются для перенаправления трафика на корректный балансировщик нагрузки для HTTP балансировки нагрузки. Правила глобального перенаправления могут использоваться только для HTTP балансировки нагрузки.
  • Дополнительную информацию можно найти по адресу https://cloud.google.com/compute/docs/load-balancing/http/ .

Требования

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

  • 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-адресом, либо ссылкой на существующий ресурс 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
Указывает, для чего будет использоваться правило перенаправления, и может принимать только следующие значения: 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
Ссылка на ресурс сети.
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, который нужно использовать.
scopes
обязательно
Массив используемых областей.
service_account_email
Необязательный адрес электронной почты учетной записи сервиса, если выбран machineaccount, и пользователь не хочет использовать адрес по умолчанию.
service_account_file
Путь к файлу JSON учетной записи сервиса, если выбран тип serviceaccount.
state
обязательно
    Варианты:
  • present ←
  • absent
Указывает, должен ли данный объект существовать в GCP
subnetwork
Ссылка на ресурс Subnetwork.
target
Этот target должен быть глобальным ресурсом балансировки нагрузки. Перенаправляемый трафик должен быть соответствующего типа для целевого объекта.
Допустимые типы: HTTP_PROXY, HTTPS_PROXY, SSL_PROXY, TCP_PROXY .

Примечания

Примечание

  • Для аутентификации можно установить 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 global address
  gcp_compute_global_address:
      name: 'globaladdress-globalforwardingrule'
      project: "{{ gcp_project }}"
      auth_kind: "{{ gcp_cred_kind }}"
      service_account_file: "{{ gcp_cred_file }}"
      scopes:
        - https://www.googleapis.com/auth/compute
      state: present
  register: globaladdress
- name: create a instance group
  gcp_compute_instance_group:
      name: 'instancegroup-globalforwardingrule'
      zone: 'us-central1-a'
      project: "{{ gcp_project }}"
      auth_kind: "{{ gcp_cred_kind }}"
      service_account_file: "{{ gcp_cred_file }}"
      scopes:
        - https://www.googleapis.com/auth/compute
      state: present
  register: instancegroup
- name: create a http health check
  gcp_compute_http_health_check:
      name: 'httphealthcheck-globalforwardingrule'
      healthy_threshold: 10
      port: 8080
      timeout_sec: 2
      unhealthy_threshold: 5
      project: "{{ gcp_project }}"
      auth_kind: "{{ gcp_cred_kind }}"
      service_account_file: "{{ gcp_cred_file }}"
      scopes:
        - https://www.googleapis.com/auth/compute
      state: present
  register: healthcheck
- name: create a backend service
  gcp_compute_backend_service:
      name: 'backendservice-globalforwardingrule'
      backends:
        - group: "{{ instancegroup }}"
      health_checks:
        - "{{ healthcheck.selfLink }}"
      enable_cdn: true
      project: "{{ gcp_project }}"
      auth_kind: "{{ gcp_cred_kind }}"
      service_account_file: "{{ gcp_cred_file }}"
      scopes:
        - https://www.googleapis.com/auth/compute
      state: present
  register: backendservice
- name: create a url map
  gcp_compute_url_map:
      name: 'urlmap-globalforwardingrule'
      default_service: "{{ backendservice }}"
      project: "{{ gcp_project }}"
      auth_kind: "{{ gcp_cred_kind }}"
      service_account_file: "{{ gcp_cred_file }}"
      scopes:
        - https://www.googleapis.com/auth/compute
      state: present
  register: urlmap
- name: create a target http proxy
  gcp_compute_target_http_proxy:
      name: 'targethttpproxy-globalforwardingrule'
      url_map: "{{ urlmap }}"
      project: "{{ gcp_project }}"
      auth_kind: "{{ gcp_cred_kind }}"
      service_account_file: "{{ gcp_cred_file }}"
      scopes:
        - https://www.googleapis.com/auth/compute
      state: present
  register: httpproxy
- name: create a global forwarding rule
  gcp_compute_global_forwarding_rule:
      name: testObject
      ip_address: "{{ globaladdress.address }}"
      ip_protocol: 'TCP'
      port_range: '80-80'
      target: "{{ httpproxy.selfLink }}"
      project: testProject
      auth_kind: service_account
      service_account_file: /tmp/auth.pem
      scopes:
        - https://www.googleapis.com/auth/compute
      state: present

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

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

Ключ Возвращаемое значение Описание
backend_service
dict
успех
Ссылка на ресурс BackendService.

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

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

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

ip_address
str
успех
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
str
успех
IP-протокол, к которому относится это правило. Допустимые значения: TCP, UDP, ESP, AH, SCTP или ICMP.
Когда схема балансировки нагрузки INTERNAL, допустимы только TCP и UDP.

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

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

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

network
dict
успех
Ссылка на ресурс Network.

port_range
str
успех
Это поле используется вместе с полем 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
list
успех
Это поле используется вместе с полем backend_service для внутренней балансировки нагрузки.
Когда схема балансировки нагрузки INTERNAL, можно настроить один порт или список портов, разделенных запятыми. Только пакеты, адресованные этим портам, будут переадресованы бэкендам, настроенным с этим правилом переадресации.
Вы можете указать максимум до 5 портов.

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

subnetwork
dict
успех
Ссылка на ресурс Subnetwork.

target
str
успех
Этот целевой ресурс должен быть глобальным ресурсом балансировки нагрузки. Переадресовываемый трафик должен быть соответствующего типа целевому объекту.
Допустимые типы: HTTP_PROXY, HTTPS_PROXY, SSL_PROXY, TCP_PROXY .



Статус

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

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

Этот модуль помечен как сообщество, что означает, что он поддерживается сообществом 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_global_forwarding_rule_module.html

Spec-Zone.ru

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