Spec-Zone.ru › Ansible 2.7

gcp_compute_backend_service – Создаёт GCP BackendService

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

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

Обзор

  • Создаёт ресурс BackendService в указанном проекте, используя данные из запроса.

Требования

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

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

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
affinity_cookie_ttl_sec
-
Срок действия cookie в секундах, если session_affinity равен GENERATED_COOKIE. Если значение равно 0, cookie не сохраняется и действует только до конца сеанса браузера (или эквивалента). Максимально допустимое значение TTL — один день.
При схеме балансировки INTERNAL это поле не используется.
auth_kind
- / обязательно
    Варианты:
  • machineaccount
  • serviceaccount
  • application
Тип используемых учетных данных.
backends
-
Список бэкэндов, обслуживаемых этим BackendService.
balancing_mode
-
    Варианты:
  • UTILIZATION
  • RATE
  • CONNECTION
Указывает режим балансировки для этого бэкэнда.
Для глобальной HTTP(S) или TCP/SSL балансировки по умолчанию используется UTILIZATION. Допустимые значения — UTILIZATION, RATE (для HTTP(S)) и CONNECTION (для TCP/SSL).
Не может быть использовано для внутренней балансировки.
capacity_scaler
-
Множитель, применяемый к максимальной пропускной способности группы (основанной на UTILIZATION, RATE или CONNECTION).
Значение по умолчанию — 1, что означает, что группа будет обслуживать до 100% своей конфигурированной пропускной способности (в зависимости от balancingMode). Значение 0 означает, что группа полностью выключена и не предоставляет 0% доступной емкости. Допустимый диапазон — [0.0, 1.0].
Не может быть использовано для внутренней балансировки.
description
-
Необязательное описание этого ресурса.
Укажите это свойство при создании ресурса.
group
-
Эта группа экземпляров определяет список экземпляров, которые обрабатывают трафик. Виртуальные машины-члены каждой группы экземпляров должны находиться в той же зоне, что и сама группа экземпляров.
Два бэкэнда в службе бэкэнда не могут использовать один и тот же ресурс группы экземпляров.
Когда BackendService имеет схему балансировки INTERNAL, группа экземпляров должна находиться в зоне в том же регионе, что и сам BackendService.
max_connections
-
Максимальное количество одновременных подключений для группы. Может использоваться с режимами балансировки CONNECTION или UTILIZATION.
Для режима CONNECTION необходимо установить либо maxConnections, либо maxConnectionsPerInstance.
Не может быть использовано для внутренней балансировки.
max_connections_per_instance
-
Максимальное количество одновременных подключений, которое может обрабатывать один экземпляр бэкэнда. Это используется для расчета емкости группы. Может использоваться в режимах балансировки CONNECTION или UTILIZATION.
Для режима CONNECTION необходимо установить либо maxConnections, либо maxConnectionsPerInstance.
Не может быть использовано для внутренней балансировки.
max_rate
-
Максимальное количество запросов в секунду (RPS) группы.
Может использоваться с режимами балансировки RATE или UTILIZATION, но требуется, если используется режим RATE. Для режима RATE необходимо установить либо maxRate, либо maxRatePerInstance.
Не может быть использовано для внутренней балансировки.
max_rate_per_instance
-
Максимальное количество запросов в секунду (RPS), которое может обрабатывать один экземпляр бэкэнда. Это используется для расчета емкости группы. Может использоваться в любом режиме балансировки. Для режима RATE необходимо установить либо maxRate, либо maxRatePerInstance.
Не может быть использовано для внутренней балансировки.
max_utilization
-
Используется, когда balancingMode равен UTILIZATION. Это отношение определяет целевое значение использования ЦП для группы. Значение по умолчанию — 0,8. Допустимый диапазон — [0,0, 1,0].
Не может быть использовано для внутренней балансировки.
cdn_policy
-
Настройка Cloud CDN для этого BackendService.
cache_key_policy
-
CacheKeyPolicy для этого CdnPolicy.
include_host
boolean
    Варианты:
  • no
  • yes
Если true, запросы к различным хостам будут кэшироваться отдельно.
include_protocol
boolean
    Варианты:
  • no
  • yes
Если true, запросы http и https будут кэшироваться отдельно.
include_query_string
boolean
    Варианты:
  • no
  • yes
Если true, параметры строки запроса включаются в ключ кэша в соответствии с query_string_whitelist и query_string_blacklist. Если ни то, ни другое не установлено, вся строка запроса будет включена.
Если false, строка запроса полностью исключается из ключа кэша.
query_string_blacklist
-
Имена параметров строки запроса, которые необходимо исключить из ключей кэша.
Все остальные параметры будут включены. Укажите либо query_string_whitelist, либо query_string_blacklist, но не оба.
'&' и '=' будут закодированы в проценты и не будут обрабатываться как разделители.
query_string_whitelist
-
Имена параметров строки запроса, которые необходимо включить в ключи кэша.
Все остальные параметры будут исключены. Укажите либо query_string_whitelist, либо query_string_blacklist, но не оба.
'&' и '=' будут закодированы в проценты и не будут обрабатываться как разделители.
connection_draining
-
Настройки для отключения соединения.
draining_timeout_sec
-
Время, в течение которого экземпляр будет отключен (не принимает новые подключения, но продолжает работу, чтобы завершить начатые).
description
-
Необязательное описание этого ресурса.
enable_cdn
boolean
    Варианты:
  • no
  • yes
Если true, включить Cloud CDN для этого BackendService.
При схеме балансировки INTERNAL это поле не используется.
health_checks
-
Список URL-адресов ресурсов HttpHealthCheck или HttpsHealthCheck для проверки работоспособности этого BackendService. В настоящее время можно указать не более одного средства проверки работоспособности, и средство проверки работоспособности обязательно.
Для внутренней балансировки вместо URL-адреса ресурса HealthCheck необходимо указать URL-адрес.
iap
-
добавлено в 2.7
Настройки для включения Cloud Identity Aware Proxy.
enabled
boolean
    Варианты:
  • no
  • yes
Включает IAP.
oauth2_client_id
-
OAuth2 Client ID для IAP.
oauth2_client_secret
-
OAuth2 Client Secret для IAP.
oauth2_client_secret_sha256
-
OAuth2 Client Secret SHA-256 для IAP.
load_balancing_scheme
-
добавлено в 2.7
    Варианты:
  • INTERNAL
  • EXTERNAL
Указывает, будет ли служба бэкэнда использоваться с внутренней или внешней балансировкой. Служба бэкэнда, созданная для одного типа балансировки, не может использоваться с другим типом.
имя
-
Имя ресурса. Предоставляется клиентом при создании ресурса. Имя должно быть длиной от 1 до 63 символов и соответствовать RFC1035. То есть, длина имени должна быть от 1 до 63 символов и соответствовать регулярному выражению `[a-z]([-a-z0-9]*[a-z0-9])?`, что означает, что первый символ должен быть строчной буквой, а все последующие символы должны быть тире, строчной буквой или цифрой, за исключением последнего символа, который не может быть тире.
port_name
-
Имя порта бэкенда. То же самое имя должно присутствовать в группах экземпляров, на которые ссылается эта служба. Требуется, когда схема балансировки нагрузки — EXTERNAL.
Когда схема балансировки — INTERNAL, это поле не используется.
project
-
По умолчанию:
null
Проект Google Cloud Platform, который необходимо использовать.
protocol
-
    Варианты:
  • HTTP
  • HTTPS
  • TCP
  • SSL
Протокол, который использует этот BackendService для связи с бэкендами.
Возможные значения — HTTP, HTTPS, TCP и SSL. По умолчанию используется HTTP.
Для внутренней балансировки нагрузки возможные значения — TCP и UDP, по умолчанию используется TCP.
region
-
Регион, в котором находится региональная служба бэкенда.
Это поле не применимо к глобальным службам бэкенда.
scopes
-
Массив используемых областей.
service_account_email
-
Необязательный адрес электронной почты учетной записи службы, если выбран machineaccount, и пользователь не хочет использовать адрес по умолчанию.
service_account_file
-
Путь к файлу JSON учетной записи службы, если в качестве типа выбрана serviceaccount.
session_affinity
-
    Варианты:
  • NONE
  • CLIENT_IP
  • GENERATED_COOKIE
  • CLIENT_IP_PROTO
  • CLIENT_IP_PORT_PROTO
Тип используемой склейки сеансов. По умолчанию — NONE.
Когда схема балансировки — EXTERNAL, может быть NONE, CLIENT_IP или GENERATED_COOKIE.
Когда схема балансировки — INTERNAL, может быть NONE, CLIENT_IP, CLIENT_IP_PROTO или CLIENT_IP_PORT_PROTO.
Если протокол — UDP, это поле не используется.
state
-
    Варианты:
  • present ←
  • absent
Указывает, должен ли данный объект существовать в GCP
timeout_sec
-
Сколько секунд ждать бэкенд, прежде чем считать запрос неудачным. По умолчанию — 30 секунд. Допустимый диапазон — [1, 86400].

псевдонимы: timeout_seconds

Примечания

Примечание

  • Для аутентификации можно установить 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 instance group
  gcp_compute_instance_group:
      name: "instancegroup-backendservice"
      zone: us-central1-a
      project: "{{ gcp_project }}"
      auth_kind: "{{ gcp_cred_kind }}"
      service_account_file: "{{ gcp_cred_file }}"
      state: present
  register: instancegroup

- name: create a http health check
  gcp_compute_http_health_check:
      name: "httphealthcheck-backendservice"
      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 }}"
      state: present
  register: healthcheck

- name: create a backend service
  gcp_compute_backend_service:
      name: "test_object"
      backends:
      - group: "{{ instancegroup }}"
      health_checks:
      - "{{ healthcheck.selfLink }}"
      enable_cdn: true
      project: "test_project"
      auth_kind: "service_account"
      service_account_file: "/tmp/auth.pem"
      state: present

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

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

Ключ Возвращаемое значение Описание
affinity_cookie_ttl_sec
целое число
успех
Срок действия cookie в секундах, если session_affinity — GENERATED_COOKIE. Если установлено значение 0, cookie не сохраняется и действует только до конца сессии браузера (или эквивалента). Максимально допустимое значение TTL — один день.
При использовании схемы балансировки INTERNAL это поле не используется.

backends
сложное
успех
Список бэкендов, обслуживающих этот BackendService.

balancing_mode
строка
успех
Указывает режим балансировки для этого бэкенда.
Для глобальной HTTP(S) или TCP/SSL балансировки по умолчанию используется UTILIZATION. Допустимые значения: UTILIZATION, RATE (для HTTP(S)) и CONNECTION (для TCP/SSL).
Не может использоваться для внутренней балансировки.

capacity_scaler
строка
успех
Множитель, применяемый к максимальной пропускной способности группы (на основе UTILIZATION, RATE или CONNECTION).
Значение по умолчанию — 1, что означает, что группа будет обслуживать до 100% своей конфигурированной пропускной способности (в зависимости от balancingMode). Значение 0 означает, что группа полностью отключена, предлагая 0% своей доступной пропускной способности. Допустимый диапазон — [0.0, 1.0].
Не может использоваться для внутренней балансировки.

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

group
словарь
успех
Эта группа экземпляров определяет список экземпляров, которые обрабатывают трафик. Виртуальные машины-члены из каждой группы экземпляров должны находиться в той же зоне, что и сама группа экземпляров.
Два бэкенда в службе бэкенда не могут использовать один и тот же ресурс группы экземпляров.
Когда у BackendService есть схема балансировки INTERNAL, группа экземпляров должна находиться в зоне в том же регионе, что и BackendService.

max_connections
целое число
успех
Максимальное количество одновременных подключений для группы. Может использоваться с режимами балансировки CONNECTION или UTILIZATION.
Для режима CONNECTION необходимо установить либо maxConnections, либо maxConnectionsPerInstance.
Не может использоваться для внутренней балансировки.

max_connections_per_instance
целое число
успех
Максимальное количество одновременных подключений, которые может обрабатывать один бэкенд-экземпляр. Это используется для расчета емкости группы. Может использоваться в режимах балансировки CONNECTION или UTILIZATION.
Для режима CONNECTION необходимо установить либо maxConnections, либо maxConnectionsPerInstance.
Не может использоваться для внутренней балансировки.

max_rate
целое число
успех
Максимальное количество запросов в секунду (RPS) группы.
Может использоваться с режимами балансировки RATE или UTILIZATION, но требуется при использовании режима RATE. Для режима RATE необходимо установить либо maxRate, либо maxRatePerInstance.
Не может использоваться для внутренней балансировки.

max_rate_per_instance
строка
успех
Максимальное количество запросов в секунду (RPS), которое может обрабатывать один бэкенд-экземпляр. Это используется для расчета емкости группы. Может использоваться в любом режиме балансировки. Для режима RATE необходимо установить либо maxRate, либо maxRatePerInstance.
Не может использоваться для внутренней балансировки.

max_utilization
строка
успех
Используется, когда balancingMode равен UTILIZATION. Это отношение определяет целевое значение использования ЦП для группы. Значение по умолчанию — 0,8. Допустимый диапазон — [0,0, 1,0].
Не может использоваться для внутренней балансировки.

cdn_policy
сложное
успех
Настройка Cloud CDN для данного BackendService.

cache_key_policy
сложное
успех
CacheKeyPolicy для этого CdnPolicy.

include_host
булево
успех
Если true, запросы к различным хостам будут кэшироваться отдельно.

include_protocol
булево
успех
Если true, запросы http и https будут кэшироваться отдельно.

include_query_string
булево
успех
Если true, параметры строки запроса включаются в ключ кэша в соответствии с query_string_whitelist и query_string_blacklist. Если ни то, ни другое не установлено, вся строка запроса будет включена.
Если false, строка запроса будет полностью исключена из ключа кэша.

query_string_blacklist
список
успех
Имена параметров строки запроса, которые следует исключить из ключей кэша.
Все остальные параметры будут включены. Укажите либо query_string_whitelist, либо query_string_blacklist, но не оба.
'&' и '=' будут закодированы в процентах и не будут рассматриваться как разделители.

query_string_whitelist
список
успех
Имена параметров строки запроса, которые следует включить в ключи кэша.
Все остальные параметры будут исключены. Укажите либо query_string_whitelist, либо query_string_blacklist, но не оба.
'&' и '=' будут закодированы в процентах и не будут рассматриваться как разделители.

connection_draining
сложное
успех
Настройки для отключения соединения.

draining_timeout_sec
целое число
успех
Время, в течение которого экземпляр будет отключаться (не принимать новые подключения, но продолжать завершать начатые).

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

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

enable_cdn
булево
успех
Если true, Cloud CDN включен для этого BackendService.
При использовании схемы балансировки INTERNAL это поле не используется.

health_checks
список
успех
Список URL-адресов к ресурсам HttpHealthCheck или HttpsHealthCheck для проверки работоспособности этого BackendService. В настоящее время может быть указана только одна проверка работоспособности, и проверка работоспособности необходима.
Для внутренней балансировки вместо этого необходимо указать URL-адрес ресурса HealthCheck.

iap
сложное
успех
Настройки для включения Cloud Identity Aware Proxy.

enabled
булево
успех
Включает IAP.

oauth2_client_id
строка
успех
OAuth2 Client ID для IAP.

oauth2_client_secret
строка
успех
OAuth2 Client Secret для IAP.

oauth2_client_secret_sha256
строка
успех
OAuth2 Client Secret SHA-256 для IAP.

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

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

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

port_name
строка
success
Имя порта бэкенда. Это же имя должно присутствовать в группах экземпляров, на которые ссылается эта служба. Требуется, когда схема балансировки нагрузки — EXTERNAL.
Когда схема балансировки — INTERNAL, это поле не используется.

protocol
строка
success
Протокол, используемый BackendService для связи с бэкендами.
Возможные значения: HTTP, HTTPS, TCP и SSL. По умолчанию — HTTP.
Для внутренней балансировки нагрузки возможные значения — TCP и UDP, по умолчанию — TCP.

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

session_affinity
строка
success
Тип сродства сеансов. По умолчанию — NONE.
При схеме балансировки EXTERNAL может быть NONE, CLIENT_IP или GENERATED_COOKIE.
При схеме балансировки INTERNAL может быть NONE, CLIENT_IP, CLIENT_IP_PROTO или CLIENT_IP_PORT_PROTO.
Если протокол UDP, это поле не используется.

timeout_sec
целое число
success
Количество секунд ожидания бэкенда перед признанием запроса неудачным. По умолчанию — 30 секунд. Допустимый диапазон — [1, 86400].



Статус

  • Данный модуль не гарантирует обратную совместимость интерфейса. [превью]
  • Данный модуль поддерживается сообществом 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_backend_service_module.html

Spec-Zone.ru

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