Spec-Zone.ru › Ansible

Модуль google.cloud.gcp_compute_url_map – Создаёт GCP UrlMap

Примечание

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

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

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

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

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

Описание

  • UrlMap используются для перенаправления запросов на службу обратного подключения на основе правил, определённых для хоста и пути входящего URL.

Требования

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

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

Параметры

Параметр

Комментарии

access_token

string

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

auth_kind

string / required

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

Варианты:

  • "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

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

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

timeout и retryPolicy будут игнорироваться клиентами, которые настроены с faultInjectionPolicy.

abort

dictionary

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

http_status

integer

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

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

percentage

string

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

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

delay

dictionary

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

fixed_delay

dictionary

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

nanos

integer

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

seconds

string

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

Примечание: эти границы вычисляются из: 60 сек/мин * 60 мин/час * 24 час/день * 365,25 дней/год * 10000 лет.

percentage

string

Процент трафика (подключений/операций/запросов), на котором будет введена задержка как часть инъекции ошибок.

Значение должно быть от 0,0 до 100,0 включительно.

request_mirror_policy

dictionary

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

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

backend_service

dictionary / required

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

Default: 1

per_try_timeout

dictionary

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

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

nanos

integer

Промежуток времени, составляющий долю секунды с разрешением в наносекунды. Продолжительности менее одной секунды представляются с полем 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: Loadbalancer предпримет попытку повтора, если служба бэкенда отвечает кодом ответа 5xx или если служба бэкенда вообще не отвечает, например: разрывы соединения, сброс, тайм-аут чтения, * сбой соединения и отклоненные потоки.

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

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

* retriable-4xx: Loadbalancer повторит попытку для повторяемых кодов ответа 4xx.

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

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

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

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

timeout

dictionary

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

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

nanos

integer

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

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

backend_service

dictionary

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

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

header_action

dictionary

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

headerAction, указанные здесь, вступают в силу до headerAction в окружающих HttpRouteRule, PathMatcher и UrlMap.

request_headers_to_add

list / elements=dictionary

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

header_name

string

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

header_value

string

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

replace

boolean

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

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

Варианты:

  • false ← (default)
  • true

request_headers_to_remove

list / elements=string

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

response_headers_to_add

list / elements=dictionary

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

header_name

string

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

header_value

string

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

replace

boolean

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

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

Варианты:

  • false ← (default)
  • true

response_headers_to_remove

list / elements=string

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

weight

integer

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

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

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

default_service

dictionary

Полный или частичный URL-адрес ресурса defaultService, на который перенаправляется трафик, если ни одно из правил hostRules не соответствует. Если дополнительно указан defaultRouteAction, дополнительные действия маршрутизации, такие как переписывание 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.

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

список / элементы=строка

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

host_rules

список / элементы=словарь

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

description

строка

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

hosts

список / элементы=строка / обязательно

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

path_matcher

строка / обязательно

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

name

строка / обязательно

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

path_matchers

список / элементы=словарь

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

default_route_action

словарь

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

cors_policy

словарь

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

allow_credentials

булево

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

Варианты:

  • false ← (по умолчанию)
  • true

allow_headers

список / элементы=строка

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

allow_methods

список / элементы=строка

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

allow_origin_regexes

список / элементы=строка

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

allow_origins

список / элементы=строка

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

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

disabled

булево

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

Варианты:

  • false ← (по умолчанию)
  • true

expose_headers

список / элементы=строка

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

max_age

целое

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

Это переводится в заголовок Access-Control-Max-Age.

fault_injection_policy

словарь

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

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

timeout и retryPolicy будут игнорироваться клиентами, настроенными с faultInjectionPolicy.

abort

словарь

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

http_status

целое число

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

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

percentage

строка

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

Значение должно быть между 0,0 и 100,0 включительно.

delay

словарь

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

fixed_delay

словарь

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

nanos

целое число

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

seconds

строка

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

Примечание: эти границы вычислены из: 60 сек/мин * 60 мин/ч * 24 ч/сут * 365,25 сут/год * 10000 лет .

percentage

строка

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

Значение должно быть между 0,0 и 100,0 включительно.

request_mirror_policy

словарь

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

Loadbalancer не ждет ответов от службы зеркалирования. Перед отправкой трафика в службу зеркалирования к хосту/заголовку авторизации добавляется -shadow.

backend_service

словарь / обязательно

Полный или частичный URL ресурса BackendService, который должен быть зеркально отображен.

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

retry_policy

словарь

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

num_retries

целое число

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

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

per_try_timeout

словарь

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

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

nanos

целое число

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

seconds

строка

Продолжительность времени с разрешением в секунду. Должно быть от 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

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

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

backend_service

dictionary

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

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

header_action

dictionary

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

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 ← (default)
  • 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 устанавливается для заголовка, отбрасывая любые значения, которые были установлены для этого заголовка.

Choices:

  • false ← (default)
  • true

response_headers_to_remove

list / elements=string

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

weight

integer

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

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

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

default_service

dictionary

Полный или частичный URL-адрес ресурса BackendService. Он будет использоваться, если ни одно из правил pathRules или routeRules, определенных этим PathMatcher, не соответствует.

Например, следующие URL-адреса являются допустимыми 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.

Это поле представляет собой ссылку на ресурс 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.

Choices:

  • false ← (default)
  • 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-адреса сохраняется.

Choices:

  • false ← (default)
  • true

description

string

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

header_action

dictionary

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

request_headers_to_add

list / elements=dictionary

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

header_name

string / required

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

header_value

string / required

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

replace

boolean / required

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

Choices:

  • false
  • true

request_headers_to_remove

list / elements=string

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

response_headers_to_add

list / elements=dictionary

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

header_name

string / required

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

header_value

string / required

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

replace

boolean / required

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

Choices:

  • false
  • true

response_headers_to_remove

list / elements=string

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

name

string / required

Имя, по которому к этому PathMatcher обращается HostRule.

path_rules

list / elements=dictionary

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

paths

list / elements=string / required

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

route_action

dictionary

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

cors_policy

dictionary

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

allow_credentials

boolean

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

Choices:

  • false ← (default)
  • 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 / required

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

Варианты:

  • false
  • true

expose_headers

list / elements=string

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

max_age

integer

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

fault_injection_policy

dictionary

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

abort

dictionary

Спецификация того, как прерываются запросы клиентов как часть инъекции ошибок.

http_status

integer / required

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

percentage

string / required

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

delay

dictionary

Спецификация того, как запросы клиентов задерживаются как часть инъекции ошибок, перед отправкой в бекенд-сервис.

fixed_delay

dictionary / required

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

nanos

integer

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

seconds

string / required

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

percentage

string / required

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

request_mirror_policy

dictionary

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

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

per_try_timeout

dictionary

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

nanos

integer

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

Промежуток времени, который является частью секунды с разрешением в наносекунды. Продолжительность менее одной секунды представляется с полем `seconds`, равным 0, и положительным полем `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 с весом, отличным от 0. После того как серверная служба идентифицирована и перед переадресацией запроса на серверную службу, действия расширенной маршрутизации, такие как переписывание URL-адресов и преобразование заголовков, применяются в зависимости от дополнительных параметров, указанных в этом HttpRouteAction.

backend_service

dictionary / required

Ресурс 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

строка / обязательно

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

header_value

строка / обязательно

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

replace

логическое / обязательно

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

Варианты:

  • false
  • true

request_headers_to_remove

список / элементы=строка

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

response_headers_to_add

список / элементы=словарь

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

header_name

строка / обязательно

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

header_value

строка / обязательно

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

replace

логическое / обязательно

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

Варианты:

  • false
  • true

response_headers_to_remove

список / элементы=строка

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

weight

целое число / обязательно

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

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

service

словарь

Ресурс backend service, на который направляется трафик, если совпадает это правило. Если дополнительно указан routeAction, применяются расширенные действия маршрутизации, такие как 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

словарь

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

host_redirect

строка

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

https_redirect

логическое

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

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

Варианты:

  • false ← (по умолчанию)
  • true

path_redirect

строка

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

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

prefix_redirect

строка

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

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

END_OF_DOCUMENT_MARKER

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 ← (default)
  • 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 / required

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

header_value

string / required

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

replace

boolean / required

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

Варианты:

  • false
  • true

request_headers_to_remove

list / elements=string

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

response_headers_to_add

list / elements=dictionary

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

header_name

string / required

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

header_value

string / required

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

replace

boolean / required

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

Варианты:

  • false
  • true

response_headers_to_remove

list / elements=string

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

match_rules

list / elements=dictionary

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

full_path_match

string

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

header_matches

list / elements=dictionary

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

exact_match

строка

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

header_name

строка / обязательно

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

invert_match

логическое значение

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

Варианты:

  • false ← (по умолчанию)
  • true

prefix_match

строка

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

present_match

логическое значение

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

Варианты:

  • false
  • true

range_match

словарь

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

range_end

целое число / обязательно

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

range_start

целое число / обязательно

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

regex_match

строка

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

Только одно из exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch или rangeMatch должно быть установлено.

suffix_match

строка

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

ignore_case

логическое значение

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

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

Варианты:

  • false ← (по умолчанию)
  • true

metadata_filters

список / элементы=словарь

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

filter_labels

список / элементы=словарь / обязательно

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

name

строка / обязательно

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

value

строка / обязательно

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

filter_match_criteria

строка / обязательно

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

  • MATCH_ALL: Все filterLabels должны иметь соответствующие метки в предоставленных метаданных.

Некоторые допустимые варианты включают: «MATCH_ALL», «MATCH_ANY»

END_OF_DOCUMENT_MARKER

prefix_match

строка

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

query_parameter_matches

список / элементы=словарь

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

exact_match

строка

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

name

строка / обязательно

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

present_match

булево

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

Варианты:

  • false
  • true

regex_match

строка

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

regex_match

строка

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

priority

целое число / обязательно

Для routeRules в данном pathMatcher приоритет определяет порядок, в котором балансировщик нагрузки будет интерпретировать 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

словарь

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

cors_policy

словарь

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

allow_credentials

булево

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

Варианты:

  • false ← (по умолчанию)
  • true

allow_headers

список / элементы=строка

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

allow_methods

список / элементы=строка

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

allow_origin_regexes

список / элементы=строка

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

allow_origins

список / элементы=строка

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

disabled

булево

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

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

Варианты:

  • false ← (по умолчанию)
  • true
END_OF_DOCUMENT_MARKER

expose_headers

list / elements=string

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

max_age

integer

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

fault_injection_policy

dictionary

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

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 / required

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

percentage

string

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

request_mirror_policy

dictionary

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

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

Промежуток времени, составляющий долю секунды с разрешением в наносекунды. Продолжительность менее одной секунды представлена полем `seconds`, равным 0, и положительным полем `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 с весом, установленным в ненулевое число. После идентификации backendService и перед переадресацией запроса на backendService применяются дополнительные действия маршрутизации, такие как переписывание URL и преобразование заголовков, в зависимости от дополнительных параметров, указанных в этом HttpRouteAction.

backend_service

dictionary / required

Ресурс 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 / required

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

header_value

string / required

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

replace

boolean / required

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

Варианты:

  • false
  • true

request_headers_to_remove

list / elements=string

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

response_headers_to_add

список / элементы=словарь

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

header_name

строка / обязательно

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

header_value

строка / обязательно

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

replace

логическое / обязательно

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

Варианты:

  • false
  • true

response_headers_to_remove

список / элементы=строка

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

weight

целое число / обязательно

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

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

service

словарь

Ресурс backend service, в который направляется трафик, если совпадает данное правило. Если дополнительно указан routeAction, выполняются продвинутые действия маршрутизации, такие как перенаправление 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

словарь

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

host_redirect

строка

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

https_redirect

логическое

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

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

Варианты:

  • false ← (по умолчанию)
  • true

path_redirect

строка

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

prefix_redirect

строка

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

redirect_response_code

строка

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

логическое

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

Варианты:

  • false ← (по умолчанию)
  • true

project

строка

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

scopes

список / элементы=строка

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

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 будет успешным только в том случае, если пройдут все тестовые случаи. Вы можете указать не более 100 тестов на UrlMap.

description

string

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

host

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

Часть хоста URL.

path

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

Часть пути URL.

service

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

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

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

Примечания

Примечание

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

строка

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

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

defaultRouteAction

сложный

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

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

Только одно из значений defaultRouteAction или defaultUrlRedirect должно быть задано.

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

corsPolicy

сложный

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

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

allowCredentials

булево

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

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

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

allowHeaders

список / элементы=строка

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

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

allowMethods

список / элементы=строка

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

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

allowOriginRegexes

список / элементы=строка

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

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

allowOrigins

список / элементы=строка

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

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

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

disabled

булево

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

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

exposeHeaders

список / элементы=строка

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

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

maxAge

целое число

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

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

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

faultInjectionPolicy

сложный

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

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

timeout и retryPolicy будут игнорироваться клиентами, настроенными с faultInjectionPolicy.

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

abort

сложный

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

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

httpStatus

целое число

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

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

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

percentage

строка

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

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

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

delay

сложный

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

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

END_OF_DOCUMENT_MARKER

fixedDelay

complex

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

Возвращено: success

nanos

integer

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

Возвращено: success

seconds

string

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

Примечание: эти границы вычисляются из: 60 сек/мин * 60 мин/час * 24 час/день * 365,25 дней/год * 10000 лет.

Возвращено: success

percentage

string

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

Значение должно быть от 0,0 до 100,0 включительно.

Возвращено: success

requestMirrorPolicy

complex

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

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

Возвращено: success

backendService

dictionary

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

Возвращено: success

retryPolicy

complex

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

Возвращено: success

numRetries

integer

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

Возвращено: success

perTryTimeout

complex

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

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

Возвращено: success

nanos

integer

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

Возвращено: success

seconds

string

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

Примечание: эти границы вычисляются из: 60 сек/мин * 60 мин/час * 24 час/день * 365,25 дней/год * 10000 лет.

Возвращено: success

retryConditions

list / elements=string

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

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

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

* retriable-4xx: Loadbalancer будет повторять попытки для повторяемых кодов ответа 4xx.

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

* refused-stream: Loadbalancer будет повторять попытки, если служба backend сбрасывает поток с кодом ошибки REFUSED_STREAM.

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

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

Возвращено: success

timeout

complex

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

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

Возвращено: success

nanos

integer

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

Возвращено: success

seconds

string

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

Примечание: эти границы вычисляются из: 60 сек/мин * 60 мин/час * 24 час/день * 365,25 дней/год * 10000 лет.

Возвращено: success

urlRewrite

complex

Спецификация для изменения URL запроса перед его переадресацией на выбранный сервис.

Возвращено: success

hostRewrite

string

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

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

Возвращено: success

pathPrefixRewrite

string

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

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

Возвращено: success

weightedBackendServices

complex

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

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

Если весь трафик должен поступать на один бэкэнд-сервис, должен быть один weightedBackendService с весом, отличным от 0.

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

Возвращено: success

backendService

dictionary

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

целое число

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

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

Значение должно быть между 0 и 1000.

Возвращаемое значение: успех

defaultService

словарь

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

Возвращаемое значение: успех

defaultUrlRedirect

сложное

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

Возвращаемое значение: успех

hostRedirect

строка

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

Возвращаемое значение: успех

httpsRedirect

булево

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

Возвращаемое значение: успех

pathRedirect

строка

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

Возвращаемое значение: успех

prefixRedirect

строка

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

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

Возвращаемое значение: успех

redirectResponseCode

строка

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

* FOUND, соответствующий 302.

* SEE_OTHER, соответствующий 303.

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

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

Возвращаемое значение: успех

stripQuery

булево

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

Возвращаемое значение: успех

description

строка

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

Возвращаемое значение: успех

fingerprint

строка

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

Возвращаемое значение: успех

headerAction

сложное

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

Возвращаемое значение: успех

requestHeadersToAdd

сложное

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

Возвращаемое значение: успех

headerName

строка

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

Возвращаемое значение: успех

headerValue

строка

Значение заголовка, которое нужно добавить.

Возвращаемое значение: успех

replace

булево

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

Возвращаемое значение: успех

END_OF_DOCUMENT_MARKER

requestHeadersToRemove

список / элементы=строка

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

Возвращаемое значение: успешно

responseHeadersToAdd

сложный

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

Возвращаемое значение: успешно

headerName

строка

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

Возвращаемое значение: успешно

headerValue

строка

Значение заголовка, которое нужно добавить.

Возвращаемое значение: успешно

replace

логическое

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

Возвращаемое значение: успешно

responseHeadersToRemove

список / элементы=строка

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

Возвращаемое значение: успешно

hostRules

сложный

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

Возвращаемое значение: успешно

description

строка

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

Возвращаемое значение: успешно

hosts

список / элементы=строка

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

Возвращаемое значение: успешно

pathMatcher

строка

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

Возвращаемое значение: успешно

id

целое число

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

Возвращаемое значение: успешно

name

строка

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

Возвращаемое значение: успешно

pathMatchers

сложный

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

Возвращаемое значение: успешно

defaultRouteAction

сложный

defaultRouteAction срабатывает, когда ни одно из pathRules или routeRules не соответствует условиям. Load balancer выполняет расширенные действия маршрутизации, такие как изменение URL, преобразование заголовков и т.д., перед пересылкой запроса на выбранный backend. Если defaultRouteAction указывает какие-либо weightedBackendServices, defaultService не должен быть установлен. В противном случае, если defaultService установлен, defaultRouteAction не может содержать никаких weightedBackendServices. Только одно из defaultRouteAction или defaultUrlRedirect должно быть установлено.

Возвращаемое значение: успешно

corsPolicy

сложный

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

Возвращаемое значение: успешно

allowCredentials

логическое

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

Это переводится в заголовок Access-Control-Allow-Credentials.

Возвращаемое значение: успешно

allowHeaders

список / элементы=строка

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

Возвращаемое значение: успешно

allowMethods

список / элементы=строка

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

Возвращаемое значение: успешно

allowOriginRegexes

list / elements=string

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

Возвращено: success

allowOrigins

list / elements=string

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

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

Возвращено: success

disabled

boolean

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

Возвращено: success

exposeHeaders

list / elements=string

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

Возвращено: success

maxAge

integer

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

Это преобразуется в заголовок Access-Control-Max-Age.

Возвращено: success

faultInjectionPolicy

complex

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

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

timeout и retryPolicy будут игнорироваться клиентами, которые настроены с faultInjectionPolicy.

Возвращено: success

abort

complex

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

Возвращено: success

httpStatus

integer

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

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

Возвращено: success

percentage

string

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

Значение должно быть от 0,0 до 100,0 включительно.

Возвращено: success

delay

complex

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

Возвращено: success

fixedDelay

complex

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

Возвращено: success

nanos

integer

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

Возвращено: success

seconds

string

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

Примечание: эти границы вычисляются из: 60 сек/мин * 60 мин/час * 24 час/день * 365,25 дней/год * 10000 лет.

Возвращено: success

percentage

string

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

Значение должно быть от 0,0 до 100,0 включительно.

Возвращено: success

requestMirrorPolicy

complex

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

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

Возвращено: success

backendService

dictionary

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

Возвращено: success

retryPolicy

complex

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

Возвращено: success

numRetries

integer

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

Возвращено: success

perTryTimeout

complex

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

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

Возвращено: success

nanos

integer

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

Возвращено: success

seconds

string

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

Примечание: эти границы вычисляются из: 60 сек/мин * 60 мин/час * 24 час/день * 365,25 дней/год * 10000 лет.

Возвращено: 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

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

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

Возвращено: success

nanos

integer

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

Возвращено: success

seconds

string

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

Примечание: эти границы вычисляются из: 60 сек/мин * 60 мин/час * 24 час/день * 365,25 дней/год * 10000 лет.

Возвращено: success

urlRewrite

complex

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

Возвращено: success

hostRewrite

string

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

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

Возвращено: success

pathPrefixRewrite

string

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

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

Возвращено: success

weightedBackendServices

complex

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

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

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

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

Возвращено: success

backendService

dictionary

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

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

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

Возвращено: success

defaultService

dictionary

Полный или частичный URL-адрес ресурса BackendService. Он будет использоваться, если ни одно из правил pathRules или routeRules, определенных этим PathMatcher, не соответствует. Например, следующие URL-адреса являются допустимыми 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.

Возвращено: success

defaultUrlRedirect

complex

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

Возвращено: 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 перед перенаправлением запроса.

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

Возвращено: 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 сохраняется.

Возвращено: success

description

string

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

Возвращено: success

headerAction

complex

Указывает изменения заголовков запроса и ответа, которые должны вступить в силу для выбранного backendService. HeaderAction, указанные здесь, применяются после совпадения HttpRouteRule HeaderAction и перед HeaderAction в 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

name

string

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

Возвращено: success

pathRules

complex

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

Возвращено: success

paths

list / elements=string

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

Возвращено: success

routeAction

complex

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

Возвращено: success

corsPolicy

complex

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

Возвращено: success

allowCredentials

boolean

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

Возвращено: success

allowHeaders

list / elements=string

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

Возвращено: success

allowMethods

list / elements=string

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

Возвращено: success

allowOriginRegexes

list / elements=string

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

Возвращено: success

allowOrigins

list / elements=string

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

Возвращено: success

disabled

boolean

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

Возвращено: success

exposeHeaders

list / elements=string

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

Возвращено: success

maxAge

integer

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

Возвращено: success

faultInjectionPolicy

complex

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

Возвращено: success

abort

complex

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

Возвращено: success

httpStatus

integer

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

Возвращено: success

percentage

string

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

Возвращено: success

delay

complex

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

Возвращено: success

fixedDelay

complex

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

Возвращено: success

nanos

integer

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

Возвращено: success

seconds

string

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

Возвращено: success

percentage

string

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

Возвращено: success

requestMirrorPolicy

complex

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

Возвращено: success

backendService

dictionary

Зеркалируемый ресурс BackendService.

Возвращено: success

retryPolicy

complex

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

Возвращено: success

numRetries

integer

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

Возвращено: success

perTryTimeout

complex

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

Возвращено: success

nanos

integer

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

Возвращено: success

seconds

string

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

Возвращено: success

retryConditions

list / elements=string

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

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

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

* retriable-4xx: Loadbalancer повторит попытку для повторяемых кодов ответа 4xx.

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

* refused-stream: Loadbalancer повторит попытку, если бэкенд-сервис сбрасывает поток с кодом ошибки REFUSED_STREAM. Этот тип сброса указывает на то, что повторение безопасно.

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

Возвращено: 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 с весом, отличным от 0. После идентификации 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). Выбор службы backend определяется только для нового трафика. После того, как запрос пользователя был направлен в службу backendService, последующие запросы будут отправляться в ту же службу backendService, как определено политикой соответствия сеанса BackendService.

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

Возвращено: success

service

dictionary

Ресурс службы backend, на который направляется трафик, если это правило соответствует. Если дополнительно указан routeAction, то действия расширенной маршрутизации, такие как переписывание URL-адресов и т. д., вступают в силу до отправки запроса на backend. Однако, если указан 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-адреса перед перенаправлением запроса. prefixRedirect не может быть предоставлен вместе с pathRedirect. Укажите один или ни одного. Если ни один из них не указан, для перенаправления будет использоваться путь исходного запроса. Значение должно быть от 1 до 1024 символов.

Возвращено: 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-адреса сохраняется.

Возвращено: success

routeRules

complex

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

Возвращено: success

headerAction

complex

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

Возвращено: 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

matchRules

complex

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

Возвращено: success

fullPathMatch

string

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

Возвращено: success

headerMatches

complex

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

Возвращено: success

exactMatch

string

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

Возвращено: success

headerName

string

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

Возвращено: success

invertMatch

boolean

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

Возвращено: success

prefixMatch

string

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

Возвращено: success

presentMatch

boolean

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

Возвращено: success

rangeMatch

complex

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

Возвращено: success

rangeEnd

integer

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

Возвращено: success

rangeStart

integer

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

Возвращено: success

regexMatch

string

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

Должно быть установлено только одно из значений: exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch или rangeMatch.

Возвращается: success

suffixMatch

string

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

Возвращается: success

ignoreCase

boolean

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

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

Возвращается: success

metadataFilters

complex

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

Возвращается: success

filterLabels

complex

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

Возвращается: success

name

string

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

Возвращается: success

value

string

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

Возвращается: success

filterMatchCriteria

string

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

  • MATCH_ALL: Все filterLabels должны иметь совпадающие метки в предоставленных метаданных.

Возвращается: success

prefixMatch

string

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

Возвращается: success

queryParameterMatches

complex

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

Возвращается: success

exactMatch

string

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

Возвращается: success

name

string

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

Возвращается: success

presentMatch

boolean

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

Возвращается: success

regexMatch

string

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

Возвращается: success

regexMatch

string

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

Возвращается: success

priority

integer

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

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

Приоритет для каждого правила должен быть установлен в число от 0 до 2147483647 включительно.

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

Returned: success

routeAction

complex

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

Returned: success

corsPolicy

complex

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

Returned: success

allowCredentials

boolean

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

Returned: success

allowHeaders

list / elements=string

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

Returned: success

allowMethods

list / elements=string

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

Returned: success

allowOriginRegexes

list / elements=string

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

Returned: success

allowOrigins

list / elements=string

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

Returned: success

disabled

boolean

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

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

Returned: success

exposeHeaders

list / elements=string

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

Returned: success

maxAge

integer

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

Returned: success

faultInjectionPolicy

complex

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

Returned: success

abort

complex

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

Returned: success

httpStatus

integer

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

Returned: success

percentage

string

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

Returned: success

delay

complex

Спецификация того, как клиентские запросы задерживаются как часть инъекции ошибок, прежде чем быть отправленными в бэкэнд-сервис.

Возвращено: success

fixedDelay

complex

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

Возвращено: success

nanos

integer

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

Возвращено: success

seconds

string

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

Возвращено: success

percentage

string

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

Возвращено: success

requestMirrorPolicy

complex

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

Возвращено: success

backendService

dictionary

Зеркалируемый ресурс BackendService.

Возвращено: success

retryPolicy

complex

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

Возвращено: success

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: Loadbalancer попытается повторить попытку, если бэкэнд-сервис отвечает с любым кодом ответа 5xx, или если бэкэнд-сервис вообще не отвечает, например: отключения, сброс, тайм-аут чтения, сбой подключения и отклоненные потоки.

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

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

* retriable-4xx: Loadbalancer повторит попытку для повторяемых кодов ответа 4xx.

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

* refused-stream: Loadbalancer повторит попытку, если бэкэнд-сервис сбрасывает поток с кодом ошибки REFUSED_STREAM. Этот тип сброса указывает, что повторить попытку безопасно.

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

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

вес

целое число

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

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

Возвращаемое значение: успех

сервис

словарь

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

Возвращаемое значение: успех

перенаправление_url

сложный тип

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

Возвращаемое значение: успех

перенаправление_хоста

строка

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

Возвращаемое значение: успех

перенаправление_https

булево

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

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

Возвращаемое значение: успех

перенаправление_пути

строка

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

Возвращаемое значение: успех

перенаправление_префикса

строка

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

Возвращаемое значение: успех

код_ответа_перенаправления

строка

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

* FOUND (соответствует 302).

* SEE_OTHER (соответствует 303).

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

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

Возвращаемое значение: успех

удаление_параметров

булево

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

Возвращаемое значение: успех

тесты

сложный тип

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

Возвращаемое значение: успех

описание

строка

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

Возвращаемое значение: успех

хост

строка

Часть URL, относящаяся к хосту.

Возвращаемое значение: успех

путь

строка

Часть URL, относящаяся к пути.

Возвращаемое значение: успех

сервис

словарь

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

Возвращаемое значение: успех

Авторы

  • Google Inc. (@googlecloudplatform)

Ссылки на сборку

  • Система отслеживания задач
  • Главная страница
  • Репозиторий (источники)

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/google/cloud/gcp_compute_url_map_module.html

Spec-Zone.ru

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