Spec-Zone.ru › Ansible 2.10

google.cloud.gcp_compute_url_map_info – Сбор информации о GCP UrlMap

Примечание

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

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

Для использования в плейбуке укажите: google.cloud.gcp_compute_url_map_info.

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

Обзор

  • Сбор информации о GCP UrlMap

Требования

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

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

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
auth_kind
строка / обязательный
    Варианты:
  • application
  • machineaccount
  • serviceaccount
Тип используемых учетных данных.
env_type
строка
Указывает, в какой среде Ansible выполняется этот модуль.
Не устанавливайте это значение, если вы не знаете, что делаете.
Это изменяет только строку User Agent для любых запросов к API.
filters
список / элементы=строка
Список пар значений фильтров. Доступные фильтры перечислены здесь https://cloud.google.com/sdk/gcloud/reference/topic/filters.
Каждый дополнительный фильтр в списке будет добавлен как условие И (filter1 и filter2).
project
строка
Проект Google Cloud Platform, который следует использовать.
scopes
список / элементы=строка
Массив используемых областей.
service_account_contents
jsonarg
Содержимое файла JSON учетной записи службы, либо в виде словаря, либо как строка JSON, которая его представляет.
service_account_email
строка
Необязательный адрес электронной почты учетной записи службы, если выбран machineaccount, и пользователь не хочет использовать адрес по умолчанию.
service_account_file
путь
Путь к файлу JSON учетной записи службы, если в качестве типа выбран serviceaccount.

Примечания

Примечание

  • для аутентификации можно установить 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: get info on an URL map
  gcp_compute_url_map_info:
    filters:
    - name = test_object
    project: test_project
    auth_kind: serviceaccount
    service_account_file: "/tmp/auth.pem"

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

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

Ключ Возвращаемое значение Описание
resources
complex
всегда
Список ресурсов

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

defaultRouteAction
complex
успех
defaultRouteAction вступает в силу, когда ни одно из правил hostRules не соответствует запросу. Load Balancer выполняет расширенные действия маршрутизации, такие как изменение URL, преобразование заголовков и т. д., прежде чем перенаправить запрос на выбранный бэкенд.
Если defaultRouteAction указывает какие-либо weightedBackendServices, то defaultService не должен быть задан. И наоборот, если задан defaultService, defaultRouteAction не может содержать weightedBackendServices.
Должно быть задано либо defaultRouteAction, либо defaultUrlRedirect.

corsPolicy
complex
успех
Спецификация для разрешения кросс-доменных запросов со стороны клиента. См. [Рекомендацию W3C по кросс-доменному обмену ресурсами](https://www.w3.org/TR/cors/).

allowCredentials
boolean
успех
В ответ на предварительный запрос, установка этого значения в true указывает, что фактический запрос может содержать учетные данные пользователя.
Это соответствует заголовку Access-Control-Allow-Credentials.

allowHeaders
list / elements=string
успех
Указывает содержимое заголовка Access-Control-Allow-Headers.

allowMethods
list / elements=string
успех
Указывает содержимое заголовка Access-Control-Allow-Methods.

allowOriginRegexes
list / elements=string
успех
Указывает шаблоны регулярных выражений, которые соответствуют разрешенным источникам. Для синтаксиса регулярных выражений см. en.cppreference.com/w/cpp/regex/ecmascript. Источник разрешен, если он соответствует элементу в allowOrigins или allowOriginRegexes.

allowOrigins
list / elements=string
успех
Указывает список источников, которым будет разрешено выполнять запросы CORS.
Источник разрешен, если он соответствует элементу в allowOrigins или allowOriginRegexes.

disabled
boolean
успех
Если true, указывает, что политика CORS отключена. По умолчанию false, что означает, что политика CORS активна.

exposeHeaders
list / elements=string
успех
Указывает содержимое заголовка Access-Control-Expose-Headers.

maxAge
integer
успех
Указывает, как долго результаты предварительного запроса могут кешироваться в секундах.
Это соответствует заголовку Access-Control-Max-Age.

faultInjectionPolicy
complex
успех
Спецификация для введения отказоустойчивости в трафик для проверки устойчивости клиентов к сбоям бэкенд-служб.
В рамках отказоустойчивости, при отправке клиентами запросов на бэкенд-службу, Load Balancer может вводить задержки в процент запросов, перед отправкой их бэкенд-службе. Аналогично, запросы от клиентов могут быть прерваны Load Balancer для определенного процента запросов.
timeout и retryPolicy будут игнорироваться клиентами, у которых настроена faultInjectionPolicy.

abort
complex
успех
Спецификация для прерывания клиентских запросов в рамках отказоустойчивости.

httpStatus
integer
успех
Код HTTP-статуса, используемый для прерывания запроса.
Значение должно быть в диапазоне от 200 до 599 включительно.

percentage
string
успех
Процент трафика (соединений/операций/запросов), который будет прерван в рамках отказоустойчивости.
Значение должно быть в диапазоне от 0.0 до 100.0 включительно.

delay
complex
успех
Спецификация для задержки клиентских запросов в рамках отказоустойчивости перед отправкой на бэкенд-службу.

fixedDelay
complex
успех
Указывает значение фиксированного интервала задержки.

nanos
integer
успех
Продолжительность, представляющая долю секунды с разрешением в наносекунды. Продолжительности меньше секунды представляются с полем 0 секунд и положительным полем nanos. Должно быть в диапазоне от 0 до 999 999 999 включительно.

seconds
string
успех
Продолжительность с разрешением в секунды. Должно быть в диапазоне от 0 до 315 576 000 000 включительно.
Примечание: эти границы вычислены из: 60 сек/мин * 60 мин/час * 24 час/день * 365,25 дней/год * 10000 лет.

percentage
string
успех
Процент трафика (соединений/операций/запросов), для которого будет введена задержка в рамках отказоустойчивости.
Значение должно быть в диапазоне от 0.0 до 100.0 включительно.

requestMirrorPolicy
complex
успех
Указывает политику того, как запросы, предназначенные для бэкендов маршрута, дублируются на отдельную зеркальную бэкенд-службу.
Load Balancer не ожидает ответов от зеркальной службы. Перед отправкой трафика на зеркальную службу к заголовку host/authority добавляется суффикс -shadow.

backendService
dictionary
успех
Полный или частичный URL ресурса BackendService, который будет дублироваться.

retryPolicy
complex
успех
Указывает политику повторных попыток, связанную с этим маршрутом.

numRetries
integer
успех
Указывает разрешенное количество повторных попыток. Это число должно быть > 0. Если не указано, по умолчанию равно 1.

perTryTimeout
complex
успех
Указывает ненулевой тайм-аут на попытку повторной отправки.
Если не указано, будет использоваться тайм-аут, установленный в HttpRouteAction. Если тайм-аут в HttpRouteAction не установлен, будет использоваться максимальный тайм-аут среди всех бэкенд-служб, связанных с маршрутом.

nanos
integer
успех
Продолжительность, представляющая долю секунды с разрешением в наносекунды. Продолжительности меньше секунды представляются с полем 0 секунд и положительным полем nanos. Должно быть в диапазоне от 0 до 999 999 999 включительно.

seconds
string
успех
Продолжительность с разрешением в секунды. Должно быть в диапазоне от 0 до 315 576 000 000 включительно.
Примечание: эти границы вычислены из: 60 сек/мин * 60 мин/час * 24 час/день * 365,25 дней/год * 10000 лет.

retryConditions
list / elements=string
success
Указывает один или несколько условий, когда применяется данное правило повторной попытки. Допустимые значения: 5xx: балансировщик нагрузки попытается повторить попытку, если бэкенд-сервис ответит любым кодом ответа 5xx, или если бэкенд-сервис не ответит вовсе, например: отключения, сброс, таймаут чтения, отказ в подключении и отказ от потоков.
gateway-error: Аналогично 5xx, но применяется только к кодам ответа 502, 503 или 504.
connect-failure: Балансировщик нагрузки повторит попытку при ошибках подключения к бэкенд-сервисам, например, из-за таймаутов подключения.
retriable-4xx: Балансировщик нагрузки повторит попытку для исправленных кодов ответа 4xx.
В настоящее время поддерживается только одна исправленная ошибка — 409.
refused-stream: Балансировщик нагрузки повторит попытку, если бэкенд-сервис сбросит поток с кодом ошибки REFUSED_STREAM.
Этот тип сброса указывает на то, что повторение попытки безопасно.
cancelled: Балансировщик нагрузки повторит попытку, если код состояния gRPC в заголовке ответа установлен в cancelled deadline-exceeded: Балансировщик нагрузки повторит попытку, если код состояния gRPC в заголовке ответа установлен в deadline-exceeded resource-exhausted: Балансировщик нагрузки повторит попытку, если код состояния gRPC в заголовке ответа установлен в resource-exhausted unavailable: Балансировщик нагрузки повторит попытку, если код состояния gRPC в заголовке ответа установлен в unavailable.

timeout
complex
success
Устанавливает таймаут для выбранного маршрута. Таймаут вычисляется от момента полного обработки запроса (т. е. конца потока) до момента полной обработки ответа. Таймаут включает все повторные попытки.
Если не указано, используется наибольший таймаут среди всех бэкенд-сервисов, связанных с маршрутом.

nanos
integer
success
Продолжительность, представляющая собой дробь секунды с разрешением в наносекунды. Продолжительности, меньшие одной секунды, представлены значением поля «секунды» равным 0 и положительным значением поля «наносекунды». Должно быть от 0 до 999 999 999 включительно.

seconds
string
success
Продолжительность времени с разрешением в секунды. Должно быть от 0 до 315 576 000 000 включительно.
Примечание: эти границы вычислены из: 60 сек/мин * 60 мин/ч * 24 ч/сут * 365,25 дней/год * 10000 лет.

urlRewrite
complex
success
Спецификация для изменения URL запроса перед пересылкой его на соответствующий сервис.

hostRewrite
string
success
Перед пересылкой запроса на выбранный сервис заголовок хоста запроса заменяется содержимым hostRewrite.
Значение должно быть от 1 до 255 символов.

pathPrefixRewrite
string
success
Перед пересылкой запроса на выбранный бэкенд-сервис соответствующая часть пути запроса заменяется на pathPrefixRewrite.
Значение должно быть от 1 до 1024 символов.

weightedBackendServices
complex
success
Список взвешенных бэкенд-сервисов для отправки трафика при совпадении маршрута.
Веса определяют долю трафика, поступающего на соответствующий бэкенд-сервис.
Если весь трафик должен направляться на один бэкенд-сервис, должен быть один weightedBackendService с весом, отличным от 0.
После идентификации бэкенд-сервиса и перед пересылкой запроса на бэкенд-сервис применяются расширенные действия маршрутизации, такие как перенаправление URL и преобразования заголовков, в зависимости от дополнительных параметров, указанных в этом HttpRouteAction.

backendService
dictionary
success
Полный или частичный URL ресурса бэкенд-сервиса по умолчанию. Перед пересылкой запроса на backendService, балансировщик нагрузки применяет все соответствующие headerActions, указанные в рамках этого backendServiceWeight.

headerAction
complex
success
Указывает изменения в заголовках запроса и ответа, которые должны применяться для выбранного backendService.
headerAction, указанные здесь, применяются до headerAction в охватывающем HttpRouteRule, PathMatcher и UrlMap.

requestHeadersToAdd
complex
success
Заголовки, которые нужно добавить к соответствующему запросу перед пересылкой его на backendService.

headerName
string
success
Имя добавляемого заголовка.

headerValue
string
success
Значение добавляемого заголовка.

replace
boolean
success
Если false, headerValue добавляется к любым значениям, которые уже существуют для заголовка.
Если true, headerValue устанавливается для заголовка, отбрасывая любые значения, которые были установлены для этого заголовка.

requestHeadersToRemove
list / elements=string
success
Список имён заголовков для заголовков, которые нужно удалить из запроса перед пересылкой его на backendService.

responseHeadersToAdd
complex
success
Заголовки, которые нужно добавить в ответ перед отправкой его обратно клиенту.

headerName
string
success
Имя добавляемого заголовка.

headerValue
string
success
Значение добавляемого заголовка.

replace
boolean
success
Если false, headerValue добавляется к любым значениям, которые уже существуют для заголовка.
Если true, headerValue устанавливается для заголовка, отбрасывая любые значения, которые были установлены для этого заголовка.

responseHeadersToRemove
list / elements=string
success
Список имён заголовков для заголовков, которые нужно удалить из ответа перед отправкой его обратно клиенту.

weight
integer
success
Указывает долю трафика, отправляемого на backendService, вычисленную как weight / (сумма всех весов weightedBackendService в routeAction).
Выбор бэкенд-сервиса определяется только для нового трафика. После того, как запрос пользователя был направлен на backendService, последующие запросы будут отправлены на тот же backendService, как определено политикой affinity сеанса BackendService.
Значение должно быть от 0 до 1000.

defaultService
dictionary
success
Полный или частичный URL ресурса defaultService, на который направляется трафик, если ни один из hostRules не совпадает. Если дополнительно указан defaultRouteAction, расширенные действия маршрутизации, такие как перенаправление URL и т. д., применяются до отправки запроса на бэкенд. Однако, если указан defaultService, defaultRouteAction не может содержать weightedBackendServices. И наоборот, если routeAction содержит weightedBackendServices, service не должен быть указан. Только одно из defaultService, defaultUrlRedirect или defaultRouteAction.weightedBackendService должно быть установлено.

defaultUrlRedirect
complex
success
Если ни один из указанных hostRules не совпадает, запрос перенаправляется на URL, указанный в defaultUrlRedirect. Если указан defaultUrlRedirect, defaultService или defaultRouteAction не должны быть установлены.

hostRedirect
string
success
Хост, который будет использован в ответе перенаправления вместо того, который был предоставлен в запросе. Значение должно быть между 1 и 255 символами.

httpsRedirect
boolean
success
Если установлено в true, схема URL в запросе перенаправления устанавливается как https. Если установлено в false, схема URL перенаправленного запроса останется такой же, как и в запросе. Это свойство должно быть задано только для UrlMaps, используемых в TargetHttpProxys. Установка в true для TargetHttpsProxy запрещена. По умолчанию установлено в false.

pathRedirect
string
success
Путь, который будет использован в ответе перенаправления вместо пути, предоставленного в запросе. pathRedirect не может быть задан вместе с prefixRedirect. Укажите одно или ни одного из них. Если ни то, ни другое не указано, для перенаправления будет использоваться путь исходного запроса. Значение должно быть между 1 и 1024 символами.

prefixRedirect
string
success
Префикс, который заменяет prefixMatch, указанный в HttpRouteRuleMatch, сохраняя оставшуюся часть URL перед перенаправлением запроса.
prefixRedirect не может быть задан вместе с pathRedirect. Укажите одно или ни одного из них. Если ни то, ни другое не указано, для перенаправления будет использоваться путь исходного запроса. Значение должно быть между 1 и 1024 символами.

redirectResponseCode
string
success
Код HTTP-статуса, используемый для этого RedirectAction. Допустимые значения: * MOVED_PERMANENTLY_DEFAULT, которое является значением по умолчанию и соответствует 301.
* FOUND, которое соответствует 302.
* SEE_OTHER, которое соответствует 303.
* TEMPORARY_REDIRECT, которое соответствует 307. В этом случае метод запроса сохранится.
* PERMANENT_REDIRECT, которое соответствует 308. В этом случае метод запроса сохранится.

stripQuery
boolean
success
Если установлено в true, любая сопутствующая часть запроса исходного URL удаляется перед перенаправлением запроса. Если установлено в false, часть запроса исходного URL сохраняется. По умолчанию установлено в false.

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

fingerprint
string
success
Отпечаток ресурса. Хэш содержимого, хранящегося в этом объекте. Это поле используется для оптимистической блокировки.

headerAction
complex
success
Указывает изменения в заголовках запроса и ответа, которые должны быть применены для выбранного backendService. Заголовки headerAction, указанные здесь, применяются после headerAction, указанных в pathMatcher.

requestHeadersToAdd
complex
success
Заголовки, которые нужно добавить к соответствующему запросу перед передачей запроса backendService.

headerName
string
success
Имя заголовка.

headerValue
string
success
Значение заголовка для добавления.

replace
boolean
success
Если false, headerValue добавляется к любым существующим значениям заголовка. Если true, headerValue устанавливается для заголовка, отбрасывая любые ранее заданные значения для этого заголовка.

requestHeadersToRemove
list / elements=string
success
Список имён заголовков, которые необходимо удалить из запроса перед передачей его backendService.

responseHeadersToAdd
complex
success
Заголовки для добавления в ответ перед отправкой ответа клиенту.

headerName
string
success
Имя заголовка.

headerValue
string
success
Значение заголовка для добавления.

replace
boolean
success
Если false, headerValue добавляется к любым существующим значениям заголовка. Если true, headerValue устанавливается для заголовка, отбрасывая любые ранее заданные значения для этого заголовка.

responseHeadersToRemove
list / elements=string
success
Список имён заголовков, которые необходимо удалить из ответа перед отправкой его клиенту.

hostRules
complex
success
Список HostRules для использования с URL.

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

hosts
list / elements=string
success
Список шаблонов хостов для соответствия. Они должны быть допустимыми именами хостов, за исключением *, которое соответствует любой строке ([a-z0-9-.]*). В этом случае * должен быть первым символом и должен быть после него либо - или .

pathMatcher
string
success
Имя PathMatcher для соответствия части пути URL, если hostRule соответствует части хоста URL.

id
integer
success
Уникальный идентификатор ресурса.

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

pathMatchers
complex
success
Список именованных PathMatchers для использования с URL.

defaultRouteAction
complex
success
defaultRouteAction срабатывает, когда ни один из pathRules или routeRules не соответствует. Балансировщик нагрузки выполняет расширенные действия по маршрутизации, такие как переписывание URL, преобразование заголовков и т. д., прежде чем передать запрос выбранному бэкенду. Если defaultRouteAction указывает любые weightedBackendServices, defaultService не должен быть установлен.
И наоборот, если defaultService установлен, defaultRouteAction не может содержать weightedBackendServices.
Только одно из defaultRouteAction или defaultUrlRedirect должно быть установлено.

corsPolicy
complex
success
Спецификация для разрешения междоменных запросов со стороны клиента. См. [Рекомендацию W3C по междоменному обмену ресурсами](https://www.w3.org/TR/cors/).

allowCredentials
boolean
success
В ответ на предварительный запрос, установка в true указывает, что фактический запрос может включать учетные данные пользователя.
Это преобразуется в заголовок Access-Control-Allow-Credentials.

allowHeaders
list / elements=string
success
Указывает содержимое заголовка Access-Control-Allow-Headers.

allowMethods
list / elements=string
success
Указывает содержимое заголовка Access-Control-Allow-Methods.

allowOriginRegexes
list / elements=string
success
Указывает шаблоны регулярных выражений, соответствующие разрешенным источникам. Для грамматики регулярных выражений см. en.cppreference.com/w/cpp/regex/ecmascript. Источник разрешен, если он соответствует элементу в allowOrigins или элементу в allowOriginRegexes.

allowOrigins
list / elements=string
success
Указывает список источников, которым разрешено выполнять запросы CORS.
Источник разрешен, если он соответствует элементу в allowOrigins или элементу в allowOriginRegexes.

disabled
boolean
success
Если true, указывает, что политика CORS отключена. Значение по умолчанию — false, что означает, что политика CORS включена.

exposeHeaders
list / elements=string
success
Указывает содержимое заголовка Access-Control-Expose-Headers.

maxAge
integer
success
Указывает, как долго результаты запроса предварительной проверки можно кэшировать в секундах.
Это соответствует заголовку Access-Control-Max-Age.

faultInjectionPolicy
complex
success
Указывает параметры введения сбоев в трафик для проверки устойчивости клиентов к ошибкам службы бэкенда.
В рамках введения сбоев, когда клиенты отправляют запросы службе бэкенда, Loadbalancer может вводить задержки в процент запросов перед отправкой этих запросов службе бэкенда. Аналогично запросы от клиентов могут быть прерваны Loadbalancer для процента запросов.
timeout и retryPolicy будут проигнорированы клиентами, настроенными с faultInjectionPolicy.

abort
complex
success
Указывает, как прерываются запросы клиентов в рамках введения сбоев.

httpStatus
integer
success
Код HTTP-статуса, используемый для прерывания запроса.
Значение должно быть в диапазоне от 200 до 599 включительно.

percentage
string
success
Процент трафика (соединений/операций/запросов), который будет прерван в рамках введения сбоев.
Значение должно быть в диапазоне от 0,0 до 100,0 включительно.

delay
complex
success
Указывает, как задерживаются запросы клиентов в рамках введения сбоев перед отправкой их службе бэкенда.

fixedDelay
complex
success
Указывает значение интервала фиксированной задержки.

nanos
integer
success
Промежуток времени, являющийся дробью секунды с разрешением в наносекунды. Длительности меньше одной секунды представляются значением 0 секунд и положительным значением nanos. Должно быть в диапазоне от 0 до 999 999 999 включительно.

seconds
string
success
Промежуток времени с разрешением в секунду. Должно быть в диапазоне от 0 до 315 576 000 000 включительно.
Примечание: эти границы вычислены из: 60 сек/мин * 60 мин/час * 24 час/сутки * 365,25 дней/год * 10000 лет.

percentage
string
success
Процент трафика (соединений/операций/запросов), для которых будет введена задержка в рамках введения сбоев.
Значение должно быть в диапазоне от 0,0 до 100,0 включительно.

requestMirrorPolicy
complex
success
Указывает политику того, как запросы, предназначенные для бэкендов маршрута, дублируются в отдельной службе бэкенда-копии.
Loadbalancer не ожидает ответов от службы-копии. Перед отправкой трафика в службу-копию к заголовку host/authority добавляется суффикс -shadow.

backendService
dictionary
success
Полный или частичный URL ресурса BackendService, который будет дублироваться.

retryPolicy
complex
success
Указывает политику повторных попыток, связанную с этим маршрутом.

numRetries
integer
success
Указывает разрешенное количество повторных попыток. Это число должно быть > 0. Если не указано, по умолчанию равно 1.

perTryTimeout
complex
success
Указывает ненулевой таймаут на каждую попытку повторной отправки.
Если не указано, будет использоваться таймаут, установленный в HttpRouteAction. Если таймаут в HttpRouteAction не установлен, будет использоваться максимальный таймаут среди всех служб бэкенда, связанных с маршрутом.

nanos
integer
success
Промежуток времени, являющийся дробью секунды с разрешением в наносекунды. Длительности меньше одной секунды представляются значением 0 секунд и положительным значением nanos. Должно быть в диапазоне от 0 до 999 999 999 включительно.

seconds
string
success
Промежуток времени с разрешением в секунду. Должно быть в диапазоне от 0 до 315 576 000 000 включительно.
Примечание: эти границы вычислены из: 60 сек/мин * 60 мин/час * 24 час/сутки * 365,25 дней/год * 10000 лет.

retryConditions
list / elements=string
success
Указывает одно или несколько условий, когда применяется эта политика повторных попыток. Допустимые значения:
5xx: Loadbalancer попытается повторить попытку, если служба бэкенда ответит с кодом ответа 5xx, или если служба бэкенда вообще не ответит, например: разъединения, сбросы, таймауты чтения, ошибки подключения и отказ потоков.
gateway-error: Аналогично 5xx, но применяется только к кодам ответов 502, 503 или 504.
connect-failure: Loadbalancer повторит попытку при ошибках подключения к службам бэкенда, например, из-за таймаутов подключения.
retriable-4xx: Loadbalancer повторит попытку для исправленных кодов ответов 4xx.
В настоящее время единственная поддерживаемая ошибка для повторных попыток — 409.
refused-stream: Loadbalancer повторит попытку, если служба бэкенда сбросит поток с кодом ошибки REFUSED_STREAM.
Этот тип сброса указывает, что повторная попытка безопасна.
cancelled: Loadbalancer повторит попытку, если код состояния gRPC в заголовке ответа установлен на cancelled deadline-exceeded: Loadbalancer повторит попытку, если код состояния gRPC в заголовке ответа установлен на deadline-exceeded resource-exhausted: Loadbalancer повторит попытку, если код состояния gRPC в заголовке ответа установлен на resource-exhausted unavailable: Loadbalancer повторит попытку, если код состояния gRPC в заголовке ответа установлен на unavailable.

timeout
complex
success
Указывает таймаут для выбранного маршрута. Таймаут рассчитывается с момента полного обработки запроса (т.е. окончания потока) до момента полной обработки ответа. Таймаут включает все повторные попытки.
Если не указано, используется наибольший таймаут среди всех бэкенд-сервисов, связанных с маршрутом.

nanos
integer
success
Промежуток времени, являющийся дробной частью секунды с разрешением в наносекунды. Продолжительности меньше одной секунды представляются значением 0 для секунд и положительным значением для наносекунд. Должно быть от 0 до 999 999 999 включительно.

seconds
string
success
Промежуток времени с разрешением в секунды. Должно быть от 0 до 315 576 000 000 включительно.
Примечание: эти границы вычислены из: 60 сек/мин * 60 мин/ч * 24 ч/сут * 365,25 сут/год * 10000 лет .

urlRewrite
complex
success
Спецификация для изменения URL запроса перед пересылкой запроса на соответствующий сервис.

hostRewrite
string
success
Перед пересылкой запроса выбранному сервису заголовок хоста запроса заменяется содержимым hostRewrite.
Значение должно быть между 1 и 255 символами.

pathPrefixRewrite
string
success
Перед пересылкой запроса на выбранный бэкенд-сервис соответствующая часть пути запроса заменяется на pathPrefixRewrite.
Значение должно быть между 1 и 1024 символами.

weightedBackendServices
complex
success
Список весовых бэкенд-сервисов для отправки трафика при совпадении маршрута.
Веса определяют долю трафика, направляемого на соответствующий бэкенд-сервис.
Если весь трафик должен идти на один бэкенд-сервис, должен быть один weightedBackendService с весом, отличным от 0.
После определения backendService и перед пересылкой запроса на бэкенд-сервис применяются дополнительные действия маршрутизации, такие как перенаправление URL и преобразования заголовков, в зависимости от дополнительных настроек, указанных в HttpRouteAction.

backendService
dictionary
success
Полный или частичный URL ресурса BackendService по умолчанию. Перед пересылкой запроса на backendService балансировщик приложений применяет все соответствующие headerActions, указанные как часть этого backendServiceWeight.

headerAction
complex
success
Указывает изменения в заголовках запроса и ответа, которые необходимо применить для выбранного backendService.
headerAction, указанный здесь, применяется до headerAction во включённых HttpRouteRule, PathMatcher и UrlMap.

requestHeadersToAdd
complex
success
Заголовки, которые необходимо добавить к соответствующему запросу перед пересылкой запроса на backendService.

headerName
string
success
Имя заголовка для добавления.

headerValue
string
success
Значение заголовка для добавления.

replace
boolean
success
Если false, headerValue добавляется к существующим значениям для заголовка.
Если true, headerValue устанавливается для заголовка, отбрасывая любые ранее установленные значения для этого заголовка.

requestHeadersToRemove
list / elements=string
success
Список имён заголовков для удаления из запроса перед пересылкой запроса на backendService.

responseHeadersToAdd
complex
success
Заголовки для добавления в ответ перед отправкой ответа клиенту.

headerName
string
success
Имя заголовка для добавления.

headerValue
string
success
Значение заголовка для добавления.

replace
boolean
success
Если false, headerValue добавляется к существующим значениям для заголовка.
Если true, headerValue устанавливается для заголовка, отбрасывая любые ранее установленные значения для этого заголовка.

responseHeadersToRemove
list / elements=string
success
Список имён заголовков для удаления из ответа перед отправкой ответа клиенту.

weight
integer
success
Указывает долю трафика, отправляемого на backendService, вычисляется как weight / (сумма весов всех weightedBackendService в routeAction).
Выбор бэкенд-сервиса определяется только для нового трафика. После того, как запрос пользователя был направлен на backendService, последующие запросы будут отправляться на тот же backendService, как определено политикой аффинитирования сеанса BackendService.
Значение должно быть между 0 и 1000.

defaultService
dictionary
success
Полный или частичный URL ресурса BackendService по умолчанию. Он будет использоваться, если ни одно из pathRules или routeRules, определённых этим PathMatcher, не совпадёт. Например, следующие являются допустимыми URL для ресурса BackendService: - https://www.googleapis.com/compute/v1/projects/project/global/backendServices/backendService - compute/v1/projects/project/global/backendServices/backendService - global/backendServices/backendService Если дополнительно указан defaultRouteAction, дополнительные действия маршрутизации, такие как перенаправление URL, применяются до отправки запроса на бэкенд. Однако, если указан defaultService, defaultRouteAction не может содержать weightedBackendServices. Напротив, если defaultRouteAction содержит weightedBackendServices, defaultService не должен быть указан.
Только один из defaultService, defaultUrlRedirect или defaultRouteAction.weightedBackendService должен быть задан. Для авторизации требуется один или несколько следующих разрешений Google IAM на указанный ресурс defaultService: - compute.backendBuckets.use - compute.backendServices.use .

defaultUrlRedirect
complex
success
Когда ни один из указанных hostRules не совпадает, запрос перенаправляется на URL, указанный в defaultUrlRedirect. Если defaultUrlRedirect задан, defaultService или defaultRouteAction не должны быть заданы.

hostRedirect
string
success
Хост, который будет использован в ответе перенаправления вместо хоста, предоставленного в запросе. Значение должно быть между 1 и 255 символами.

httpsRedirect
boolean
success
Если установлено в значение true, схема URL в запросе перенаправления устанавливается в https. Если установлено в значение false, схема URL перенаправляемого запроса остаётся такой же, как и в исходном запросе. Это свойство должно быть установлено только для UrlMaps, используемых в TargetHttpProxys. Установка его в значение true для TargetHttpsProxy запрещена. По умолчанию установлено в значение false.

pathRedirect
string
success
Путь, который будет использован в ответе перенаправления вместо пути, предоставленного в запросе. pathRedirect не может быть указан вместе с prefixRedirect. Укажите только один или ни одного. Если ни один не указан, путь исходного запроса будет использован для перенаправления. Значение должно быть между 1 и 1024 символами.

prefixRedirect
string
success
Префикс, который заменяет префикс prefixMatch, указанный в HttpRouteRuleMatch, сохраняя оставшуюся часть URL перед перенаправлением запроса.
prefixRedirect не может быть указан вместе с pathRedirect. Укажите только один или ни одного. Если ни один не указан, путь исходного запроса будет использован для перенаправления. Значение должно быть между 1 и 1024 символами.

redirectResponseCode
string
success
Код HTTP-статуса, который нужно использовать для этого RedirectAction. Доступные значения: * MOVED_PERMANENTLY_DEFAULT (по умолчанию), соответствует 301.
* FOUND, соответствует 302.
* SEE_OTHER, соответствует 303.
* TEMPORARY_REDIRECT, соответствует 307. В этом случае метод запроса сохраняется.
* PERMANENT_REDIRECT, соответствует 308. В этом случае метод запроса сохраняется.

stripQuery
boolean
success
Если установлено в значение true, любая часть запроса в исходном URL удаляется перед перенаправлением запроса. Если установлено в значение false, часть запроса исходного URL сохраняется.

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

headerAction
complex
success
Указывает изменения в заголовках запроса и ответа, которые должны быть применены для выбранной службы backendService. Заголовки HeaderAction, указанные здесь, применяются после HeaderAction, соответствующего HttpRouteRule, и до HeaderAction в UrlMap.

requestHeadersToAdd
complex
success
Заголовки, которые нужно добавить к сопоставленному запросу перед пересылкой запроса backendService.

headerName
string
success
Имя заголовка.

headerValue
string
success
Значение заголовка для добавления.

replace
boolean
success
Если false, headerValue добавляется к любым существующим значениям заголовка. Если true, headerValue устанавливается для заголовка, отбрасывая любые предыдущие значения этого заголовка.

requestHeadersToRemove
list / elements=string
success
Список имён заголовков, которые нужно удалить из запроса перед пересылкой его backendService.

responseHeadersToAdd
complex
success
Заголовки, которые нужно добавить в ответ перед отправкой ответа клиенту.

headerName
string
success
Имя заголовка.

headerValue
string
success
Значение заголовка для добавления.

replace
boolean
success
Если false, headerValue добавляется к любым существующим значениям заголовка. Если true, headerValue устанавливается для заголовка, отбрасывая любые предыдущие значения этого заголовка.

responseHeadersToRemove
list / elements=string
success
Список имён заголовков, которые нужно удалить из ответа перед отправкой его клиенту.

name
string
success
Имя, по которому эта PathMatcher ссылается на HostRule.

pathRules
complex
success
Список правил путей. Используйте этот список вместо routeRules, когда требуется маршрутизация на основе простого сопоставления путей. Порядок, в котором указаны правила путей, не имеет значения. Сопоставление всегда выполняется по принципу "самый длинный путь". Например: pathRule с путём /a/b/c/* будет совпадать раньше /a/b/* независимо от порядка, в котором эти пути появляются в списке. В рамках данной pathMatcher должен быть установлен только один из pathRules или routeRules.

paths
list / elements=string
success
Список шаблонов путей для сопоставления. Каждый должен начинаться с /, и символ * допускается только в конце после /. Строка, переданная в path matcher, не включает текст после первого ? или #, и эти символы запрещены здесь.

routeAction
complex
success
В ответ на совпадающий путь балансировщик нагрузки выполняет расширенные действия маршрутизации, такие как изменение URL, преобразование заголовков и т. д., перед пересылкой запроса выбранному бэкенду. Если routeAction указывает какие-либо weightedBackendServices, служба не должна быть установлена. И наоборот, если service установлена, routeAction не может содержать weightedBackendServices. Должен быть установлен только один из routeAction или urlRedirect.

corsPolicy
complex
success
Спецификация для разрешения кросс-доменных запросов со стороны клиента. См. рекомендацию W3C по кросс-доменному обмену ресурсами.

allowCredentials
boolean
success
В ответ на предварительный запрос, установка в значение true указывает, что фактический запрос может включать учетные данные пользователя. Это переводится в заголовок Access-Control-Allow-Credentials. По умолчанию false.

allowHeaders
list / elements=string
success
Указывает содержимое заголовка Access-Control-Allow-Headers.

allowMethods
list / elements=string
success
Указывает содержимое заголовка Access-Control-Allow-Methods.

allowOriginRegexes
list / elements=string
success
Указывает шаблоны регулярных выражений, которые соответствуют разрешенным источникам. Для грамматики регулярных выражений см. en.cppreference.com/w/cpp/regex/ecmascript. Источник разрешен, если он соответствует либо allow_origins, либо allow_origin_regex.

allowOrigins
list / elements=string
success
Указывает список источников, которым разрешено выполнять запросы CORS. Источник разрешен, если он соответствует либо allow_origins, либо allow_origin_regex.

disabled
boolean
success
Если true, указывает, что политика CORS отключена.

exposeHeaders
list / elements=string
success
Указывает содержимое заголовка Access-Control-Expose-Headers.

maxAge
integer
success
Указывает, как долго результаты запроса префлайта могут храниться в кэше. Это соответствует содержимому заголовка Access-Control-Max-Age.

faultInjectionPolicy
complex
success
Спецификация для внедрения сбоев в трафик для проверки устойчивости клиентов к отказам сервера back-end. В рамках внедрения сбоев, когда клиенты отправляют запросы на бэкенд-сервис, задержки могут быть добавлены балансировщиком нагрузки для определенного процента запросов до отправки этих запросов на бэкенд-сервис. Аналогичным образом, запросы от клиентов могут быть прерваны балансировщиком нагрузки для определенного процента запросов. Параметры timeout и retry_policy будут проигнорированы клиентами, настроенными с fault_injection_policy.

abort
complex
success
Спецификация для прерывания клиентских запросов в рамках внедрения сбоев.

httpStatus
integer
success
Код HTTP-статуса, используемый для прерывания запроса. Значение должно быть в диапазоне от 200 до 599 включительно.

percentage
string
success
Процент трафика (соединений/операций/запросов), который будет прерван в рамках внедрения сбоев. Значение должно быть в диапазоне от 0,0 до 100,0 включительно.

delay
complex
success
Спецификация для задержки клиентских запросов в рамках внедрения сбоев перед отправкой на бэкенд-сервис.

fixedDelay
complex
success
Указывает значение интервала фиксированной задержки.

nanos
integer
success
Продолжительность времени, которая является дробью секунды с разрешением в наносекунды. Продолжительности меньше одной секунды представлены с полем `seconds`, равным 0, и положительным полем `nanos`. Должно быть от 0 до 999 999 999 включительно.

seconds
string
success
Продолжительность времени с разрешением в секунды. Должно быть от 0 до 315 576 000 000 включительно.

percentage
string
success
Процент трафика (соединений/операций/запросов), для которого будет введена задержка в рамках внедрения сбоев. Значение должно быть в диапазоне от 0,0 до 100,0 включительно.

requestMirrorPolicy
complex
success
Указывает политику, определяющую, как запросы, предназначенные для бэкендов маршрута, дублируются на отдельный сервисный бэкенд с отражением. Балансировщик нагрузки не ждет ответов от сервиса отражения. Перед отправкой трафика сервису отражения в заголовок хоста / authority добавляется приставка -shadow.

backendService
dictionary
success
Ресурс BackendService, который отражается.

retryPolicy
complex
success
Указывает политику повторных попыток, связанную с этим маршрутом.

numRetries
integer
success
Указывает разрешенное количество повторных попыток. Это число должно быть > 0.

perTryTimeout
complex
success
Указывает ненулевой таймаут за попытку повтора.

nanos
integer
success
Продолжительность времени, которая является дробью секунды с разрешением в наносекунды. Продолжительности меньше одной секунды представлены с полем `seconds`, равным 0, и положительным полем `nanos`. Должно быть от 0 до 999 999 999 включительно.

seconds
string
success
Продолжительность времени с разрешением в секунды. Должно быть от 0 до 315 576 000 000 включительно.

retryConditions
list / elements=string
success
Указывает одно или несколько условий, когда применяется правило повторной попытки. Допустимые значения: - 5xx: балансировщик нагрузки предпримет повторную попытку, если бэкенд-сервис ответит любым кодом 5xx, или если бэкенд-сервис вообще не ответит, например, разъединения, сбросы, таймауты чтения, сбои соединения и отказ потоков.
- gateway-error: аналогично 5xx, но применяется только к кодам ответов 502, 503 или 504.
- connect-failure: балансировщик нагрузки будет повторять попытки при проблемах соединения с бэкенд-сервисами, например, из-за таймаутов подключения.
- retriable-4xx: балансировщик нагрузки будет повторять попытки для обрабатываемых кодов 4xx.
В настоящее время единственной поддерживаемой ошибкой повторной обработки является 409.
- refused-stream: балансировщик нагрузки будет повторять попытки, если бэкенд-сервис сбрасывает поток с ошибкой REFUSED_STREAM. Этот тип сброса указывает, что повторная попытка безопасна.
- cancelled: балансировщик нагрузки будет повторять попытки, если код состояния gRPC в заголовке ответа установлен в cancelled - deadline-exceeded: балансировщик нагрузки будет повторять попытки, если код состояния gRPC в заголовке ответа установлен в deadline-exceeded - resource-exhausted: балансировщик нагрузки будет повторять попытки, если код состояния gRPC в заголовке ответа установлен в resource-exhausted - unavailable: балансировщик нагрузки будет повторять попытки, если код состояния gRPC в заголовке ответа установлен в unavailable.

timeout
complex
success
Указывает таймаут для выбранного маршрута. Таймаут вычисляется от момента полного обработки запроса (т.е. окончания потока) до момента полной обработки ответа. Таймаут включает все повторные попытки. Если не указано, значение по умолчанию составляет 15 секунд.

nanos
integer
success
Промежуток времени, являющийся дробной частью секунды с разрешением в наносекунды. Продолжительности меньше одной секунды представлены полем `seconds` со значением 0 и положительным полем `nanos`. Должно быть от 0 до 999 999 999 включительно.

seconds
string
success
Промежуток времени с разрешением в секунды. Должно быть от 0 до 315 576 000 000 включительно.

urlRewrite
complex
success
Спецификация для изменения URL запроса перед переадресацией запроса в соответствующую службу.

hostRewrite
string
success
Перед переадресацией запроса к выбранной службе заголовок хоста запроса заменяется содержимым hostRewrite. Значение должно быть от 1 до 255 символов.

pathPrefixRewrite
string
success
Перед переадресацией запроса к выбранной службе целевого узла соответствующая часть пути запроса заменяется на pathPrefixRewrite. Значение должно быть от 1 до 1024 символов.

weightedBackendServices
complex
success
Список весовых служб целевого узла для отправки трафика при совпадении с маршрутом. Веса определяют долю трафика, которая перенаправляется на соответствующую службу целевого узла. Если весь трафик должен направляться на одну службу целевого узла, должна быть одна weightedBackendService с весом, отличным от 0. После определения службы целевого узла и перед переадресацией запроса на службу целевого узла применяются расширенные действия маршрутизации, такие как перенаправление URL и преобразование заголовков, в зависимости от дополнительных настроек, указанных в этом действии HttpRouteAction.

backendService
dictionary
success
Ресурс службы целевого узла по умолчанию. Перед переадресацией запроса к backendService балансировщик приложений применяет все соответствующие действия с заголовками, указанные в рамках этого backendServiceWeight.

headerAction
complex
success
Указывает изменения в заголовках запроса и ответа, которые должны быть выполнены для выбранной службы целевого узла. Действия с заголовками, указанные здесь, применяются до действий с заголовками в содержащем HttpRouteRule, PathMatcher и UrlMap.

requestHeadersToAdd
complex
success
Заголовки для добавления в соответствующий запрос перед переадресацией запроса к backendService.

headerName
string
success
Имя заголовка.

headerValue
string
success
Значение заголовка для добавления.

replace
boolean
success
Если false, headerValue добавляется к любым значениям, которые уже существуют для заголовка. Если true, headerValue устанавливается для заголовка, удаляя любые значения, которые были установлены для этого заголовка.

requestHeadersToRemove
list / elements=string
success
Список имён заголовков, которые необходимо удалить из запроса перед переадресацией запроса к backendService.

responseHeadersToAdd
complex
success
Заголовки для добавления в ответ перед отправкой ответа клиенту.

headerName
string
success
Имя заголовка.

headerValue
string
success
Значение заголовка для добавления.

replace
boolean
success
Если false, headerValue добавляется к любым значениям, которые уже существуют для заголовка. Если true, headerValue устанавливается для заголовка, удаляя любые значения, которые были установлены для этого заголовка.

responseHeadersToRemove
list / elements=string
success
Список имён заголовков, которые необходимо удалить из ответа перед отправкой ответа клиенту.

weight
integer
success
Указывает долю трафика, направляемого на backendService, вычисляемую как weight / (сумма весов всех weightedBackendService в routeAction). Выбор службы целевого узла определяется только для нового трафика. После того, как запрос пользователя был перенаправлен на backendService, последующие запросы будут отправляться на ту же backendService, что определяется политикой сродства сеанса backendService.
Значение должно быть от 0 до 1000.

service
dictionary
success
Ресурс службы целевого узла, на который перенаправляется трафик, если это правило совпадает. Если дополнительно указано routeAction, применяются расширенные действия маршрутизации, такие как перенаправление URL и т. д., прежде чем отправлять запрос на целевой узел. Однако, если указан service, routeAction не может содержать weightedBackendService. И наоборот, если routeAction указывает weightedBackendServices, service не должен быть указан. Только одно из urlRedirect, service или routeAction.weightedBackendService должно быть установлено.

urlRedirect
complex
success
При совпадении с шаблоном пути запрос перенаправляется на URL, указанный в urlRedirect. Если urlRedirect указан, service или routeAction не должны быть установлены.

hostRedirect
string
success
Хост, который будет использоваться в ответе о перенаправлении вместо хоста, указанного в запросе. Значение должно быть от 1 до 255 символов.

httpsRedirect
boolean
success
Если установлено в значение true, схема URL в перенаправленном запросе устанавливается в https.
Если установлено в значение false, схема URL перенаправленного запроса останется такой же, как у исходного запроса. Это свойство должно быть установлено только для UrlMaps, используемых в TargetHttpProxys. Установка его в true для TargetHttpsProxy запрещена. По умолчанию установлено в значение false.

pathRedirect
string
success
Путь, который будет использован в ответе перенаправления вместо пути, предоставленного в запросе. pathRedirect не может быть предоставлен вместе с prefixRedirect. Предоставьте одно или ни одного. Если ни одно не предоставлено, путь исходного запроса будет использован для перенаправления.
Значение должно быть между 1 и 1024 символами.

prefixRedirect
string
success
Префикс, который заменяет префикс prefixMatch, указанный в HttpRouteRuleMatch, сохраняя оставшуюся часть URL-адреса перед перенаправлением запроса. prefixRedirect не может быть предоставлен вместе с pathRedirect. Предоставьте одно или ни одного. Если ни одно не предоставлено, путь исходного запроса будет использован для перенаправления. Значение должно быть между 1 и 1024 символами.

redirectResponseCode
string
success
Код HTTP-статуса для этого действия перенаправления. Поддерживаемые значения: * MOVED_PERMANENTLY_DEFAULT, значение по умолчанию, соответствующее 301.
* FOUND, соответствующее 302.
* SEE_OTHER, соответствующее 303.
* TEMPORARY_REDIRECT, соответствующее 307. В этом случае метод запроса сохранится.
* PERMANENT_REDIRECT, соответствующее 308. В этом случае метод запроса сохранится.

stripQuery
boolean
success
Если установлено в true, любая часть запроса исходного URL удаляется перед перенаправлением запроса. Если установлено в false, часть запроса исходного URL сохраняется.

routeRules
complex
success
Список упорядоченных правил маршрутизации HTTP. Используйте этот список вместо pathRules, когда требуются расширенное сопоставление маршрутов и действия маршрутизации. Порядок указания routeRules важен: первое совпавшее правило вызовет указанное действие маршрутизации. В данном pathMatcher должен быть установлен только один из pathRules или routeRules. routeRules не поддерживаются в UrlMaps, предназначенных для внешних балансировщиков нагрузки.

headerAction
complex
success
Указывает изменения в заголовках запроса и ответа, которые должны быть применены для выбранного backendService. Действия headerAction, указанные здесь, применяются до сопоставления pathMatchers[].headerAction и после pathMatchers[].routeRules[].routeAction.weightedBackendService.backendServiceWeightAction[].headerAction.

requestHeadersToAdd
complex
success
Заголовки, которые необходимо добавить к соответствующему запросу перед пересылкой запроса в backendService.

headerName
string
success
Имя заголовка.

headerValue
string
success
Значение заголовка для добавления.

replace
boolean
success
Если false, headerValue добавляется к любым уже существующим значениям для заголовка. Если true, headerValue устанавливается для заголовка, отбрасывая любые значения, которые были установлены для этого заголовка.

requestHeadersToRemove
list / elements=string
success
Список имён заголовков, которые необходимо удалить из запроса перед пересылкой в backendService.

responseHeadersToAdd
complex
success
Заголовки, которые необходимо добавить в ответ перед отправкой клиенту.

headerName
string
success
Имя заголовка.

headerValue
string
success
Значение заголовка для добавления.

replace
boolean
success
Если false, headerValue добавляется к любым уже существующим значениям для заголовка. Если true, headerValue устанавливается для заголовка, отбрасывая любые значения, которые были установлены для этого заголовка.

responseHeadersToRemove
list / elements=string
success
Список имён заголовков, которые необходимо удалить из ответа перед отправкой клиенту.

matchRules
complex
success
Правила для определения соответствия.

fullPathMatch
string
success
Для удовлетворения условия matchRule путь запроса должен точно совпадать со значением, указанным в fullPathMatch, после удаления любых параметров запроса и якорей, которые могут быть частью исходного URL. FullPathMatch должен быть между 1 и 1024 символами. Только одно из prefixMatch, fullPathMatch или regexMatch должно быть указано.

headerMatches
complex
success
Указывает список критериев соответствия заголовков, все из которых должны совпадать с соответствующими заголовками в запросе.

exactMatch
string
success
Значение должно точно совпадать с содержимым exactMatch. Только одно из exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch или rangeMatch должно быть установлено.

headerName
string
success
Имя HTTP-заголовка для соответствия. Для соответствия авторитету HTTP-запроса используйте headerMatch с именем заголовка ":authority". Для соответствия методу запроса используйте headerName ":method".

invertMatch
boolean
success
Если установлено в значение false, headerMatch считается совпадением, если выполнены вышеуказанные критерии соответствия. Если установлено в значение true, headerMatch считается совпадением, если вышеуказанные критерии соответствия НЕ выполнены. По умолчанию false.

prefixMatch
string
success
Значение заголовка должно начинаться с содержимого prefixMatch. Только одно из exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch или rangeMatch должно быть установлено.

presentMatch
boolean
success
Заголовок с содержимым headerName должен существовать. Сопоставление происходит независимо от наличия значения у заголовка запроса. Только одно из значений exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch или rangeMatch должно быть установлено.

rangeMatch
complex
success
Значение заголовка должно быть целым числом и находиться в указанном диапазоне rangeMatch. Если заголовок не содержит целого числа, числа или пуст, сопоставление не выполняется. Например, для диапазона [-5, 0] - -3 будет соответствовать. - 0 не будет соответствовать. - 0.25 не будет соответствовать. - -3someString не будет соответствовать. Только одно из значений exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch или rangeMatch должно быть установлено.

rangeEnd
integer
success
Конец диапазона (исключительно).

rangeStart
integer
success
Начало диапазона (включительно).

regexMatch
string
success
Значение заголовка должно соответствовать заданному в regexMatch регулярному выражению. Для грамматики регулярных выражений см.: en.cppreference.com/w/cpp/regex/ecmascript Для сопоставления с портом, указанным в HTTP-запросе, используйте headerMatch с headerName, установленным на PORT, и регулярное выражение, соответствующее спецификатору порта заголовка Host RFC2616.
Только одно из значений exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch или rangeMatch должно быть установлено.

suffixMatch
string
success
Значение заголовка должно оканчиваться на содержимое suffixMatch. Только одно из значений exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch или rangeMatch должно быть установлено.

ignoreCase
boolean
success
Указывает, что сопоставления prefixMatch и fullPathMatch чувствительны к регистру.
По умолчанию false.

metadataFilters
complex
success
Непрозрачные критерии фильтрации, используемые Loadbalancer для ограничения конфигурации маршрутизации на ограниченный набор клиентов, совместимых с xDS. В своих запросах xDS к Loadbalancer клиенты xDS представляют метаданные узла. Если происходит сопоставление, соответствующая конфигурация маршрутизации становится доступной для этих прокси. Для каждого metadataFilter в этом списке, если его filterMatchCriteria установлено в MATCH_ANY, по крайней мере, одна из filterLabels должна соответствовать соответствующей метке, предоставленной в метаданных. Если его filterMatchCriteria установлено в MATCH_ALL, то все его filterLabels должны соответствовать соответствующим меткам в предоставленных метаданных. metadataFilters, указанные здесь, могут переопределять те, которые указаны в ForwardingRule, которые ссылаются на эту UrlMap. metadataFilters применяются только к Loadbalancer, у которых loadBalancingScheme установлено в INTERNAL_SELF_MANAGED.

filterLabels
complex
success
Список пар имя-значение меток, которые должны соответствовать меткам в предоставленных метаданных на основе filterMatchCriteria. Этот список не должен быть пустым и может содержать не более 64 записей.

name
string
success
Имя метки метаданных. Длина имени может составлять максимум 1024 символа и должна быть не менее 1 символа.

value
string
success
Значение метки должно соответствовать указанному значению. Длина value может составлять максимум 1024 символа.

filterMatchCriteria
string
success
Указывает, как отдельные сопоставления filterLabel в списке filterLabels вносят вклад в общее соответствие metadataFilter. Доступные значения: - MATCH_ANY: По крайней мере, одна из filterLabels должна иметь соответствующую метку в предоставленных метаданных.
- MATCH_ALL: Все filterLabels должны иметь соответствующие метки в предоставленных метаданных.

prefixMatch
string
success
Для удовлетворения условия matchRule путь запроса должен начинаться с указанного prefixMatch. prefixMatch должен начинаться с /. Значение должно быть между 1 и 1024 символами. Только одно из prefixMatch, fullPathMatch или regexMatch должно быть указано.

queryParameterMatches
complex
success
Указывает список критериев сопоставления параметров запроса, все из которых должны соответствовать соответствующим параметрам запроса.

exactMatch
string
success
queryParameterMatch совпадает, если значение параметра точно соответствует содержимому exactMatch. Только одно из presentMatch, exactMatch и regexMatch должно быть установлено.

name
string
success
Имя параметра запроса для сопоставления. Параметр запроса должен существовать в запросе, в противном случае сопоставление запроса не выполняется.

presentMatch
boolean
success
Указывает, что queryParameterMatch совпадает, если запрос содержит параметр запроса, независимо от того, имеет ли параметр значение или нет. Только одно из presentMatch, exactMatch и regexMatch должно быть установлено.

regexMatch
string
success
queryParameterMatch совпадает, если значение параметра соответствует регулярному выражению, заданному regexMatch. Для грамматики регулярных выражений см. en.cppreference.com/w/cpp/regex/ecmascript. Только одно из presentMatch, exactMatch и regexMatch должно быть установлено.

regexMatch
string
success
Для удовлетворения условия matchRule, путь запроса должен удовлетворять регулярному выражению, указанному в regexMatch, после удаления параметров запроса и якоря, предоставленного в исходном URL-адресе. Для грамматики регулярных выражений см. en.cppreference.com/w/cpp/regex/ecmascript. Только одно из prefixMatch, fullPathMatch или regexMatch должно быть указано.

priority
integer
success
Для routeRules в данном pathMatcher приоритет определяет порядок, в котором Load balancer будет интерпретировать routeRules. RouteRules оцениваются в порядке приоритета, от наименьшего к наибольшему числу. Приоритет правила уменьшается по мере увеличения его номера (1, 2, 3, N+1). Первое правило, соответствующее запросу, применяется.
Нельзя настроить два или более routeRules с одинаковым приоритетом.
Приоритет каждого правила должен быть установлен на число от 0 до 2147483647 включительно.
Номера приоритета могут иметь пробелы, что позволяет добавлять или удалять правила в будущем, не влияя на остальные правила. Например, 1, 2, 3, 4, 5, 9, 12, 16 — это допустимая последовательность номеров приоритета, в которую вы можете добавить правила с номерами от 6 до 8, от 10 до 11 и от 13 до 15 в будущем без каких-либо последствий для существующих правил.

routeAction
complex
success
В ответ на соответствующее matchRule, балансировщик нагрузки выполняет расширенные действия маршрутизации, такие как переписывание URL, преобразование заголовков и т.д., прежде чем передать запрос выбранному бэкенду. Если routeAction указывает какие-либо weightedBackendServices, служба не должна быть установлена. И наоборот, если service установлена, routeAction не может содержать какие-либо weightedBackendServices. Должен быть установлен только один из routeAction или urlRedirect.

corsPolicy
complex
success
Спецификация для разрешения запросов с разных доменов со стороны клиента. Пожалуйста, обратитесь к рекомендации W3C по Cross Origin Resource Sharing.

allowCredentials
boolean
success
В ответ на запрос предварительного просмотра, установка этого значения в true указывает, что фактический запрос может включать учетные данные пользователя. Это переводится в заголовок Access-Control-Allow-Credentials. По умолчанию значение false.

allowHeaders
list / elements=string
success
Указывает содержимое заголовка Access-Control-Allow-Headers.

allowMethods
list / elements=string
success
Указывает содержимое заголовка Access-Control-Allow-Methods.

allowOriginRegexes
list / elements=string
success
Указывает шаблоны регулярных выражений, которые соответствуют разрешенным источникам. Для грамматики регулярных выражений см. en.cppreference.com/w/cpp/regex/ecmascript. Источник разрешен, если он соответствует либо allow_origins, либо allow_origin_regex.

allowOrigins
list / elements=string
success
Указывает список источников, которым будет разрешено выполнять запросы CORS. Источник разрешен, если он соответствует либо allow_origins, либо allow_origin_regex.

disabled
boolean
success
Если true, указывает, что политика CORS отключена.
что указывает на то, что политика CORS активна. По умолчанию значение false.

exposeHeaders
list / elements=string
success
Указывает содержимое заголовка Access-Control-Expose-Headers.

maxAge
integer
success
Указывает, как долго результаты запроса предварительного просмотра могут быть кэшированы. Это соответствует содержимому заголовка Access-Control-Max-Age.

faultInjectionPolicy
complex
success
Спецификация для введения сбоя в трафик для проверки устойчивости клиентов к сбоям бэкенд-службы. В рамках введения сбоя, когда клиенты отправляют запросы на бэкенд-службу, балансировщик нагрузки может вводить задержки для определенного процента запросов, прежде чем отправлять эти запросы на бэкенд-службу. Аналогично, балансировщик нагрузки может прерывать запросы от клиентов для определенного процента запросов. Параметры timeout и retry_policy будут игнорироваться клиентами, настроенными с policy fault_injection_policy.

abort
complex
success
Спецификация того, как прерываются запросы клиентов в рамках введения сбоя.

httpStatus
integer
success
Код HTTP-статуса, используемый для прерывания запроса. Значение должно быть в диапазоне от 200 до 599 включительно.

percentage
string
success
Процент трафика (соединений/операций/запросов), который будет прерван в рамках введения сбоя. Значение должно быть в диапазоне от 0,0 до 100,0 включительно.

delay
complex
success
Спецификация того, как задерживаются запросы клиентов в рамках введения сбоя, прежде чем они отправляются на бэкенд-службу.

fixedDelay
complex
success
Указывает значение интервала фиксированной задержки.

nanos
integer
success
Промежуток времени, который представляет собой дробную часть секунды с разрешением в наносекунды. Продолжительности меньше одной секунды представлены полем `seconds` равным 0 и положительным полем `nanos`. Должно быть от 0 до 999 999 999 включительно.

seconds
string
success
Промежуток времени с разрешением в секунду. Должно быть от 0 до 315 576 000 000 включительно.

percentage
string
success
Процент трафика (соединений/операций/запросов), для которого будет введена задержка в рамках введения сбоя. Значение должно быть в диапазоне от 0,0 до 100,0 включительно.

requestMirrorPolicy
complex
success
Указывает политику того, как запросы, предназначенные для бэкендов маршрута, дублируются в отдельной зеркальной бэкенд-службе. Балансировщик нагрузки не ждет ответов от зеркальной службы. Перед отправкой трафика в зеркальную службу в заголовок host/authority добавляется суффикс -shadow.

backendService
dictionary
success
Ресурс BackendService, который будет дублироваться.

retryPolicy
complex
success
Указывает политику повторных попыток, связанную с этим маршрутом.

numRetries
integer
success
Указывает разрешенное количество повторных попыток. Это число должно быть > 0.

perTryTimeout
complex
success
Указывает ненулевой таймаут для каждой повторной попытки.
Если не указано, используется таймаут, заданный в HttpRouteAction. Если таймаут в HttpRouteAction не задан, используется наибольший таймаут среди всех бэкенд-служб, связанных с маршрутом.

наносекунды
целое число
успешно
Промежуток времени, составляющий дробную часть секунды с разрешением в наносекунды. Продолжительности меньше одной секунды представлены значением 0 в поле `seconds` и положительным значением в поле `nanos`. Должно быть от 0 до 999 999 999 включительно.

секунды
строка
успешно
Промежуток времени с разрешением в секунды. Должно быть от 0 до 315 576 000 000 включительно.

условия_повторной_попытки
список / элементы=строка
успешно
Указывает одно или несколько условий, при которых применяется данное правило повторной попытки. Допустимые значения:
- 5xx: балансировщик нагрузки попытается повторить попытку, если служба обратной связи ответит любым кодом состояния 5xx, или если служба обратной связи не ответит вообще (например, отключения, сброс, таймаут чтения, ошибка подключения и отказ потоков).
- gateway-error: аналогично 5xx, но применяется только к кодам состояния 502, 503 или 504.
- connect-failure: балансировщик нагрузки повторит попытку при ошибках подключения к службам обратной связи, например, из-за таймаутов подключения.
- retriable-4xx: балансировщик нагрузки повторит попытку для повторно-возможности кодов состояния 4xx.
В настоящее время единственная поддерживаемая ошибка - 409.
- refused-stream: балансировщик нагрузки повторит попытку, если служба обратной связи сбросит поток с кодом ошибки REFUSED_STREAM. Этот тип сброса указывает, что можно безопасно повторить попытку.
- cancelled: балансировщик нагрузки повторит попытку, если код состояния gRPC в заголовке ответа установлен на отменённый - deadline-exceeded: балансировщик нагрузки повторит попытку, если код состояния gRPC в заголовке ответа установлен на превышение срока действия - resource-exhausted: балансировщик нагрузки повторит попытку, если код состояния gRPC в заголовке ответа установлен на исчерпание ресурсов - unavailable: балансировщик нагрузки повторит попытку, если код состояния gRPC в заголовке ответа установлен на недоступность .

таймаут
сложное
успешно
Устанавливает таймаут для выбранного маршрута. Таймаут вычисляется с момента полного обработки запроса (т.е. завершения потока) до полного завершения обработки ответа. Таймаут включает все повторные попытки. Если не указано, значение по умолчанию составляет 15 секунд.

наносекунды
целое число
успешно
Промежуток времени, составляющий дробную часть секунды с разрешением в наносекунды. Продолжительности меньше одной секунды представлены значением 0 в поле `seconds` и положительным значением в поле `nanos`. Должно быть от 0 до 999 999 999 включительно.

секунды
строка
успешно
Промежуток времени с разрешением в секунды. Должно быть от 0 до 315 576 000 000 включительно.

перенаправление_url
сложное
успешно
Спецификация для изменения URL запроса перед пересылкой запроса к сопоставленной службе.

перенаправление_хоста
строка
успешно
Перед пересылкой запроса к выбранной службе заголовок хоста запроса заменяется содержимым hostRewrite. Значение должно быть от 1 до 255 символов.

перенаправление_префикса_пути
строка
успешно
Перед пересылкой запроса к выбранной службе обратной связи соответствующая часть пути запроса заменяется на pathPrefixRewrite. Значение должно быть от 1 до 1024 символов.

взвешенные_службы_обратной_связи
сложное
успешно
Список взвешенных служб обратной связи для отправки трафика при совпадении маршрута. Веса определяют долю трафика, направляемого в соответствующую службу обратной связи. Если весь трафик должен направляться в одну службу обратной связи, должен быть один weightedBackendService с весом, отличным от 0. После определения службы обратной связи и перед пересылкой запроса в службу обратной связи применяются дополнительные действия маршрутизации, такие как перенаправление URL и преобразования заголовков, в зависимости от дополнительных настроек, указанных в HttpRouteAction.

служба_обратной_связи
словарь
успешно
Ресурс службы обратной связи по умолчанию. Перед пересылкой запроса в backendService балансировщик нагрузки применяет все соответствующие действия с заголовками, указанные как часть backendServiceWeight.

действие_с_заголовками
сложное
успешно
Указывает изменения в заголовках запроса и ответа, которые должны вступить в силу для выбранной службы обратной связи. Действия с заголовками, указанные здесь, вступают в силу до действий с заголовками во вложенном HttpRouteRule, PathMatcher и UrlMap.

заголовки_запроса_для_добавления
сложное
успешно
Заголовки, которые необходимо добавить к соответствующему запросу перед пересылкой запроса в backendService.

имя_заголовка
строка
успешно
Имя заголовка.

значение_заголовка
строка
успешно
Значение добавляемого заголовка.

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

заголовки_запроса_для_удаления
список / элементы=строка
успешно
Список имён заголовков, которые необходимо удалить из запроса перед пересылкой запроса в backendService.

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

имя_заголовка
строка
успешно
Имя заголовка.

значение_заголовка
строка
успешно
Значение добавляемого заголовка.

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

responseHeadersToRemove
list / elements=string
success
Список имён заголовков, которые необходимо удалить из ответа перед отправкой клиенту.

weight
integer
success
Определяет долю трафика, отправляемого в backendService, вычисляемую как weight / (сумма всех весов weightedBackendService в routeAction). Выбор бэкенд-сервиса определяется только для нового трафика. После того, как запрос пользователя был направлен на backendService, последующие запросы будут отправлены тому же backendService, как определено политикой Affinity сессии BackendService.
Значение должно быть от 0 до 1000.

service
dictionary
success
Ресурс бэкенд-сервиса, на который направляется трафик, если совпадает это правило. Если дополнительно указан routeAction, сложные действия маршрутизации, такие как перенаправление URL и т. д., выполняются перед отправкой запроса на бэкенд. Однако, если указан service, routeAction не может содержать weightedBackendService. И наоборот, если routeAction содержит weightedBackendServices, service не должен быть указан. Только одно из значений urlRedirect, service или routeAction.weightedBackendService должно быть задано.

urlRedirect
complex
success
При совпадении этого правила запрос перенаправляется на URL, указанный в urlRedirect. Если указан urlRedirect, service или routeAction не должны быть заданы.

hostRedirect
string
success
Хост, который будет использоваться в ответе о перенаправлении вместо того, который был передан в запросе. Значение должно быть от 1 до 255 символов.

httpsRedirect
boolean
success
Если установлено в true, схема URL в перенаправленном запросе устанавливается в https. Если установлено в false, схема URL перенаправленного запроса останется такой же, как у запроса. Это должно быть установлено только для UrlMaps, используемых в TargetHttpProxys.
Установка в true для TargetHttpsProxy запрещена. По умолчанию false.

pathRedirect
string
success
Путь, который будет использоваться в ответе о перенаправлении вместо пути, переданного в запросе. Только одно из pathRedirect или prefixRedirect должно быть указано. Значение должно быть от 1 до 1024 символов.

prefixRedirect
string
success
Префикс, который заменяет префиксMatch, указанный в HttpRouteRuleMatch, сохраняя оставшуюся часть URL перед перенаправлением запроса.

redirectResponseCode
string
success
Код HTTP-статуса, который следует использовать для этого RedirectAction. Поддерживаемые значения: * MOVED_PERMANENTLY_DEFAULT, которое является значением по умолчанию и соответствует 301.
* FOUND, что соответствует 302.
* SEE_OTHER, что соответствует 303.
* TEMPORARY_REDIRECT, что соответствует 307. В этом случае метод запроса сохранится.
* PERMANENT_REDIRECT, что соответствует 308. В этом случае метод запроса сохранится.

stripQuery
boolean
success
Если установлено в true, любая сопутствующая часть запроса исходного URL удаляется перед перенаправлением запроса. Если установлено в false, часть запроса исходного URL сохраняется. По умолчанию false.

tests
complex
success
Список ожидаемых тестов сопоставления URL. Запрос на обновление этого UrlMap будет успешным только в том случае, если пройдут все тестовые случаи. Вы можете указать максимум 100 тестов на UrlMap.

description
string
success
Описание этого тестового случая.

host
string
success
Часть хоста URL.

path
string
success
Часть пути URL.

service
dictionary
success
Ожидаемый ресурс BackendService, к которому должен быть сопоставлен данный 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_url_map_info_module.html

Spec-Zone.ru

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