Spec-Zone.ru › Ansible

Модуль google.cloud.gcp_compute_url_map — создание UrlMap в GCP

Примечание

Этот модуль входит в коллекцию google.cloud (версия 1.13.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install google.cloud. Для использования этого модуля необходимы дополнительные зависимости. Подробности см. в разделе Требования.

Чтобы использовать модуль в плейбуке, укажите: google.cloud.gcp_compute_url_map.

  • Краткое описание
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Краткое описание

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

Требования

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

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

Параметры

Параметр

Комментарии

access_token

string

Токен доступа OAuth2, если тип учетных данных — accesstoken.

auth_kind

string / обязательный

Тип используемых учетных данных.

Варианты:

  • "application"
  • "machineaccount"
  • "serviceaccount"
  • "accesstoken"

default_route_action

dictionary

defaultRouteAction применяется, если ни одно из правил hostRules не совпало. Перед пересылкой запроса выбранной серверной службе балансировщик нагрузки выполняет расширенные действия маршрутизации, например перезапись URL, преобразование заголовков и т. д.

Если в defaultRouteAction указаны какие-либо weightedBackendServices, параметр defaultService задавать нельзя. И наоборот, если задан defaultService, defaultRouteAction не может содержать weightedBackendServices.

Должен быть задан только один из параметров: defaultRouteAction или defaultUrlRedirect.

cors_policy

dictionary

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

allow_credentials

boolean

В ответ на предварительный запрос значение true указывает, что фактический запрос может содержать учетные данные пользователя.

Этому соответствует заголовок Access-Control-Allow-Credentials.

Варианты:

  • false
  • true

allow_headers

list / elements=string

Задает содержимое заголовка Access-Control-Allow-Headers.

allow_methods

list / elements=string

Задает содержимое заголовка Access-Control-Allow-Methods.

allow_origin_regexes

list / elements=string

Задает шаблоны регулярных выражений, соответствующие разрешенным источникам. Описание грамматики регулярных выражений см. на en.cppreference.com/w/cpp/regex/ecmascript. Источник разрешен, если он соответствует элементу allowOrigins или элементу allowOriginRegexes.

allow_origins

list / elements=string

Задает список источников, которым разрешено выполнять запросы CORS.

Источник разрешен, если он соответствует элементу allowOrigins или элементу allowOriginRegexes.

disabled

boolean

Если значение равно true, политика CORS отключена. Значение по умолчанию — false, что означает, что политика CORS действует.

Варианты:

  • false
  • true

expose_headers

list / elements=string

Задает содержимое заголовка Access-Control-Expose-Headers.

max_age

integer

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

Этому соответствует заголовок Access-Control-Max-Age.

fault_injection_policy

dictionary

Параметры внедрения сбоев в трафик для проверки устойчивости клиентов к отказам серверной службы.

При внедрении сбоев, когда клиенты отправляют запросы серверной службе, балансировщик нагрузки может задерживать часть запросов на заданный процент перед их отправкой серверной службе. Аналогично балансировщик нагрузки может прерывать запросы клиентов для заданного процента запросов.

Клиенты, настроенные с помощью faultInjectionPolicy, не учитывают timeout и retryPolicy.

abort

dictionary

Параметры прерывания запросов клиентов в рамках внедрения сбоев.

http_status

integer

Код состояния HTTP, используемый для прерывания запроса.

Значение должно быть от 200 до 599 включительно.

percentage

string

Доля трафика (подключений/операций/запросов), которая будет прервана в рамках внедрения сбоев.

Значение должно быть от 0.0 до 100.0 включительно.

delay

dictionary

Параметры задержки запросов клиентов в рамках внедрения сбоев перед их отправкой серверной службе.

fixed_delay

dictionary

Задает значение интервала фиксированной задержки.

nanos

integer

Доля секунды с точностью до наносекунды. Длительности меньше одной секунды задаются полем seconds со значением 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 включительно.

request_mirror_policy

dictionary

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

Балансировщик нагрузки не ожидает ответов от зеркальной службы. Перед отправкой трафика зеркальной службе к заголовку host / authority добавляется суффикс -shadow.

backend_service

dictionary / обязательный

Полный или частичный URL ресурса BackendService, в который выполняется зеркалирование.

Это поле содержит ссылку на ресурс BackendService в GCP. Его можно задать двумя способами. Первый способ — указать словарь с ключом ‘selfLink’ и значением selfLink ресурса. Также можно добавить `register: name-of-resource` в задачу gcp_compute_backend_service, а затем присвоить этому полю backend_service значение “{{ name-of-resource }}”

retry_policy

dictionary

Задает политику повторных попыток для этого маршрута.

num_retries

integer

Задает допустимое количество повторных попыток. Число должно быть > 0. Если параметр не задан, по умолчанию используется значение 1.

По умолчанию: 1

per_try_timeout

dictionary

Задает ненулевое время ожидания для каждой повторной попытки.

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

nanos

integer

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

seconds

string

Длительность с точностью до секунды. Допустимый диапазон: от 0 до 315,576,000,000 включительно.

Примечание: эти границы вычислены следующим образом: 60 сек/мин * 60 мин/ч * 24 ч/день * 365.25 дня/год * 10000 лет.

retry_conditions

list / elements=string

Задает одно или несколько условий, при которых применяется это правило повторных попыток. Допустимые значения: * 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

dictionary

Задает время ожидания для выбранного маршрута. Оно отсчитывается с момента полной обработки запроса (то есть завершения потока) до полной обработки ответа. Время ожидания включает все повторные попытки.

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

nanos

integer

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

seconds

string

Длительность с точностью до секунды. Допустимый диапазон: от 0 до 315,576,000,000 включительно.

Примечание: эти границы вычислены следующим образом: 60 сек/мин * 60 мин/ч * 24 ч/день * 365.25 дня/год * 10000 лет.

url_rewrite

dictionary

Задает правила изменения URL запроса перед его пересылкой соответствующей службе.

host_rewrite

string

Перед пересылкой запроса выбранной службе заголовок host запроса заменяется содержимым hostRewrite.

Длина значения должна составлять от 1 до 255 символов.

path_prefix_rewrite

string

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

Длина значения должна составлять от 1 до 1024 символов.

weighted_backend_services

list / elements=dictionary

Список серверных служб с весами, которым передается трафик при совпадении маршрута.

Вес определяет долю трафика, направляемую в соответствующую серверную службу.

Если весь трафик должен направляться в одну серверную службу, необходимо указать один weightedBackendService с ненулевым значением weight.

После определения backendService и перед пересылкой запроса серверной службе выполняются расширенные действия маршрутизации, например перезапись URL и преобразование заголовков, в соответствии с дополнительными настройками, указанными в этом HttpRouteAction.

backend_service

dictionary

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

Это поле содержит ссылку на ресурс BackendService в GCP. Его можно задать двумя способами. Первый способ — указать словарь с ключом ‘selfLink’ и значением selfLink ресурса. Также можно добавить `register: name-of-resource` в задачу gcp_compute_backend_service, а затем присвоить этому полю backend_service значение “{{ name-of-resource }}”

header_action

dictionary

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

Указанный здесь headerAction применяется раньше headerAction во внешних HttpRouteRule, PathMatcher и UrlMap.

request_headers_to_add

list / elements=dictionary

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

header_name

string

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

header_value

string

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

replace

boolean

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

Если значение равно true, для заголовка устанавливается headerValue, а все ранее заданные значения удаляются.

Варианты:

  • false
  • true

request_headers_to_remove

list / elements=string

Список имен заголовков, которые необходимо удалить из запроса перед его пересылкой в backendService.

response_headers_to_add

list / elements=dictionary

Заголовки, которые добавляются к ответу перед его отправкой клиенту.

header_name

string

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

header_value

string

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

replace

boolean

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

Если значение равно true, для заголовка устанавливается headerValue, а все ранее заданные значения удаляются.

Варианты:

  • false
  • true

response_headers_to_remove

list / elements=string

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

weight

integer

Указывает долю трафика, отправляемого в backendService; она рассчитывается как weight / (сумма всех значений weight для weightedBackendService в routeAction).

Выбор службы backend выполняется только для нового трафика. После того как запрос пользователя направлен в backendService, последующие запросы будут отправляться в ту же backendService согласно политике привязки сеанса BackendService.

Значение должно находиться в диапазоне от 0 до 1000.

default_service

dictionary

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

Это поле представляет собой ссылку на ресурс BackendService в GCP. Его можно указать двумя способами. Во-первых, можно задать словарь с ключом «selfLink» и значением selfLink ресурса. В качестве альтернативы можно добавить `register: name-of-resource` в задачу gcp_compute_backend_service, а затем присвоить этому полю default_service значение «{{ name-of-resource }}»

default_url_redirect

dictionary

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

host_redirect

string

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

https_redirect

boolean

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

Варианты:

  • false
  • true

path_redirect

string

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

prefix_redirect

string

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

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

redirect_response_code

string

Код состояния HTTP, используемый для этого RedirectAction. Поддерживаются следующие значения: * MOVED_PERMANENTLY_DEFAULT — значение по умолчанию, соответствующее коду 301.

* FOUND, соответствует коду 302.

* SEE_OTHER, соответствует коду 303.

* TEMPORARY_REDIRECT, соответствует коду 307. В этом случае метод запроса сохраняется.

* PERMANENT_REDIRECT, соответствует коду 308. В этом случае метод запроса сохраняется.

Допустимые варианты: «FOUND», «MOVED_PERMANENTLY_DEFAULT», «PERMANENT_REDIRECT», «SEE_OTHER», «TEMPORARY_REDIRECT»

strip_query

boolean

Если задано значение true, строка запроса исходного URL удаляется перед перенаправлением запроса. Если задано значение false, строка запроса исходного URL сохраняется. По умолчанию установлено значение false.

Варианты:

  • false
  • true

description

string

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

env_type

string

Указывает, в какой среде Ansible выполняется этот модуль.

Не задавайте это значение, если не знаете, что делаете.

Этот параметр изменяет только строку User Agent для запросов API.

fingerprint

string

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

header_action

dictionary

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

request_headers_to_add

list / elements=dictionary

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

header_name

string / обязательный

Имя заголовка.

header_value

string / обязательный

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

replace

boolean / обязательный

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

Варианты:

  • false
  • true

request_headers_to_remove

list / elements=string

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

response_headers_to_add

list / elements=dictionary

Заголовки, добавляемые к ответу перед его отправкой клиенту.

header_name

string / обязательный

Имя заголовка.

header_value

string / обязательный

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

replace

boolean / обязательный

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

Варианты:

  • false
  • true

response_headers_to_remove

list / elements=string

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

host_rules

list / elements=dictionary

Список правил HostRules для URL.

description

string

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

hosts

list / elements=string / обязательный

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

path_matcher

string / обязательный

Имя PathMatcher, используемого для сопоставления части URL, содержащей путь, если hostRule совпадает с частью URL, содержащей имя хоста.

name

string / обязательный

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

path_matchers

list / elements=dictionary

Список именованных PathMatchers для URL.

default_route_action

dictionary

defaultRouteAction применяется, если ни одно из правил pathRules или routeRules не совпало. Перед перенаправлением запроса в выбранный backend балансировщик нагрузки выполняет дополнительные действия маршрутизации, например перезапись URL и преобразование заголовков. Если в defaultRouteAction указаны weightedBackendServices, задавать defaultService нельзя.

И наоборот, если задан defaultService, defaultRouteAction не может содержать weightedBackendServices.

Должен быть задан только один из параметров defaultRouteAction или defaultUrlRedirect.

cors_policy

dictionary

Настройки, разрешающие междоменные запросы со стороны клиента. См. [рекомендацию W3C по совместному использованию ресурсов между источниками](https://www.w3.org/TR/cors/).

allow_credentials

boolean

В ответ на предварительный запрос значение true указывает, что фактический запрос может содержать учетные данные пользователя.

Соответствует заголовку Access-Control-Allow-Credentials.

Варианты:

  • false
  • true

allow_headers

list / elements=string

Указывает содержимое заголовка Access-Control-Allow-Headers.

allow_methods

list / elements=string

Указывает содержимое заголовка Access-Control-Allow-Methods.

allow_origin_regexes

list / elements=string

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

allow_origins

list / elements=string

Указывает список источников, которым разрешено выполнять запросы CORS.

Источник разрешен, если он совпадает с элементом allowOrigins или allowOriginRegexes.

disabled

boolean

Если задано значение true, политика CORS отключается. Значение по умолчанию — false, что означает, что политика CORS действует.

Варианты:

  • false
  • true

expose_headers

list / elements=string

Указывает содержимое заголовка Access-Control-Expose-Headers.

max_age

integer

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

Соответствует заголовку Access-Control-Max-Age.

fault_injection_policy

dictionary

Настройки внедрения сбоев в трафик для проверки устойчивости клиентов к отказам службы backend.

При внедрении сбоев балансировщик нагрузки может добавлять задержки для части запросов клиентов перед отправкой этих запросов в службу backend. Аналогично балансировщик нагрузки может прерывать часть запросов клиентов.

Клиенты, настроенные с помощью faultInjectionPolicy, не учитывают timeout и retryPolicy.

abort

dictionary

Настройки прерывания запросов клиента в рамках внедрения сбоев.

http_status

integer

Код состояния HTTP, используемый для прерывания запроса.

Значение должно находиться в диапазоне от 200 до 599 включительно.

percentage

string

Доля трафика (соединений/операций/запросов), которая будет прервана в рамках внедрения сбоев.

Значение должно находиться в диапазоне от 0.0 до 100.0 включительно.

delay

dictionary

Настройки задержки запросов клиента в рамках внедрения сбоев перед их отправкой в службу backend.

fixed_delay

dictionary

Указывает длительность фиксированного интервала задержки.

nanos

integer

Длительность, заданная как доля секунды с точностью до наносекунд. Длительности меньше одной секунды представляются полем seconds со значением 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 включительно.

request_mirror_policy

dictionary

Указывает, каким образом запросы, предназначенные для backend-серверов маршрута, копируются в отдельную зеркальную службу backend.

Балансировщик нагрузки не дожидается ответов от зеркальной службы. Перед отправкой трафика в зеркальную службу к заголовку host / authority добавляется суффикс -shadow.

backend_service

dictionary / обязательный

Полный или частичный URL ресурса BackendService, на который зеркалируются запросы.

Это поле представляет ссылку на ресурс BackendService в GCP. Его можно указать двумя способами. Во-первых, можно поместить словарь с ключом ‘selfLink’ и значением, равным selfLink ресурса. Также можно добавить `register: name-of-resource` к задаче gcp_compute_backend_service, а затем задать для этого поля backend_service значение “{{ name-of-resource }}”

retry_policy

dictionary

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

num_retries

integer

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

По умолчанию: 1

per_try_timeout

dictionary

Задает ненулевой тайм-аут для каждой повторной попытки.

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

nanos

integer

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

seconds

string

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

Примечание: эти границы вычислены следующим образом: 60 сек/мин * 60 мин/ч * 24 ч/день * 365.25 дней/год * 10000 лет.

retry_conditions

list / элементы=string

Задает одно или несколько условий, при которых применяется это правило повторных попыток. Допустимые значения: * 5xx: балансировщик нагрузки предпримет повторную попытку, если служба backend ответит любым кодом 5xx или вовсе не ответит, например из-за отключения, сброса соединения, тайм-аута чтения, * сбоя соединения или отказа в потоках.

* gateway-error: аналогично 5xx, но применяется только к кодам ответа 502, 503 или 504.

* connect-failure: балансировщик нагрузки повторит попытку при сбоях подключения к службам backend, например из-за тайм-аутов подключения.

* retriable-4xx: балансировщик нагрузки повторит попытку для повторяемых кодов ответа 4xx.

В настоящее время поддерживается только одна повторяемая ошибка — 409.

* refused-stream: балансировщик нагрузки повторит попытку, если служба backend сбросит поток с кодом ошибки REFUSED_STREAM.

Этот тип сброса указывает, что повторная попытка безопасна.

* cancelled: балансировщик нагрузки повторит попытку, если в заголовке ответа указан код состояния gRPC cancelled * deadline-exceeded: балансировщик нагрузки повторит попытку, если в заголовке ответа указан код состояния gRPC deadline-exceeded * resource-exhausted: балансировщик нагрузки повторит попытку, если в заголовке ответа указан код состояния gRPC resource-exhausted * unavailable: балансировщик нагрузки повторит попытку, если в заголовке ответа указан код состояния gRPC unavailable.

timeout

dictionary

Задает тайм-аут для выбранного маршрута. Тайм-аут отсчитывается с момента полной обработки запроса (то есть завершения потока) до полной обработки ответа. Тайм-аут включает все повторные попытки.

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

nanos

integer

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

seconds

string

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

Примечание: эти границы вычислены следующим образом: 60 сек/мин * 60 мин/ч * 24 ч/день * 365.25 дней/год * 10000 лет.

url_rewrite

dictionary

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

host_rewrite

string

Перед перенаправлением запроса в выбранную службу заголовок host запроса заменяется содержимым hostRewrite.

Значение должно содержать от 1 до 255 символов.

path_prefix_rewrite

string

Перед перенаправлением запроса в выбранную службу backend соответствующая часть пути запроса заменяется значением pathPrefixRewrite.

Значение должно содержать от 1 до 1024 символов.

weighted_backend_services

list / элементы=dictionary

Список служб backend с весами, которым направляется трафик при совпадении с маршрутом.

Веса определяют долю трафика, направляемую в соответствующую службу backend.

Если весь трафик необходимо направить в одну службу backend, должен быть задан один weightedBackendService с ненулевым значением weight.

После выбора backendService и перед перенаправлением запроса в службу backend применяются дополнительные действия маршрутизации, такие как переписывание URL и преобразование заголовков, в соответствии с дополнительными настройками, указанными в этом HttpRouteAction.

backend_service

dictionary

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

Это поле представляет ссылку на ресурс BackendService в GCP. Его можно указать двумя способами. Во-первых, можно поместить словарь с ключом ‘selfLink’ и значением, равным selfLink ресурса. Также можно добавить `register: name-of-resource` к задаче gcp_compute_backend_service, а затем задать для этого поля backend_service значение “{{ name-of-resource }}”

header_action

dictionary

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

Указанные здесь headerAction применяются до headerAction во внешних HttpRouteRule, PathMatcher и UrlMap.

request_headers_to_add

list / элементы=dictionary

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

header_name

string

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

header_value

string

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

replace

boolean

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

Если значение равно true, для заголовка устанавливается headerValue, а все заданные ранее значения удаляются.

Варианты:

  • false
  • true

request_headers_to_remove

list / элементы=string

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

response_headers_to_add

list / элементы=dictionary

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

header_name

string

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

header_value

string

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

replace

boolean

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

Если значение равно true, для заголовка устанавливается headerValue, а все заданные ранее значения удаляются.

Варианты:

  • false
  • true

response_headers_to_remove

list / элементы=string

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

weight

integer

Задает долю трафика, направляемого в backendService; она вычисляется как weight / (сумма весов всех weightedBackendService в routeAction).

Выбор службы backend выполняется только для нового трафика. После того как запрос пользователя направлен в backendService, последующие запросы будут отправляться в ту же backendService в соответствии с политикой привязки сеансов BackendService.

Значение должно быть в диапазоне от 0 до 1000.

default_service

dictionary

Полный или частичный 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, перед отправкой запроса в backend применяются расширенные действия маршрутизации, например переписывание URL. Однако, если задан defaultService, параметр defaultRouteAction не может содержать weightedBackendServices. И наоборот, если в defaultRouteAction указаны weightedBackendServices, параметр defaultService задавать нельзя.

Должен быть задан только один из параметров defaultService, defaultUrlRedirect или defaultRouteAction.weightedBackendService. Для авторизации необходимы одно или несколько следующих разрешений Google IAM для указанного ресурса defaultService: - compute.backendBuckets.use - compute.backendServices.use.

Это поле представляет ссылку на ресурс BackendService в GCP. Его можно указать двумя способами. Во-первых, можно поместить словарь с ключом ‘selfLink’ и значением, равным selfLink ресурса. Также можно добавить `register: name-of-resource` к задаче gcp_compute_backend_service, а затем задать для этого поля default_service значение “{{ name-of-resource }}”

default_url_redirect

dictionary

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

host_redirect

string

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

https_redirect

boolean

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

Варианты:

  • false
  • true

path_redirect

string

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

prefix_redirect

string

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

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

redirect_response_code

string

Код состояния HTTP для этого RedirectAction. Поддерживаются следующие значения: * MOVED_PERMANENTLY_DEFAULT — значение по умолчанию, соответствующее коду 301.

* FOUND — соответствует коду 302.

* SEE_OTHER — соответствует коду 303.

* TEMPORARY_REDIRECT — соответствует коду 307. В этом случае метод запроса сохраняется.

* PERMANENT_REDIRECT — соответствует коду 308. В этом случае метод запроса сохраняется.

Некоторые допустимые значения: “FOUND”, “MOVED_PERMANENTLY_DEFAULT”, “PERMANENT_REDIRECT”, “SEE_OTHER”, “TEMPORARY_REDIRECT”

strip_query

boolean

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

Варианты:

  • false
  • true

description

string

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

header_action

dictionary

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

request_headers_to_add

list / элементы=dictionary

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

header_name

string / обязательный

Имя заголовка.

header_value

string / обязательный

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

replace

boolean / обязательный

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

Варианты:

  • false
  • true

request_headers_to_remove

list / элементы=string

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

response_headers_to_add

list / элементы=dictionary

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

header_name

string / обязательный

Имя заголовка.

header_value

string / обязательный

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

replace

boolean / обязательный

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

Варианты:

  • false
  • true

response_headers_to_remove

list / elements=string

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

name

string / обязательный

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

path_rules

list / elements=dictionary

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

paths

list / elements=string / обязательный

Список шаблонов путей для сопоставления. Каждый путь должен начинаться с /, а символ \* допускается только в конце, после /. Строка, передаваемая сопоставителю путей, не содержит текст после первого символа ? или #; эти символы здесь использовать нельзя.

route_action

dictionary

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

cors_policy

dictionary

Параметры разрешения междоменных запросов со стороны клиента. См. рекомендацию W3C по обмену ресурсами между источниками.

allow_credentials

boolean

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

Варианты:

  • false
  • true

allow_headers

list / elements=string

Задает содержимое заголовка Access-Control-Allow-Headers.

allow_methods

list / elements=string

Задает содержимое заголовка Access-Control-Allow-Methods.

allow_origin_regexes

list / elements=string

Задает шаблоны регулярных выражений для сопоставления с разрешенными источниками. Описание синтаксиса регулярных выражений см. на странице en.cppreference.com/w/cpp/regex/ecmascript. Источник разрешен, если он соответствует allow_origins или allow_origin_regex.

allow_origins

list / elements=string

Задает список источников, которым разрешено выполнять CORS-запросы. Источник разрешен, если он соответствует allow_origins или allow_origin_regex.

disabled

boolean / обязательный

Если значение равно true, политика CORS отключена.

Варианты:

  • false
  • true

expose_headers

list / elements=string

Задает содержимое заголовка Access-Control-Expose-Headers.

max_age

integer

Задает срок кэширования результатов предварительного запроса. Это соответствует содержимому заголовка Access-Control-Max-Age.

fault_injection_policy

dictionary

Параметры внедрения сбоев в трафик для проверки устойчивости клиентов к отказам серверной службы. При внедрении сбоев балансировщик нагрузки может задерживать часть запросов клиентов к серверной службе перед их отправкой. Аналогичным образом балансировщик нагрузки может прерывать часть запросов клиентов. Клиенты, для которых настроена fault_injection_policy, будут игнорировать параметры timeout и retry_policy.

abort

dictionary

Параметры прерывания запросов клиентов в рамках внедрения сбоев.

http_status

integer / обязательный

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

percentage

string / обязательный

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

delay

dictionary

Параметры задержки запросов клиентов в рамках внедрения сбоев перед их отправкой серверной службе.

fixed_delay

dictionary / обязательный

Задает значение фиксированного интервала задержки.

nanos

integer

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

seconds

string / обязательный

Длительность с точностью до секунды. Значение должно находиться в диапазоне от 0 до 315,576,000,000 включительно.

percentage

string / обязательный

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

request_mirror_policy

dictionary

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

backend_service

dictionary / обязательный

Ресурс BackendService, в который выполняется зеркальное копирование.

Это поле содержит ссылку на ресурс BackendService в GCP. Его можно задать двумя способами. Во-первых, можно указать словарь с ключом ‘selfLink’ и значением, равным selfLink ресурса. Кроме того, можно добавить `register: name-of-resource` в задачу gcp_compute_backend_service, а затем присвоить этому полю backend_service значение “{{ name-of-resource }}”

retry_policy

dictionary

Задает политику повторных попыток для этого маршрута.

num_retries

integer

Задает допустимое количество повторных попыток. Это число должно быть больше 0.

per_try_timeout

dictionary

Задает ненулевое время ожидания для каждой повторной попытки.

nanos

integer

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

seconds

string / обязательный

Длительность с точностью до секунды. Значение должно находиться в диапазоне от 0 до 315,576,000,000 включительно.

retry_conditions

list / elements=string

Задает одно или несколько условий, при которых применяется это правило повторных попыток. Допустимые значения: * 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

dictionary

Задает время ожидания для выбранного маршрута. Отсчет начинается после полной обработки запроса (то есть получения конца потока) и заканчивается после полной обработки ответа. Время ожидания включает все повторные попытки. Если значение не задано, используется значение по умолчанию — 15 секунд.

nanos

integer

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

seconds

string / обязательный

Длительность с точностью до секунды. Значение должно находиться в диапазоне от 0 до 315,576,000,000 включительно.

url_rewrite

dictionary

Параметры изменения URL запроса перед его перенаправлением соответствующей службе.

host_rewrite

string

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

path_prefix_rewrite

string

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

weighted_backend_services

list / elements=dictionary

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

backend_service

dictionary / обязательный

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

Это поле содержит ссылку на ресурс BackendService в GCP. Его можно задать двумя способами. Во-первых, можно указать словарь с ключом ‘selfLink’ и значением, равным selfLink ресурса. Кроме того, можно добавить `register: name-of-resource` в задачу gcp_compute_backend_service, а затем присвоить этому полю backend_service значение “{{ name-of-resource }}”

header_action

dictionary

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

request_headers_to_add

list / elements=dictionary

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

header_name

string / обязательный

Имя заголовка.

header_value

string / обязательный

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

replace

boolean / обязательный

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

Варианты:

  • false
  • true

request_headers_to_remove

list / elements=string

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

response_headers_to_add

list / elements=dictionary

Заголовки, которые добавляются к ответу перед его отправкой клиенту.

header_name

string / обязательный

Имя заголовка.

header_value

string / обязательный

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

replace

boolean / обязательный

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

Варианты:

  • false
  • true

response_headers_to_remove

list / elements=string

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

weight

integer / обязательный

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

Значение должно находиться в диапазоне от 0 до 1000.

service

dictionary

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

Это поле содержит ссылку на ресурс BackendService в GCP. Его можно задать двумя способами. Во-первых, можно указать словарь с ключом ‘selfLink’ и значением, равным selfLink ресурса. В качестве альтернативы можно добавить `register: name-of-resource` в задачу gcp_compute_backend_service, а затем задать для этого поля service значение “{{ name-of-resource }}”

url_redirect

dictionary

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

host_redirect

string

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

https_redirect

boolean

Если задано значение true, схема URL в перенаправленном запросе устанавливается в https.

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

Варианты:

  • false
  • true

path_redirect

string

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

Длина значения должна составлять от 1 до 1024 символов.

prefix_redirect

string

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

redirect_response_code

string

Код состояния HTTP для этого RedirectAction. Поддерживаются следующие значения: * MOVED_PERMANENTLY_DEFAULT — значение по умолчанию, соответствующее коду 301.

* FOUND, соответствует коду 302.

* SEE_OTHER, соответствует коду 303.

* TEMPORARY_REDIRECT, соответствует коду 307. В этом случае метод запроса сохраняется.

* PERMANENT_REDIRECT, соответствует коду 308. В этом случае метод запроса сохраняется.

Допустимые варианты: “FOUND”, “MOVED_PERMANENTLY_DEFAULT”, “PERMANENT_REDIRECT”, “SEE_OTHER”, “TEMPORARY_REDIRECT”

strip_query

boolean

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

Варианты:

  • false
  • true

route_rules

list / elements=dictionary

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

header_action

dictionary

Задает изменения заголовков запросов и ответов, которые необходимо применить для выбранной backendService. Указанный здесь headerAction применяется до pathMatchers[].headerAction и после pathMatchers[].routeRules[].r outeAction.weightedBackendService.backendServiceWeightAction[].headerAction.

request_headers_to_add

list / elements=dictionary

Заголовки, добавляемые к совпавшему запросу перед его пересылкой в backendService.

header_name

string / обязательный

Имя заголовка.

header_value

string / обязательный

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

replace

boolean / обязательный

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

Варианты:

  • false
  • true

request_headers_to_remove

list / elements=string

Список имен заголовков, которые необходимо удалить из запроса перед его пересылкой в backendService.

response_headers_to_add

list / elements=dictionary

Заголовки, которые добавляются к ответу перед его отправкой клиенту.

header_name

string / обязательный

Имя заголовка.

header_value

string / обязательный

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

replace

boolean / обязательный

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

Варианты:

  • false
  • true

response_headers_to_remove

list / elements=string

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

match_rules

list / elements=dictionary

Правила определения совпадения.

full_path_match

string

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

header_matches

list / elements=dictionary

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

exact_match

string

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

header_name

string / обязательный

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

invert_match

boolean

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

Варианты:

  • false
  • true

prefix_match

string

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

present_match

boolean

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

Варианты:

  • false
  • true

range_match

dictionary

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

range_end

integer / обязательный

Конец диапазона (не включается).

range_start

integer / обязательный

Начало диапазона (включается).

regex_match

string

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

Должен быть задан только один из параметров exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch или rangeMatch.

suffix_match

string

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

ignore_case

boolean

Указывает, что сопоставления prefixMatch и fullPathMatch чувствительны к регистру.

По умолчанию — false.

Варианты:

  • false
  • true

metadata_filters

list / elements=dictionary

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

filter_labels

list / elements=dictionary / обязательный

Список пар «метка — значение», которые должны соответствовать меткам в предоставленных метаданных согласно filterMatchCriteria. Список не должен быть пустым и может содержать не более 64 элементов.

name

string / обязательный

Имя метки метаданных. Имя должно содержать не менее 1 и не более 1024 символов.

value

string / обязательный

Значение метки должно совпадать с указанным значением. Длина value не может превышать 1024 символа.

filter_match_criteria

string / required

Определяет, как совпадения отдельных filterLabel в списке filterLabels учитываются при определении общего совпадения metadataFilter. Поддерживаются следующие значения: - MATCH_ANY: как минимум один из filterLabels должен соответствовать метке в предоставленных метаданных.

- MATCH_ALL: все filterLabels должны соответствовать меткам в предоставленных метаданных.

Допустимые варианты: “MATCH_ALL”, “MATCH_ANY”

prefix_match

string

Чтобы условие matchRule считалось выполненным, путь запроса должен начинаться с указанного значения prefixMatch. Значение prefixMatch должно начинаться с /. Его длина должна составлять от 1 до 1024 символов. Необходимо указать только один из параметров: prefixMatch, fullPathMatch или regexMatch.

query_parameter_matches

list / elements=dictionary

Задает список критериев сопоставления параметров запроса. Каждый из них должен соответствовать параметрам запроса в запросе.

exact_match

string

Сопоставление queryParameterMatch выполняется, если значение параметра точно совпадает с содержимым exactMatch. Необходимо задать только один из параметров: presentMatch, exactMatch или regexMatch.

name

string / required

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

present_match

boolean

Указывает, что сопоставление queryParameterMatch выполняется, если запрос содержит параметр запроса, независимо от того, задано ли для параметра значение. Необходимо задать только один из параметров: presentMatch, exactMatch или regexMatch.

Варианты:

  • false
  • true

regex_match

string

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

regex_match

string

Чтобы условие matchRule считалось выполненным, путь запроса после удаления параметров запроса и якоря, указанных в исходном URL, должен соответствовать регулярному выражению, заданному в regexMatch. Описание синтаксиса регулярных выражений см. на странице en.cppreference.com/w/cpp/regex/ecmascript. Необходимо указать только один из параметров: prefixMatch, fullPathMatch или regexMatch.

priority

integer / required

Для routeRules в заданном pathMatcher параметр priority определяет порядок, в котором балансировщик нагрузки обрабатывает routeRules. Правила routeRules проверяются по возрастанию приоритета, от наименьшего числа к наибольшему. Приоритет правила уменьшается с увеличением его номера (1, 2, 3, N+1). Применяется первое правило, соответствующее запросу.

Нельзя задавать одинаковый приоритет для двух или более правил routeRules.

Для каждого правила необходимо задать приоритет — число от 0 до 2147483647 включительно.

В нумерации приоритетов могут быть пропуски: это позволяет в будущем добавлять или удалять правила, не затрагивая остальные. Например, последовательность приоритетов 1, 2, 3, 4, 5, 9, 12, 16 допустима: в будущем можно добавить правила с номерами от 6 до 8, от 10 до 11 и от 13 до 15, не влияя на существующие правила.

route_action

dictionary

При совпадении с matchRule балансировщик нагрузки выполняет расширенные действия маршрутизации — например, переписывание URL и преобразование заголовков — перед перенаправлением запроса к выбранной серверной службе. Если в routeAction указаны weightedBackendServices, параметр service задавать нельзя. И наоборот, если задан service, routeAction не может содержать weightedBackendServices. Необходимо задать только один из параметров: routeAction или urlRedirect.

cors_policy

dictionary

Настройки разрешения междоменных запросов со стороны клиента. См. рекомендацию W3C по обмену ресурсами между источниками.

allow_credentials

boolean

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

Варианты:

  • false
  • true

allow_headers

list / elements=string

Задает содержимое заголовка Access-Control-Allow-Headers.

allow_methods

list / elements=string

Задает содержимое заголовка Access-Control-Allow-Methods.

allow_origin_regexes

list / elements=string

Задает шаблоны регулярных выражений для сопоставления с разрешенными источниками. Описание синтаксиса регулярных выражений см. на странице en.cppreference.com/w/cpp/regex/ecmascript. Источник разрешен, если он соответствует allow_origins или allow_origin_regex.

allow_origins

list / elements=string

Задает список источников, которым разрешено выполнять запросы CORS. Источник разрешен, если он соответствует allow_origins или allow_origin_regex.

disabled

boolean

Если значение равно true, политика CORS отключена.

что означает, что политика CORS действует. По умолчанию — false.

Варианты:

  • false
  • true

expose_headers

list / elements=string

Задает содержимое заголовка Access-Control-Expose-Headers.

max_age

integer

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

fault_injection_policy

dictionary

Настройки внедрения сбоев в трафик для проверки устойчивости клиентов к отказам серверной службы. При внедрении сбоев, когда клиенты отправляют запросы серверной службе, балансировщик нагрузки может задерживать часть запросов перед отправкой серверной службе. Аналогичным образом балансировщик нагрузки может прерывать часть запросов клиентов. Для клиентов, настроенных с параметром fault_injection_policy, параметры timeout и retry_policy игнорируются.

abort

dictionary

Настройки прерывания запросов клиентов в рамках внедрения сбоев.

http_status

integer

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

percentage

string

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

delay

dictionary

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

fixed_delay

dictionary

Задает значение фиксированного интервала задержки.

nanos

integer

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

seconds

string / required

Длительность с точностью до секунды. Значение должно быть от 0 до 315,576,000,000 включительно.

percentage

string

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

request_mirror_policy

dictionary

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

backend_service

dictionary / required

Ресурс BackendService, в который выполняется зеркалирование.

Это поле представляет ссылку на ресурс BackendService в GCP. Его можно задать двумя способами. Во-первых, можно указать словарь с ключом ‘selfLink’ и значением selfLink ресурса. Кроме того, можно добавить `register: name-of-resource` в задачу gcp_compute_backend_service, а затем присвоить этому полю backend_service значение “{{ name-of-resource }}”

retry_policy

dictionary

Задает политику повторных попыток для этого маршрута.

num_retries

integer / required

Задает допустимое количество повторных попыток. Это число должно быть > 0.

per_try_timeout

dictionary

Задает ненулевой тайм-аут для каждой повторной попытки.

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

nanos

integer

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

seconds

string / required

Длительность с точностью до секунды. Значение должно быть от 0 до 315,576,000,000 включительно.

retry_conditions

list / elements=string

Задает одно или несколько условий, при которых применяется это правило повторных попыток. Допустимые значения: * 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

dictionary

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

nanos

integer

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

seconds

string / required

Длительность с точностью до секунды. Значение должно быть от 0 до 315,576,000,000 включительно.

url_rewrite

dictionary

Настройки изменения URL запроса перед его перенаправлением к соответствующей службе.

host_rewrite

string

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

path_prefix_rewrite

string

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

weighted_backend_services

list / elements=dictionary

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

backend_service

dictionary / required

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

Это поле представляет ссылку на ресурс BackendService в GCP. Его можно задать двумя способами. Во-первых, можно указать словарь с ключом ‘selfLink’ и значением selfLink ресурса. Кроме того, можно добавить `register: name-of-resource` в задачу gcp_compute_backend_service, а затем присвоить этому полю backend_service значение “{{ name-of-resource }}”

header_action

dictionary

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

request_headers_to_add

list / elements=dictionary

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

header_name

string / обязательный

Имя заголовка.

header_value

string / обязательный

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

replace

boolean / обязательный

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

Варианты:

  • false
  • true

request_headers_to_remove

list / elements=string

Список имен заголовков, которые нужно удалить из запроса перед его перенаправлением в backendService.

response_headers_to_add

list / elements=dictionary

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

header_name

string / обязательный

Имя заголовка.

header_value

string / обязательный

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

replace

boolean / обязательный

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

Варианты:

  • false
  • true

response_headers_to_remove

list / elements=string

Список имен заголовков, которые нужно удалить из ответа перед его отправкой клиенту.

weight

integer / обязательный

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

Значение должно находиться в диапазоне от 0 до 1000.

service

dictionary

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

Это поле представляет собой ссылку на ресурс BackendService в GCP. Его можно указать двумя способами. Во-первых, можно задать словарь с ключом ‘selfLink’ и значением selfLink ресурса. Также можно добавить `register: name-of-resource` в задачу gcp_compute_backend_service, а затем задать для этого поля service значение “{{ name-of-resource }}”

url_redirect

dictionary

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

host_redirect

string

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

https_redirect

boolean

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

Устанавливать значение true для TargetHttpsProxy запрещено. По умолчанию — false.

Варианты:

  • false
  • true

path_redirect

string

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

prefix_redirect

string

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

redirect_response_code

string

Код состояния HTTP для этого RedirectAction. Поддерживаются следующие значения: * MOVED_PERMANENTLY_DEFAULT — значение по умолчанию, соответствующее коду 301.

* FOUND — соответствует коду 302.

* SEE_OTHER — соответствует коду 303.

* TEMPORARY_REDIRECT — соответствует коду 307. В этом случае метод запроса сохраняется.

* PERMANENT_REDIRECT — соответствует коду 308. В этом случае метод запроса сохраняется.

Допустимые варианты: “FOUND”, “MOVED_PERMANENTLY_DEFAULT”, “PERMANENT_REDIRECT”, “SEE_OTHER”, “TEMPORARY_REDIRECT”

strip_query

boolean

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

Варианты:

  • false
  • true

project

string

Проект Google Cloud Platform, который будет использоваться.

scopes

list / elements=string

Массив используемых областей действия

service_account_contents

jsonarg

Содержимое JSON-файла учетной записи службы в виде словаря или JSON-строки, представляющей это содержимое.

service_account_email

string

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

service_account_file

path

Путь к JSON-файлу учетной записи службы, если в качестве типа выбрано serviceaccount.

state

string

Должен ли указанный объект существовать в GCP

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

tests

list / elements=dictionary

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

description

string

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

host

string / обязательный

Часть URL, содержащая хост.

path

string / обязательный

Часть URL, содержащая путь.

service

dictionary / обязательный

Ожидаемый ресурс BackendService, которому должен соответствовать указанный URL.

Это поле представляет собой ссылку на ресурс BackendService в GCP. Его можно указать двумя способами. Во-первых, можно задать словарь с ключом ‘selfLink’ и значением selfLink ресурса. Также можно добавить `register: name-of-resource` в задачу gcp_compute_backend_service, а затем задать для этого поля service значение “{{ name-of-resource }}”

Примечания

Примечание

  • Справочник API: https://cloud.google.com/compute/docs/reference/rest/v1/urlMaps
  • Для аутентификации можно задать service_account_file с помощью переменной окружения GCP_SERVICE_ACCOUNT_FILE.
  • Для аутентификации можно задать service_account_contents с помощью переменной окружения GCP_SERVICE_ACCOUNT_CONTENTS.
  • Для аутентификации можно задать service_account_email с помощью переменной окружения GCP_SERVICE_ACCOUNT_EMAIL.
  • Для аутентификации можно задать access_token с помощью переменной окружения GCP_ACCESS_TOKEN.
  • Для аутентификации можно задать auth_kind с помощью переменной окружения GCP_AUTH_KIND.
  • Для аутентификации можно задать scopes с помощью переменной окружения GCP_SCOPES.
  • Значения переменных окружения используются только в том случае, если значения в плейбуке не заданы.
  • Параметры service_account_email и service_account_file взаимоисключающие.

Примеры

- name: create a instance group
  google.cloud.gcp_compute_instance_group:
    name: instancegroup-urlmap
    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
  google.cloud.gcp_compute_http_health_check:
    name: httphealthcheck-urlmap
    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
  google.cloud.gcp_compute_backend_service:
    name: backendservice-urlmap
    backends:
    - group: "{{ instancegroup.selfLink }}"
    health_checks:
    - "{{ healthcheck.selfLink }}"
    enable_cdn: 'true'
    project: "{{ gcp_project }}"
    auth_kind: "{{ gcp_cred_kind }}"
    service_account_file: "{{ gcp_cred_file }}"
    state: present
  register: backendservice

- name: create a URL map
  google.cloud.gcp_compute_url_map:
    name: test_object
    default_service: "{{ backendservice }}"
    project: test_project
    auth_kind: serviceaccount
    service_account_file: "/tmp/auth.pem"
    state: present

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

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

Ключ

Описание

creationTimestamp

string

Временная метка создания в текстовом формате RFC3339.

Возвращается: при успехе

defaultRouteAction

complex

defaultRouteAction применяется, если ни одно из правил hostRules не соответствует запросу. Перед отправкой запроса выбранному серверу-приложению балансировщик нагрузки выполняет расширенные действия маршрутизации, такие как переписывание 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

Параметры внедрения сбоев в трафик для проверки устойчивости клиентов к отказам серверной службы.

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

Параметры timeout и retryPolicy игнорируются клиентами, для которых настроен faultInjectionPolicy.

Возвращается: при успехе

abort

complex

Параметры прерывания запросов клиентов при внедрении сбоев.

Возвращается: при успехе

httpStatus

integer

Код состояния HTTP, используемый для прерывания запроса.

Значение должно быть в диапазоне от 200 до 599 включительно.

Возвращается: при успехе

percentage

string

Доля трафика (соединений/операций/запросов), которая будет прервана при внедрении сбоев.

Значение должно быть в диапазоне от 0.0 до 100.0 включительно.

Возвращается: при успехе

delay

complex

Параметры задержки запросов клиентов при внедрении сбоев перед их отправкой серверной службе.

Возвращается: при успехе

fixedDelay

complex

Задает значение фиксированного интервала задержки.

Возвращается: при успехе

nanos

integer

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

Возвращается: при успехе

seconds

string

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

Примечание: эти границы вычислены следующим образом: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years .

Возвращается: при успехе

percentage

string

Доля трафика (соединений/операций/запросов), в котором будет введена задержка при внедрении сбоев.

Значение должно быть в диапазоне от 0.0 до 100.0 включительно.

Возвращается: при успехе

requestMirrorPolicy

complex

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

Балансировщик нагрузки не ожидает ответов от теневой службы. Перед отправкой трафика теневой службе к заголовку host / authority добавляется суффикс -shadow.

Возвращается: при успехе

backendService

dictionary

Полный или частичный URL ресурса BackendService, в который направляется зеркальная копия.

Возвращается: при успехе

retryPolicy

complex

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

Возвращается: при успехе

numRetries

integer

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

Возвращается: при успехе

perTryTimeout

complex

Задает ненулевое время ожидания для каждой повторной попытки.

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

Возвращается: при успехе

nanos

integer

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

Возвращается: при успехе

seconds

string

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

Примечание: эти границы вычислены следующим образом: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years .

Возвращается: при успехе

retryConditions

list / elements=string

Задает одно или несколько условий применения этого правила повторных попыток. Допустимые значения: * 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

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

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

Возвращается: при успехе

nanos

integer

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

Возвращается: при успехе

seconds

string

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

Примечание: эти границы вычислены следующим образом: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years .

Возвращается: при успехе

urlRewrite

complex

Параметры изменения URL запроса перед его перенаправлением в соответствующую службу.

Возвращается: при успехе

hostRewrite

string

Перед перенаправлением запроса в выбранную службу его заголовок host заменяется содержимым hostRewrite.

Значение должно содержать от 1 до 255 символов.

Возвращается: при успехе

pathPrefixRewrite

string

Перед перенаправлением запроса выбранной серверной службе соответствующая часть пути запроса заменяется значением pathPrefixRewrite.

Значение должно содержать от 1 до 1024 символов.

Возвращается: при успехе

weightedBackendServices

complex

Список серверных служб с весами, в которые направляется трафик при совпадении с маршрутом.

Веса определяют долю трафика, поступающего в соответствующую серверную службу.

Если весь трафик должен направляться в одну серверную службу, необходимо указать одну weightedBackendService с ненулевым значением weight.

После определения backendService и перед отправкой запроса серверной службе применяются расширенные действия маршрутизации, например переписывание URL и преобразование заголовков, в соответствии с дополнительными параметрами, заданными в этом HttpRouteAction.

Возвращается: при успехе

backendService

dictionary

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

Возвращается: при успехе

headerAction

complex

Задает изменения заголовков запросов и ответов, применяемые к выбранной backendService.

Указанный здесь headerAction применяется до headerAction во внешних элементах HttpRouteRule, PathMatcher и UrlMap.

Возвращается: при успехе

requestHeadersToAdd

complex

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

Возвращается: при успехе

headerName

string

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

Возвращается: при успехе

headerValue

string

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

Возвращается: при успехе

replace

boolean

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

Если значение равно true, headerValue устанавливается для заголовка, заменяя все ранее заданные значения этого заголовка.

Возвращается: при успехе

requestHeadersToRemove

list / elements=string

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

Возвращается: при успехе

responseHeadersToAdd

complex

Заголовки, добавляемые к ответу перед его отправкой клиенту.

Возвращается: при успехе

headerName

string

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

Возвращается: при успехе

headerValue

string

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

Возвращается: успешное выполнение

replace

boolean

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

Если значение равно true, для заголовка устанавливается headerValue, а все ранее заданные значения этого заголовка удаляются.

Возвращается: успешное выполнение

responseHeadersToRemove

list / elements=string

Список имён заголовков, которые необходимо удалить из ответа, прежде чем отправить его клиенту.

Возвращается: успешное выполнение

weight

integer

Определяет долю трафика, отправляемого в backendService и вычисляемого как weight / (сумма всех значений weight у weightedBackendService в routeAction).

Выбор службы backend выполняется только для нового трафика. После того как запрос пользователя направлен в backendService, последующие запросы будут отправляться в ту же backendService в соответствии с политикой привязки сеансов BackendService.

Значение должно находиться в диапазоне от 0 до 1000.

Возвращается: успешное выполнение

defaultService

dictionary

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

Возвращается: успешное выполнение

defaultUrlRedirect

complex

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

Возвращается: успешное выполнение

hostRedirect

string

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

Возвращается: успешное выполнение

httpsRedirect

boolean

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

Возвращается: успешное выполнение

pathRedirect

string

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

Возвращается: успешное выполнение

prefixRedirect

string

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

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

Возвращается: успешное выполнение

redirectResponseCode

string

Код состояния HTTP для этого RedirectAction. Поддерживаются следующие значения: * MOVED_PERMANENTLY_DEFAULT — значение по умолчанию, соответствующее коду 301.

* FOUND — соответствует коду 302.

* SEE_OTHER — соответствует коду 303.

* TEMPORARY_REDIRECT — соответствует коду 307. В этом случае метод запроса сохраняется.

* PERMANENT_REDIRECT — соответствует коду 308. В этом случае метод запроса сохраняется.

Возвращается: успешное выполнение

stripQuery

boolean

Если установлено значение true, перед перенаправлением запроса из исходного URL удаляется строка запроса. Если установлено значение false, строка запроса исходного URL сохраняется. По умолчанию установлено значение false.

Возвращается: успешное выполнение

description

string

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

Возвращается: успешное выполнение

fingerprint

string

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

Возвращается: успешное выполнение

headerAction

complex

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

Возвращается: успешное выполнение

requestHeadersToAdd

complex

Заголовки, добавляемые к совпавшему запросу перед его перенаправлением в backendService.

Возвращается: успешное выполнение

headerName

string

Имя заголовка.

Возвращается: успешное выполнение

headerValue

string

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

Возвращается: успешное выполнение

replace

boolean

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

Возвращается: успешное выполнение

requestHeadersToRemove

list / elements=string

Список имён заголовков, которые необходимо удалить из запроса перед его перенаправлением в backendService.

Возвращается: успешное выполнение

responseHeadersToAdd

complex

Заголовки, добавляемые к ответу перед его отправкой клиенту.

Возвращается: успешное выполнение

headerName

string

Имя заголовка.

Возвращается: успешное выполнение

headerValue

string

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

Возвращается: успешное выполнение

replace

boolean

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

Возвращается: успешное выполнение

responseHeadersToRemove

list / elements=string

Список имён заголовков, которые необходимо удалить из ответа, прежде чем отправить его клиенту.

Возвращается: успешное выполнение

hostRules

complex

Список правил HostRules для применения к URL.

Возвращается: успешное выполнение

description

string

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

Возвращается: успешное выполнение

hosts

list / elements=string

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

Возвращается: успешное выполнение

pathMatcher

string

Имя PathMatcher, используемого для сопоставления пути URL, если hostRule соответствует части URL с именем хоста.

Возвращается: успешное выполнение

id

integer

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

Возвращается: успешное выполнение

name

string

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

Возвращается: успешное выполнение

pathMatchers

complex

Список именованных PathMatchers для применения к URL.

Возвращается: успешное выполнение

defaultRouteAction

complex

Параметр defaultRouteAction применяется, если ни одно из правил pathRules или routeRules не совпадает. Перед передачей запроса выбранной backend балансировщик нагрузки выполняет расширенные действия маршрутизации, например переписывание 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

Параметры внедрения сбоев в трафик для проверки устойчивости клиентов к отказам службы backend.

При внедрении сбоев, когда клиенты отправляют запросы службе backend, балансировщик нагрузки может задерживать часть запросов перед их отправкой службе backend. Аналогичным образом балансировщик нагрузки может прерывать часть запросов клиентов.

Клиенты, настроенные с faultInjectionPolicy, игнорируют timeout и retryPolicy.

Возвращается: успешное выполнение

abort

complex

Параметры прерывания запросов клиентов в рамках внедрения сбоев.

Возвращается: успешное выполнение

httpStatus

integer

Код состояния HTTP, используемый для прерывания запроса.

Значение должно находиться в диапазоне от 200 до 599 включительно.

Возвращается: успешное выполнение

percentage

string

Процент трафика (соединений/операций/запросов), который будет прерван в рамках инъекции сбоев.

Значение должно быть в диапазоне от 0.0 до 100.0 включительно.

Возвращается: успешно

delay

complex

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

Возвращается: успешно

fixedDelay

complex

Задает значение фиксированного интервала задержки.

Возвращается: успешно

nanos

integer

Промежуток времени, представляющий долю секунды с точностью до наносекунды. Длительности менее одной секунды представляются полем seconds со значением 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

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

Балансировщик нагрузки не ожидает ответов от теневой службы. Перед отправкой трафика в теневую службу к заголовку host / authority добавляется суффикс -shadow.

Возвращается: успешно

backendService

dictionary

Полный или частичный URL ресурса BackendService, в который направляется зеркальный трафик.

Возвращается: успешно

retryPolicy

complex

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

Возвращается: успешно

numRetries

integer

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

Возвращается: успешно

perTryTimeout

complex

Задает ненулевое время ожидания для каждой повторной попытки.

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

Возвращается: успешно

nanos

integer

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

Возвращается: успешно

seconds

string

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

Примечание: эти границы вычислены следующим образом: 60 сек/мин * 60 мин/ч * 24 ч/день * 365.25 дней/год * 10000 лет.

Возвращается: успешно

retryConditions

list / elements=string

Задает одно или несколько условий применения этого правила повторных попыток. Допустимые значения: * 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

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

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

Возвращается: успешно

nanos

integer

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

Возвращается: успешно

seconds

string

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

Примечание: эти границы вычислены следующим образом: 60 сек/мин * 60 мин/ч * 24 ч/день * 365.25 дней/год * 10000 лет.

Возвращается: успешно

urlRewrite

complex

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

Возвращается: успешно

hostRewrite

string

Перед перенаправлением запроса в выбранную службу его заголовок host заменяется содержимым hostRewrite.

Значение должно содержать от 1 до 255 символов.

Возвращается: успешно

pathPrefixRewrite

string

Перед перенаправлением запроса в выбранную службу серверной части соответствующая часть пути запроса заменяется значением pathPrefixRewrite.

Значение должно содержать от 1 до 1024 символов.

Возвращается: успешно

weightedBackendServices

complex

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

Веса определяют долю трафика, направляемую в соответствующие службы серверной части.

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

После определения backendService и перед перенаправлением запроса в службу серверной части применяются расширенные действия маршрутизации, например перезапись URL и преобразование заголовков, в соответствии с дополнительными настройками, заданными в этом HttpRouteAction.

Возвращается: успешно

backendService

dictionary

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

Возвращается: успешно

headerAction

complex

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

Указанный здесь headerAction применяется до headerAction во внешних HttpRouteRule, PathMatcher и UrlMap.

Возвращается: успешно

requestHeadersToAdd

complex

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

Возвращается: успешно

headerName

string

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

Возвращается: успешно

headerValue

string

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

Возвращается: успешно

replace

boolean

Если значение false, headerValue добавляется к уже существующим значениям заголовка.

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

Возвращается: успешно

requestHeadersToRemove

list / elements=string

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

Возвращается: успешно

responseHeadersToAdd

complex

Заголовки, добавляемые к ответу перед его отправкой клиенту.

Возвращается: успешно

headerName

string

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

Возвращается: успешно

headerValue

string

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

Возвращается: успешно

replace

boolean

Если значение false, headerValue добавляется к уже существующим значениям заголовка.

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

Возвращается: успешно

responseHeadersToRemove

list / elements=string

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

Возвращается: успешно

weight

integer

Задает долю трафика, направляемого в backendService. Она вычисляется как weight / (сумма всех весов weightedBackendService в routeAction).

Выбор службы серверной части выполняется только для нового трафика. После того как запрос пользователя направлен в backendService, последующие запросы отправляются в ту же backendService согласно политике привязки сеанса этой BackendService.

Значение должно быть в диапазоне от 0 до 1000.

Возвращается: успешно

defaultService

dictionary

Полный или частичный 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

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

Возвращается: успешно

hostRedirect

string

Имя узла, которое будет использоваться в ответе перенаправления вместо указанного в запросе. Значение должно содержать от 1 до 255 символов.

Возвращается: успешно

httpsRedirect

boolean

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

Возвращается: успешно

pathRedirect

string

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

Возвращается: успешно

prefixRedirect

string

Префикс, заменяющий prefixMatch, заданный в HttpRouteRuleMatch, при этом оставшаяся часть URL сохраняется перед перенаправлением запроса.

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

Возвращается: успешно

redirectResponseCode

string

Код состояния HTTP для этого RedirectAction. Поддерживаемые значения: * MOVED_PERMANENTLY_DEFAULT — значение по умолчанию, соответствующее коду 301.

* FOUND — соответствует коду 302.

* SEE_OTHER — соответствует коду 303.

* TEMPORARY_REDIRECT — соответствует коду 307. В этом случае метод запроса сохраняется.

* PERMANENT_REDIRECT — соответствует коду 308. В этом случае метод запроса сохраняется.

Возвращается: успешно

stripQuery

boolean

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

Возвращается: при успешном выполнении

description

string

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

Возвращается: при успешном выполнении

headerAction

complex

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

Возвращается: при успешном выполнении

requestHeadersToAdd

complex

Заголовки, которые добавляются к соответствующему запросу перед его передачей в backendService.

Возвращается: при успешном выполнении

headerName

string

Имя заголовка.

Возвращается: при успешном выполнении

headerValue

string

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

Возвращается: при успешном выполнении

replace

boolean

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

Возвращается: при успешном выполнении

requestHeadersToRemove

list / elements=string

Список имен заголовков, которые необходимо удалить из запроса перед его передачей в backendService.

Возвращается: при успешном выполнении

responseHeadersToAdd

complex

Заголовки, которые добавляются к ответу перед его отправкой клиенту.

Возвращается: при успешном выполнении

headerName

string

Имя заголовка.

Возвращается: при успешном выполнении

headerValue

string

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

Возвращается: при успешном выполнении

replace

boolean

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

Возвращается: при успешном выполнении

responseHeadersToRemove

list / elements=string

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

Возвращается: при успешном выполнении

name

string

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

Возвращается: при успешном выполнении

pathRules

complex

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

Возвращается: при успешном выполнении

paths

list / elements=string

Список шаблонов путей для сопоставления. Каждый путь должен начинаться с /, а символ \* допускается только в конце после /. Строка, передаваемая сопоставителю путей, не включает текст после первого символа ? или #; эти символы здесь запрещены.

Возвращается: при успешном выполнении

routeAction

complex

При совпадении пути балансировщик нагрузки выполняет дополнительные действия маршрутизации, например переписывание URL и преобразование заголовков, прежде чем передать запрос выбранному серверному компоненту. Если в routeAction указаны weightedBackendServices, параметр service задавать нельзя. И наоборот, если задан service, routeAction не может содержать weightedBackendServices. Необходимо задать только один из параметров: routeAction или urlRedirect.

Возвращается: при успешном выполнении

corsPolicy

complex

Спецификация разрешения междоменных запросов со стороны клиента. См. рекомендацию W3C по совместному использованию ресурсов между источниками.

Возвращается: при успешном выполнении

allowCredentials

boolean

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

Возвращается: при успешном выполнении

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. Источник разрешен, если он соответствует allow_origins или allow_origin_regex.

Возвращается: при успешном выполнении

allowOrigins

list / elements=string

Задает список источников, которым разрешено выполнять запросы CORS. Источник разрешен, если он соответствует allow_origins или allow_origin_regex.

Возвращается: при успешном выполнении

disabled

boolean

Если задано значение true, политика CORS отключена.

Возвращается: при успешном выполнении

exposeHeaders

list / elements=string

Задает содержимое заголовка Access-Control-Expose-Headers.

Возвращается: при успешном выполнении

maxAge

integer

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

Возвращается: при успешном выполнении

faultInjectionPolicy

complex

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

Возвращается: при успешном выполнении

abort

complex

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

Возвращается: при успешном выполнении

httpStatus

integer

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

Возвращается: при успешном выполнении

percentage

string

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

Возвращается: при успешном выполнении

delay

complex

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

Возвращается: при успешном выполнении

fixedDelay

complex

Задает значение фиксированного интервала задержки.

Возвращается: при успешном выполнении

nanos

integer

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

Возвращается: при успешном выполнении

seconds

string

Длительность времени с точностью до секунды. Допустимый диапазон — от 0 до 315,576,000,000 включительно.

Возвращается: при успешном выполнении

percentage

string

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

Возвращается: при успешном выполнении

requestMirrorPolicy

complex

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

Возвращается: при успешном выполнении

backendService

dictionary

Ресурс BackendService, в который выполняется зеркалирование.

Возвращается: при успешном выполнении

retryPolicy

complex

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

Возвращается: при успешном выполнении

numRetries

integer

Задает допустимое количество повторных попыток. Это число должно быть больше 0.

Возвращается: при успешном выполнении

perTryTimeout

complex

Задает ненулевое время ожидания для каждой повторной попытки.

Возвращается: при успешном выполнении

nanos

integer

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

Возвращается: при успешном выполнении

seconds

string

Длительность времени с точностью до секунды. Допустимый диапазон — от 0 до 315,576,000,000 включительно.

Возвращается: при успешном выполнении

retryConditions

list / elements=string

Задает одно или несколько условий, при которых применяется это правило повторных попыток. Допустимые значения: * 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

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

Возвращается: при успешном выполнении

nanos

integer

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

Возвращается: при успешном выполнении

seconds

string

Промежуток времени с точностью до секунды. Значение должно находиться в диапазоне от 0 до 315,576,000,000 включительно.

Возвращается: успешно

urlRewrite

complex

Параметры изменения URL запроса перед его перенаправлением в соответствующую службу.

Возвращается: успешно

hostRewrite

string

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

Возвращается: успешно

pathPrefixRewrite

string

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

Возвращается: успешно

weightedBackendServices

complex

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

Возвращается: успешно

backendService

dictionary

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

Возвращается: успешно

headerAction

complex

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

Возвращается: успешно

requestHeadersToAdd

complex

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

Возвращается: успешно

headerName

string

Имя заголовка.

Возвращается: успешно

headerValue

string

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

Возвращается: успешно

replace

boolean

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

Возвращается: успешно

requestHeadersToRemove

list / elements=string

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

Возвращается: успешно

responseHeadersToAdd

complex

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

Возвращается: успешно

headerName

string

Имя заголовка.

Возвращается: успешно

headerValue

string

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

Возвращается: успешно

replace

boolean

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

Возвращается: успешно

responseHeadersToRemove

list / elements=string

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

Возвращается: успешно

weight

integer

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

Значение должно находиться в диапазоне от 0 до 1000.

Возвращается: успешно

service

dictionary

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

Возвращается: успешно

urlRedirect

complex

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

Возвращается: успешно

hostRedirect

string

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

Возвращается: успешно

httpsRedirect

boolean

Если задано значение true, схема URL в перенаправленном запросе устанавливается в https.

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

Возвращается: успешно

pathRedirect

string

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

Значение должно содержать от 1 до 1024 символов.

Возвращается: успешно

prefixRedirect

string

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

Возвращается: успешно

redirectResponseCode

string

Код состояния HTTP для этого RedirectAction. Поддерживаются следующие значения: * MOVED_PERMANENTLY_DEFAULT — значение по умолчанию, соответствующее коду 301.

* FOUND — соответствует коду 302.

* SEE_OTHER — соответствует коду 303.

* TEMPORARY_REDIRECT — соответствует коду 307. В этом случае метод запроса сохраняется.

* PERMANENT_REDIRECT — соответствует коду 308. В этом случае метод запроса сохраняется.

Возвращается: успешно

stripQuery

boolean

Если задано значение true, перед перенаправлением запроса из исходного URL удаляется строка запроса. Если задано значение false, строка запроса исходного URL сохраняется.

Возвращается: успешно

routeRules

complex

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

Возвращается: успешно

headerAction

complex

Определяет изменения заголовков запросов и ответов, которые должны применяться для выбранного backendService. Указанный здесь headerAction применяется до pathMatchers[].headerAction и после pathMatchers[].routeRules[].r outeAction.weightedBackendService.backendServiceWeightAction[].headerAction.

Возвращается: успешно

requestHeadersToAdd

complex

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

Возвращается: успешно

headerName

string

Имя заголовка.

Возвращается: успешно

headerValue

string

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

Возвращается: успешно

replace

boolean

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

Возвращается: успешно

requestHeadersToRemove

list / elements=string

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

Возвращается: успешно

responseHeadersToAdd

complex

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

Возвращается: успешно

headerName

string

Имя заголовка.

Возвращается: успешно

headerValue

string

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

Возвращается: успешно

replace

boolean

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

Возвращается: успешно

responseHeadersToRemove

list / elements=string

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

Возвращается: успешно

matchRules

complex

Правила определения совпадения.

Возвращается: успешно

fullPathMatch

string

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

Возвращается: успешно

headerMatches

complex

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

Возвращается: успешно

exactMatch

string

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

Возвращается: успешно

headerName

string

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

Возвращается: успешно

invertMatch

boolean

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

Возвращается: успешно

prefixMatch

string

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

Возвращается: при успехе

presentMatch

boolean

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

Возвращается: при успехе

rangeMatch

complex

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

Возвращается: при успехе

rangeEnd

integer

Конец диапазона (не включительно).

Возвращается: при успехе

rangeStart

integer

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

Возвращается: при успехе

regexMatch

string

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

Должен быть задан только один из параметров exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch или rangeMatch.

Возвращается: при успехе

suffixMatch

string

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

Возвращается: при успехе

ignoreCase

boolean

Указывает, что при сопоставлении prefixMatch и fullPathMatch учитывается регистр символов.

По умолчанию — false.

Возвращается: при успехе

metadataFilters

complex

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

Возвращается: при успехе

filterLabels

complex

Список пар «метка — значение», которые должны соответствовать меткам в переданных метаданных согласно filterMatchCriteria. Этот список не должен быть пустым и может содержать не более 64 элементов.

Возвращается: при успехе

name

string

Имя метки метаданных. Имя должно содержать не менее 1 и не более 1024 символов.

Возвращается: при успехе

value

string

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

Возвращается: при успехе

filterMatchCriteria

string

Определяет, как совпадения отдельных filterLabel в списке filterLabels влияют на общее совпадение с metadataFilter. Поддерживаются следующие значения: - MATCH_ANY: хотя бы один filterLabels должен соответствовать метке в переданных метаданных.

- MATCH_ALL: все filterLabels должны соответствовать меткам в переданных метаданных.

Возвращается: при успехе

prefixMatch

string

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

Возвращается: при успехе

queryParameterMatches

complex

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

Возвращается: при успехе

exactMatch

string

Условие queryParameterMatch считается выполненным, если значение параметра в точности совпадает с содержимым exactMatch. Должен быть задан только один из параметров presentMatch, exactMatch и regexMatch.

Возвращается: при успехе

name

string

Имя параметра запроса для сопоставления. Параметр запроса должен присутствовать в запросе; в противном случае проверка запроса не будет пройдена.

Возвращается: при успехе

presentMatch

boolean

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

Возвращается: при успехе

regexMatch

string

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

Возвращается: при успехе

regexMatch

string

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

Возвращается: при успехе

priority

integer

Для routeRules в заданном pathMatcher параметр priority определяет порядок обработки 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

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

Возвращается: при успехе

corsPolicy

complex

Настройки разрешения междоменных запросов со стороны клиента. См. рекомендацию W3C по обмену ресурсами между источниками.

Возвращается: при успехе

allowCredentials

boolean

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

Возвращается: при успехе

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. Источник разрешен, если он соответствует allow_origins или allow_origin_regex.

Возвращается: при успехе

allowOrigins

list / elements=string

Задает список источников, которым разрешено выполнять CORS-запросы. Источник разрешен, если он соответствует allow_origins или allow_origin_regex.

Возвращается: при успехе

disabled

boolean

Если значение true, политика CORS отключена.

Это означает, что политика CORS действует. По умолчанию — false.

Возвращается: при успехе

exposeHeaders

list / elements=string

Задает содержимое заголовка Access-Control-Expose-Headers.

Возвращается: при успехе

maxAge

integer

Задает срок хранения в кэше результатов предварительного запроса. Это соответствует содержимому заголовка Access-Control-Max-Age.

Возвращается: при успехе

faultInjectionPolicy

complex

Настройки внедрения ошибок в трафик для проверки устойчивости клиентов к сбоям серверной службы. При внедрении ошибок Loadbalancer может задерживать часть запросов клиентов перед отправкой их в серверную службу. Аналогично Loadbalancer может прерывать часть запросов клиентов. Клиенты, настроенные с fault_injection_policy, игнорируют timeout и retry_policy.

Возвращается: при успехе

abort

complex

Настройки прерывания запросов клиента в рамках внедрения ошибок.

Возвращается: при успехе

httpStatus

integer

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

Возвращается: при успехе

percentage

string

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

Возвращается: при успехе

delay

complex

Настройки задержки запросов клиента в рамках внедрения ошибок до их отправки в серверную службу.

Возвращается: при успехе

fixedDelay

complex

Задает значение интервала фиксированной задержки.

Возвращается: при успехе

nanos

integer

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

Возвращается: при успехе

seconds

string

Длительность с точностью до секунды. Значение должно быть от 0 до 315,576,000,000 включительно.

Возвращается: при успехе

percentage

string

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

Возвращается: при успехе

requestMirrorPolicy

complex

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

Возвращается: при успехе

backendService

dictionary

Ресурс BackendService, в который направляется зеркальный трафик.

Возвращается: при успехе

retryPolicy

complex

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

Возвращается: при успехе

numRetries

integer

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

Возвращается: success

perTryTimeout

complex

Указывает ненулевое время ожидания для каждой повторной попытки.

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

Возвращается: success

nanos

integer

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

Возвращается: success

seconds

string

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

Возвращается: success

retryConditions

list / elements=string

Указывает одно или несколько условий, при которых применяется это правило повторных попыток. Допустимые значения: * 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 .

Возвращается: success

timeout

complex

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

Возвращается: success

nanos

integer

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

Возвращается: success

seconds

string

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

Возвращается: success

urlRewrite

complex

Параметры изменения URL запроса перед его перенаправлением в соответствующую службу.

Возвращается: success

hostRewrite

string

Перед перенаправлением запроса в выбранную службу заголовок host запроса заменяется содержимым hostRewrite. Длина значения должна составлять от 1 до 255 символов.

Возвращается: success

pathPrefixRewrite

string

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

Возвращается: success

weightedBackendServices

complex

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

Возвращается: success

backendService

dictionary

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

Возвращается: success

headerAction

complex

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

Возвращается: success

requestHeadersToAdd

complex

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

Возвращается: success

headerName

string

Имя заголовка.

Возвращается: success

headerValue

string

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

Возвращается: success

replace

boolean

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

Возвращается: success

requestHeadersToRemove

list / elements=string

Список имён заголовков, которые необходимо удалить из запроса перед его перенаправлением в backendService.

Возвращается: success

responseHeadersToAdd

complex

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

Возвращается: success

headerName

string

Имя заголовка.

Возвращается: success

headerValue

string

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

Возвращается: success

replace

boolean

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

Возвращается: success

responseHeadersToRemove

list / elements=string

Список имён заголовков, которые необходимо удалить из ответа перед его отправкой клиенту.

Возвращается: success

weight

integer

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

Значение должно быть в диапазоне от 0 до 1000.

Возвращается: success

service

dictionary

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

Возвращается: success

urlRedirect

complex

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

Возвращается: success

hostRedirect

string

Имя хоста, используемое в ответе перенаправления вместо имени, указанного в запросе. Длина значения должна составлять от 1 до 255 символов.

Возвращается: success

httpsRedirect

boolean

Если установлено значение true, схема URL в перенаправленном запросе задаётся как https. Если установлено значение false, схема URL перенаправленного запроса остаётся такой же, как в исходном запросе. Этот параметр можно задавать только для UrlMaps, используемых в TargetHttpProxys.

Устанавливать значение true для TargetHttpsProxy нельзя. По умолчанию используется значение false.

Возвращается: success

pathRedirect

string

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

Возвращается: success

prefixRedirect

string

Префикс, заменяющий prefixMatch, указанный в HttpRouteRuleMatch; оставшаяся часть URL сохраняется при перенаправлении запроса.

Возвращается: success

redirectResponseCode

string

Код состояния HTTP для этого RedirectAction. Поддерживаемые значения: * MOVED_PERMANENTLY_DEFAULT — значение по умолчанию, соответствующее коду 301.

* FOUND — соответствует коду 302.

* SEE_OTHER — соответствует коду 303.

* TEMPORARY_REDIRECT — соответствует коду 307. В этом случае метод запроса сохраняется.

* PERMANENT_REDIRECT — соответствует коду 308. В этом случае метод запроса сохраняется.

Возвращается: success

stripQuery

boolean

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

Возвращается: success

tests

complex

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

Возвращается: success

description

string

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

Возвращается: success

host

string

Часть URL, содержащая имя хоста.

Возвращается: success

path

string

Часть URL, содержащая путь.

Возвращается: success

service

dictionary

Ожидаемый ресурс BackendService, которому должен соответствовать указанный URL.

Возвращается: success

Авторы

  • Google Inc. (@googlecloudplatform)

Ссылки на коллекцию

  • Отслеживание проблем
  • Главная страница
  • Репозиторий (исходный код)

© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/google/cloud/gcp_compute_url_map_module.html

Spec-Zone.ru

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