Spec-Zone.ru › Ansible 2.10

google.cloud.gcp_compute_region_url_map – Создаёт GCP RegionUrlMap

Примечание

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

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

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

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

Обзор

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

Требования

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

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

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
auth_kind
строка / обязательно
    Варианты:
  • application
  • machineaccount
  • serviceaccount
Тип используемых учетных данных.
default_service
словарь
Полный или частичный URL ресурса defaultService, к которому направляется трафик, если ни одно из правил hostRules не совпадает. Если дополнительно указан defaultRouteAction, выполняются продвинутые действия маршрутизации, такие как перенаправление URL и т. д., прежде чем запрос отправится на бэкенд. Однако, если указан defaultService, defaultRouteAction не может содержать никаких weightedBackendServices. И наоборот, если routeAction содержит любые weightedBackendServices, service не должен быть указан. Должен быть установлен только один из defaultService, defaultUrlRedirect или defaultRouteAction.weightedBackendService.
Это поле представляет ссылку на ресурс RegionBackendService в GCP. Его можно указать двумя способами. Во-первых, можно поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Или же можно добавить `register: имя-ресурса` к задаче gcp_compute_region_backend_service, а затем установить это поле default_service в "{{ имя-ресурса }}"
default_url_redirect
словарь
Если ни одно из указанных правил hostRules не соответствует, запрос перенаправляется на URL, указанный в defaultUrlRedirect. Если указан defaultUrlRedirect, defaultService или defaultRouteAction не должны быть установлены.
host_redirect
строка
Хост, который будет использован в ответе о перенаправлении вместо того, что был предоставлен в запросе. Значение должно быть между 1 и 255 символами.
https_redirect
логическое
    Варианты:
  • нет
  • да
Значение по умолчанию:
"false"
Если установлено в true, схема URL в перенаправляемом запросе устанавливается в https. Если установлено в false, схема URL перенаправляемого запроса останется такой же, как у запроса. Это должно быть установлено только для UrlMap, используемых в TargetHttpProxys. Установка в true для TargetHttpsProxy запрещена. По умолчанию установлено в false.
path_redirect
строка
Путь, который будет использован в ответе о перенаправлении вместо предоставленного в запросе. pathRedirect не может быть предоставлен вместе с prefixRedirect. Предоставьте только один или ни одного. Если ни один не предоставлен, путь исходного запроса будет использован для перенаправления. Значение должно быть между 1 и 1024 символами.
prefix_redirect
строка
Префикс, который заменяет prefixMatch, указанный в HttpRouteRuleMatch, сохраняя оставшуюся часть URL-адреса перед перенаправлением запроса.
prefixRedirect не может быть предоставлен вместе с pathRedirect. Предоставьте только один или ни одного. Если ни один не предоставлен, путь исходного запроса будет использован для перенаправления. Значение должно быть между 1 и 1024 символами.
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
логическое
    Варианты:
  • нет
  • да
Значение по умолчанию:
"false"
Если установлено в true, любая часть запроса в исходном URL удаляется перед перенаправлением запроса. Если установлено в false, часть запроса в исходном URL сохраняется.
description
строка
Необязательное описание этого ресурса. Укажите это свойство при создании ресурса.
env_type
строка
Указывает, в какой среде Ansible вы запускаете этот модуль.
Это не должно устанавливаться, если вы не знаете, что делаете.
Это только изменяет строку User Agent для любых запросов к API.
host_rules
список / элементы=словарь
Список HostRules для использования с URL.
description
строка
Необязательное описание этого HostRule. Укажите это свойство при создании ресурса.
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_service
словарь / обязательно
Ссылка на ресурс RegionBackendService. Он будет использован, если ни одно из правил pathRules, определённых этим PathMatcher, не соответствует пути URL.
Это поле представляет ссылку на ресурс RegionBackendService в GCP. Его можно указать двумя способами. Во-первых, можно поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Или же можно добавить `register: имя-ресурса` к задаче gcp_compute_region_backend_service, а затем установить это поле default_service в "{{ имя-ресурса }}"
default_url_redirect
словарь
Если ни одно из указанных правил hostRules не соответствует, запрос перенаправляется на URL, указанный в defaultUrlRedirect. Если указан defaultUrlRedirect, defaultService или defaultRouteAction не должны быть установлены.
host_redirect
строка
Хост, который будет использован в ответе о перенаправлении вместо того, что был предоставлен в запросе. Значение должно быть между 1 и 255 символами.
https_redirect
логическое
    Варианты:
  • нет
  • да
Значение по умолчанию:
"false"
Если установлено в true, схема URL в перенаправляемом запросе устанавливается в https. Если установлено в false, схема URL перенаправляемого запроса останется такой же, как у запроса. Это должно быть установлено только для UrlMap, используемых в TargetHttpProxys. Установка в true для TargetHttpsProxy запрещена. По умолчанию установлено в false.
path_redirect
строка
Путь, который будет использован в ответе о перенаправлении вместо предоставленного в запросе. pathRedirect не может быть предоставлен вместе с prefixRedirect. Предоставьте только один или ни одного. Если ни один не предоставлен, путь исходного запроса будет использован для перенаправления. Значение должно быть между 1 и 1024 символами.
prefix_redirect
строка
Префикс, который заменяет prefixMatch, указанный в HttpRouteRuleMatch, сохраняя оставшуюся часть URL-адреса перед перенаправлением запроса.
prefixRedirect не может быть предоставлен вместе с pathRedirect. Предоставьте только один или ни одного. Если ни один не предоставлен, путь исходного запроса будет использован для перенаправления. Значение должно быть между 1 и 1024 символами.
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
логическое
    Варианты:
  • нет
  • да
Значение по умолчанию:
"false"
Если установлено в true, любая часть запроса в исходном URL удаляется перед перенаправлением запроса. Если установлено в false, часть запроса в исходном URL сохраняется.
описание
строка
Необязательное описание данного ресурса.
имя
строка / обязательно
Имя, используемое для ссылки на этот PathMatcher в HostRule.
path_rules
список / элементы=словарь
Список правил для обработки путей. Используйте этот список вместо routeRules, когда требуется маршрутизация, основанная на простом сопоставлении путей. Порядок указания правил путей не имеет значения. Сопоставления всегда выполняются по принципу «самый длинный путь в первую очередь». Например, pathRule с путём /a/b/c/* будет соответствовать ему раньше, чем /a/b/* независимо от порядка их появления в этом списке. В рамках одного PathMatcher должен быть задан либо pathRules, либо routeRules.
пути
список / элементы=строка / обязательно
Список шаблонов путей для сопоставления. Каждый должен начинаться с /, и единственное место, где разрешен символ *, — в конце после /. Строка, передаваемая в обработчик путей, не включает текст после первого символа ? или #, и эти символы здесь недопустимы.
route_action
словарь
В ответ на сопоставленный путь балансировщик нагрузки выполняет расширенные действия маршрутизации, такие как переписывание URL, преобразование заголовков и т. д., прежде чем перенаправить запрос к выбранному бэкенду. Если routeAction указывает какие-либо weightedBackendServices, service не должно быть установлено. И наоборот, если service установлено, routeAction не может содержать какие-либо weightedBackendServices. Должно быть установлено только одно из routeAction или urlRedirect.
cors_policy
словарь
Спецификация для разрешения кросс-доменных запросов со стороны клиента. См. рекомендацию W3C для кросс-доменного обмена ресурсами.
allow_credentials
булево
    Варианты:
  • нет
  • да
По умолчанию:
"false"
В ответ на предварительный запрос установка этого значения в true указывает, что фактический запрос может включать учетные данные пользователя. Это переводится в заголовок Access-Control-Allow-Credentials. По умолчанию false.
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 отключена.
expose_headers
список / элементы=строка
Указывает содержимое заголовка Access-Control-Expose-Headers.
max_age
целое число
Указывает, как долго результаты предварительного запроса могут быть кэшированы. Это переводится в содержимое заголовка Access-Control-Max-Age.
fault_injection_policy
словарь
Спецификация для внедрения сбоев в трафик для тестирования устойчивости клиентов к отказу бэкенд-службы. В рамках внедрения сбоев, когда клиенты отправляют запросы бэкенд-службе, балансировщик нагрузки может вводить задержки для определенного процента запросов перед отправкой этих запросов бэкенд-службе. Аналогично, запросы от клиентов могут быть прерваны балансировщиком нагрузки для определенного процента запросов. timeout и retry_policy будут игнорироваться клиентами, настроенными с fault_injection_policy.
abort
словарь
Спецификация того, как запросы клиентов прерываются в рамках внедрения сбоев.
http_status
целое число / обязательно
Код HTTP-статуса, используемый для прерывания запроса. Значение должно быть в диапазоне от 200 до 599 включительно.
percentage
строка / обязательно
Процент трафика (соединений/операций/запросов), который будет прерван в рамках внедрения сбоев. Значение должно быть в диапазоне от 0,0 до 100,0 включительно.
delay
словарь
Спецификация того, как запросы клиентов задерживаются в рамках внедрения сбоев перед отправкой бэкенд-службе.
fixed_delay
словарь / обязательно
Указывает значение интервала фиксированной задержки.
nanos
целое число
Продолжительность, представляющая собой дробь секунды с разрешением в наносекунды. Продолжительности, меньшие одной секунды, представляются с полем `seconds`, равным 0, и положительным полем `nanos`. Должно быть в диапазоне от 0 до 999 999 999 включительно.
seconds
строка / обязательно
Продолжительность с разрешением в секунду. Должно быть в диапазоне от 0 до 315 576 000 000 включительно.
percentage
строка / обязательно
Процент трафика (соединений/операций/запросов), для которого будет введена задержка в рамках внедрения сбоев. Значение должно быть в диапазоне от 0,0 до 100,0 включительно.
request_mirror_policy
словарь
Указывает политику, определяющую, как запросы, предназначенные для бэкендов маршрута, дублируются в отдельной зеркальной бэкенд-службе. Балансировщик нагрузки не ожидает ответов от зеркальной службы. Перед отправкой трафика в зеркальную службу заголовок host / authority дополняется добавкой -shadow.
backend_service
словарь / обязательно
Ресурс RegionBackendService, который зеркально отображается.
Это поле представляет ссылку на ресурс RegionBackendService в GCP. Его можно указать двумя способами. Во-первых, вы можете поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Или вы можете добавить `register: имя-ресурса` к задаче gcp_compute_region_backend_service, а затем установить это поле backend_service в "{{ имя-ресурса }}"
retry_policy
словарь
Указывает политику повторных попыток, связанную с данным маршрутом.
num_retries
целое число
Указывает разрешённое количество попыток повтора. Это число должно быть > 0.
per_try_timeout
словарь
Указывает ненулевой таймаут для каждой попытки повтора.
nanos
целое число
Продолжительность времени, являющаяся дробной частью секунды с разрешением в наносекунды. Продолжительности меньше одной секунды представляются с полем `seconds`, равным 0, и положительным полем `nanos`. Должно быть в диапазоне от 0 до 999 999 999 включительно.
seconds
строка / обязательно
Продолжительность времени с разрешением в секунды. Должно быть в диапазоне от 0 до 315 576 000 000 включительно.
retry_conditions
список / элементы=строка
Указывает один или несколько условий, когда применяется это правило повтора. Допустимые значения:
- 5xx: балансировщик нагрузки попытается повторить попытку, если служба обратной связи ответила любым кодом состояния 5xx или если служба обратной связи не ответила вообще (например, разъединения, сбросы, таймауты чтения, сбои соединения и отказ потоков).
- gateway-error: аналогично 5xx, но применяется только к кодам состояния 502, 503 или 504.
- connect-failure: балансировщик нагрузки повторит попытку при сбоях подключения к службам обратной связи, например, из-за таймаутов подключения.
- retriable-4xx: балансировщик нагрузки повторит попытку для исправленных кодов состояния 4xx.
В настоящее время поддерживается только одна исправленная ошибка 409.
- refused-stream: балансировщик нагрузки повторит попытку, если служба обратной связи сбросит поток с кодом ошибки REFUSED_STREAM. Этот тип сброса указывает, что повторение попытки безопасно.
- cancelled: балансировщик нагрузки повторит попытку, если код состояния gRPC в заголовке ответа установлен в отменённый - deadline-exceeded: балансировщик нагрузки повторит попытку, если код состояния gRPC в заголовке ответа установлен в превышение срока - resource-exhausted: балансировщик нагрузки повторит попытку, если код состояния gRPC в заголовке ответа установлен в исчерпание ресурсов - unavailable: балансировщик нагрузки повторит попытку, если код состояния gRPC в заголовке ответа установлен в недоступность.
timeout
словарь
Указывает таймаут для выбранного маршрута. Таймаут рассчитывается с момента полного обработки запроса (т. е. конца потока) до полного завершения обработки ответа. Таймаут включает все повторы. Если не указано, значение по умолчанию составляет 15 секунд.
nanos
целое число
Продолжительность времени, являющаяся дробной частью секунды с разрешением в наносекунды. Продолжительности меньше одной секунды представляются с полем `seconds`, равным 0, и положительным полем `nanos`. Должно быть в диапазоне от 0 до 999 999 999 включительно.
seconds
строка / обязательно
Продолжительность времени с разрешением в секунды. Должно быть в диапазоне от 0 до 315 576 000 000 включительно.
url_rewrite
словарь
Спецификация для изменения URL запроса перед пересылкой запроса на сопоставленную службу.
host_rewrite
строка
Перед пересылкой запроса на выбранную службу заголовок хоста запроса заменяется содержимым hostRewrite. Значение должно быть между 1 и 255 символами.
path_prefix_rewrite
строка
Перед пересылкой запроса на выбранную службу обратной связи сопоставляемая часть пути запроса заменяется на pathPrefixRewrite. Значение должно быть между 1 и 1024 символами.
weighted_backend_services
список / элементы=словарь
Список взвешенных служб обратной связи, которым необходимо отправлять трафик при совпадении маршрута. Веса определяют долю трафика, направляемого в соответствующую службу обратной связи. Если весь трафик должен идти в одну службу обратной связи, должна быть одна weightedBackendService с весом, установленным на ненулевое число. После определения backendService и перед пересылкой запроса на службу обратной связи применяются расширенные действия по маршрутизации, такие как Url rewrites и преобразования заголовков, в зависимости от дополнительных параметров, указанных в этой HttpRouteAction.
backend_service
словарь / обязательно
Ресурс RegionBackendService по умолчанию. Перед пересылкой запроса на backendService балансировщик нагрузки применяет все соответствующие headerActions, указанные в качестве части этой backendServiceWeight.
Это поле представляет ссылку на ресурс RegionBackendService в GCP. Его можно указать двумя способами. Во-первых, можно поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Во-вторых, вы можете добавить `register: имя-ресурса` к задаче gcp_compute_region_backend_service и затем установить это поле backend_service на "{{ имя-ресурса }}"
header_action
словарь
Указывает изменения в заголовках запроса и ответа, которые должны быть применены для выбранной backendService. headerAction, указанные здесь, применяются до headerAction во вложенном HttpRouteRule, PathMatcher и UrlMap.
request_headers_to_add
список / элементы=словарь
Заголовки, которые нужно добавить к соответствующему запросу перед пересылкой запроса на backendService.
header_name
строка / обязательно
Имя заголовка.
header_value
строка / обязательно
Значение добавляемого заголовка.
replace
булево / обязательно
    Варианты:
  • нет
  • да
Если ложь, headerValue добавляется к любым значениям, которые уже существуют для заголовка. Если истина, headerValue устанавливается для заголовка, игнорируя любые значения, которые были установлены для этого заголовка.
request_headers_to_remove
список / элементы=строка
Список имён заголовков для заголовков, которые нужно удалить из запроса перед пересылкой запроса на backendService.
response_headers_to_add
список / элементы=словарь
Заголовки, которые нужно добавить в ответ перед отправкой ответа обратно клиенту.
header_name
строка / обязательно
Имя заголовка.
header_value
строка / обязательно
Значение добавляемого заголовка.
заменить
boolean / обязательно
    Варианты:
  • нет
  • да
Если ложь, headerValue добавляется к любым значениям, которые уже существуют для заголовка. Если истина, headerValue устанавливается для заголовка, отбрасывая любые значения, которые были установлены для этого заголовка.
response_headers_to_remove
список / элементы=строка
Список имён заголовков для заголовков, которые нужно удалить из ответа перед отправкой ответа клиенту.
вес
целое число / обязательно
Указывает долю трафика, отправляемого в backendService, вычисляемую как вес / (сумма всех весов weightedBackendService в routeAction). Выбор backendService определяется только для нового трафика. После того, как запрос пользователя был направлен в backendService, последующие запросы будут отправлены в тот же backendService, как определено политикой сеансовой привязки BackendService.
Значение должно быть между 0 и 1000.
сервис
словарь
Ресурс региона backend service, в который направляется трафик, если это правило совпадает. Если дополнительно указан routeAction, применяются расширенные действия маршрутизации, такие как перенаправление URL и т. д., перед отправкой запроса в бэкенд. Однако, если указан service, routeAction не может содержать weightedBackendService. И наоборот, если routeAction указывает weightedBackendServices, service не должен быть указан. Только один из urlRedirect, service или routeAction.weightedBackendService должен быть установлен.
Это поле представляет ссылку на ресурс RegionBackendService в GCP. Его можно указать двумя способами. Во-первых, вы можете поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Или же вы можете добавить `register: имя-ресурса` к задаче gcp_compute_region_backend_service, а затем установить это поле service в "{{ имя-ресурса }}"
url_redirect
словарь
При совпадении шаблона пути запрос перенаправляется на URL, указанный в urlRedirect. Если urlRedirect указан, service или routeAction не должны быть установлены.
host_redirect
строка
Хост, который будет использоваться в ответе перенаправления вместо того, который был предоставлен в запросе. Значение должно быть между 1 и 255 символами.
https_redirect
boolean
    Варианты:
  • нет
  • да
По умолчанию:
"false"
Если установлено в значение true, схема URL в перенаправленном запросе устанавливается в https.
Если установлено в значение false, схема URL перенаправленного запроса останется такой же, как и в запросе. Это должно быть установлено только для UrlMaps, используемых в TargetHttpProxys. Установка этого значения в true для TargetHttpsProxy не допускается. По умолчанию установлено в false.
path_redirect
строка
Путь, который будет использован в ответе перенаправления вместо пути, предоставленного в запросе. pathRedirect нельзя указывать вместе с prefixRedirect. Укажите один из них или ни одного. Если ни тот, ни другой не указаны, путь из исходного запроса будет использован для перенаправления.
Значение должно быть между 1 и 1024 символами.
prefix_redirect
строка
Префикс, заменяющий prefixMatch, указанный в HttpRouteRuleMatch, сохраняя оставшуюся часть URL перед перенаправлением запроса. prefixRedirect нельзя указывать вместе с pathRedirect. Укажите один из них или ни одного. Если ни тот, ни другой не указаны, путь из исходного запроса будет использован для перенаправления. Значение должно быть между 1 и 1024 символами.
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
boolean
    Варианты:
  • нет
  • да
По умолчанию:
"false"
Если установлено в значение true, любая сопровождающая часть запроса из исходного URL удаляется перед перенаправлением запроса. Если установлено в значение false, часть запроса исходного URL сохраняется.
route_rules
список / элементы=словарь
Список упорядоченных правил маршрутизации HTTP. Используйте этот список вместо pathRules, когда желательны расширенное соответствие пути и действия маршрутизации. Порядок указания routeRules имеет значение: первое правило, которому соответствует запрос, вызовет действие маршрутизации, указанное в нём. В рамках данного pathMatcher должен быть установлен только один из pathRules или routeRules. routeRules не поддерживаются в UrlMaps, предназначенных для внешних балансировщиков.
header_action
словарь
Указывает изменения запросов и ответов заголовков, которые должны вступить в силу для выбранного backendService. Указанные здесь headerAction применяются до соответствующих pathMatchers[].headerAction и после pathMatchers[].routeRules[].r outeAction.weightedBackendService.backendServiceWeightAction[].headerAction.
request_headers_to_add
список / элементы=словарь
Заголовки, которые нужно добавить к соответствующему запросу перед пересылкой запроса в backendService.
header_name
строка / обязательно
Имя заголовка.
header_value
строка / обязательно
Значение добавляемого заголовка.
заменить
boolean / обязательно
    Варианты:
  • нет
  • да
Если ложь, headerValue добавляется к любым значениям, которые уже существуют для заголовка. Если истина, headerValue устанавливается для заголовка, отбрасывая любые значения, которые были установлены для этого заголовка.
request_headers_to_remove
список / элементы=строка
Список имён заголовков для заголовков, которые нужно удалить из запроса перед пересылкой запроса в backendService.
response_headers_to_add
список / элементы=словарь
Заголовки, которые нужно добавить к ответу перед отправкой ответа клиенту.
header_name
строка / обязательно
Имя заголовка.
header_value
строка / обязательно
Значение добавляемого заголовка.
заменить
boolean / обязательно
    Варианты:
  • нет
  • да
Если ложь, headerValue добавляется к любым значениям, которые уже существуют для заголовка. Если истина, headerValue устанавливается для заголовка, отбрасывая любые значения, которые были установлены для этого заголовка.
response_headers_to_remove
список / элементы=строка
Список имён заголовков для заголовков, которые нужно удалить из ответа перед отправкой ответа клиенту.
правила_сопоставления
список / элементы=словарь
Правила определения соответствия.
полное_сопоставление_пути
строка
Для удовлетворения условия matchRule путь запроса должен точно совпадать со значением, указанным в fullPathMatch, после удаления всех параметров запроса и якоря, которые могут быть частью исходного URL. FullPathMatch должен быть от 1 до 1024 символов. Должен быть указан только один из prefixMatch, fullPathMatch или regexMatch.
сопоставления_заголовков
список / элементы=словарь
Указывает список критериев соответствия заголовков, все из которых должны соответствовать соответствующим заголовкам в запросе.
точное_сопоставление
строка
Значение должно точно совпадать с содержимым exactMatch. Должен быть указан только один из exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch или rangeMatch.
имя_заголовка
строка / обязательно
Имя HTTP-заголовка для сопоставления. Для сопоставления с авторитетом HTTP-запроса используйте headerMatch со значением headerName ":authority". Для сопоставления метода запроса используйте headerName ":method".
инвертировать_сопоставление
логическое
    Варианты:
  • нет
  • да
По умолчанию:
"false"
Если установлено значение false, headerMatch считается совпадением, если вышеуказанные критерии соответствия выполнены. Если установлено значение true, headerMatch считается совпадением, если вышеуказанные критерии соответствия НЕ выполнены. По умолчанию false.
сопоставление_префикса
строка
Значение заголовка должно начинаться с содержимого prefixMatch. Должен быть указан только один из exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch или rangeMatch.
сопоставление_наличия
логическое
    Варианты:
  • нет
  • да
Заголовок с содержимым headerName должен существовать. Сопоставление происходит независимо от наличия или отсутствия значения заголовка в запросе. Должен быть указан только один из exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch или rangeMatch.
сопоставление_диапазона
словарь
Значение заголовка должно быть целым числом и находиться в диапазоне, указанном в rangeMatch. Если заголовок не содержит целого числа, числа или пустой, то сопоставление не происходит. Например, для диапазона [-5, 0] - -3 будет соответствовать. - 0 не будет соответствовать. - 0.25 не будет соответствовать. - -3someString не будет соответствовать. Должен быть указан только один из exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch или rangeMatch.
конец_диапазона
целое_число / обязательно
Конец диапазона (исключительно).
начало_диапазона
целое_число / обязательно
Начало диапазона (включительно).
сопоставление_по_регулярному_выражению
строка
Значение заголовка должно соответствовать регулярному выражению, указанному в regexMatch. Для грамматики регулярных выражений см.: en.cppreference.com/w/cpp/regex/ecmascript Для сопоставления со значением порта в HTTP-запросе используйте headerMatch со значением headerName, установленным на PORT, и регулярное выражение, которое удовлетворяет спецификатору порта заголовка Host RFC2616.
Должен быть указан только один из exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch или rangeMatch.
сопоставление_суффикса
строка
Значение заголовка должно заканчиваться содержимым suffixMatch. Должен быть указан только один из exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch или rangeMatch.
игнорировать_регистр
логическое
    Варианты:
  • нет
  • да
По умолчанию:
"false"
Указывает, что prefixMatch и fullPathMatch соответствия регистронезависимы.
По умолчанию false.
фильтры_метаданных
список / элементы=словарь
Неявные критерии фильтрации, используемые Loadbalancer для ограничения конфигурации маршрутизации на ограниченном наборе клиентов, соответствующих xDS. В своих xDS-запросах Loadbalancer xDS-клиенты представляют метаданные узла. Если произойдет совпадение, соответствующая конфигурация маршрутизации будет доступна для этих прокси. Для каждого metadataFilter в этом списке, если его filterMatchCriteria установлено в MATCH_ANY, по крайней мере одно из filterLabels должно совпадать с соответствующей меткой, предоставленной в метаданных. Если его filterMatchCriteria установлено в MATCH_ALL, то все его filterLabels должны совпадать с соответствующими метками в предоставленных метаданных. Здесь указанные metadataFilters могут переопределять те, что указаны в ForwardingRule, которые ссылаются на этот UrlMap. metadataFilters применяются только к Loadbalancer, у которых loadBalancingScheme установлено в INTERNAL_SELF_MANAGED.
метки_фильтра
список / элементы=словарь / обязательно
Список пар значений меток, которые должны соответствовать меткам в предоставленных метаданных в соответствии с filterMatchCriteria. Этот список не должен быть пустым и может содержать не более 64 записей.
имя
строка / обязательно
Имя метки метаданных. Длина имени может составлять не более 1024 символов и должна быть не менее 1 символа.
значение
строка / обязательно
Значение метки должно соответствовать указанному значению. Длина значения может составлять не более 1024 символов.
критерии_сопоставления_фильтра
строка / обязательно
Указывает, как отдельные сопоставления filterLabel в списке filterLabels влияют на общее соответствие metadataFilter. Доступные значения: - MATCH_ANY: По крайней мере одна из filterLabels должна иметь соответствующую метку в предоставленных метаданных.
- MATCH_ALL: Все filterLabels должны иметь соответствующие метки в предоставленных метаданных.
Некоторые допустимые значения включают: "MATCH_ALL", "MATCH_ANY"
сопоставление_префикса
строка
Для удовлетворения условия matchRule путь запроса должен начинаться со значения, указанного в prefixMatch. prefixMatch должен начинаться с /. Значение должно быть от 1 до 1024 символов. Должен быть указан только один из prefixMatch, fullPathMatch или regexMatch.
сопоставления_параметров_запроса
список / элементы=словарь
Указывает список критериев соответствия параметров запроса, все из которых должны соответствовать соответствующим параметрам запроса.
точное_сопоставление
строка
queryParameterMatch соответствует, если значение параметра точно соответствует содержимому exactMatch. Должен быть указан только один из presentMatch, exactMatch и regexMatch.
имя
строка / обязательно
Имя параметра запроса для сопоставления. Параметр запроса должен существовать в запросе, в противном случае запрос не соответствует.
present_match
boolean
    Варианты:
  • нет
  • да
Указывает, что соответствие queryParameterMatch выполняется, если запрос содержит указанный параметр, независимо от того, имеет ли параметр значение или нет. Только одно из presentMatch, exactMatch и regexMatch должно быть установлено.
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, служба не должна быть установлена. И наоборот, если служба установлена, routeAction не может содержать weightedBackendServices. Только одно из routeAction или urlRedirect должно быть установлено.
cors_policy
словарь
Спецификация для разрешения межсайтовых запросов со стороны клиента. См. рекомендацию W3C по межсайтовой совместной работе.
allow_credentials
boolean
    Варианты:
  • нет
  • да
По умолчанию:
"false"
В ответ на запрос предварительной обработки установка этого значения в true указывает, что фактический запрос может включать учетные данные пользователя. Это переводится в заголовок Access-Control-Allow-Credentials. По умолчанию false.
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
boolean
    Варианты:
  • нет
  • да
По умолчанию:
"false"
Если true, указывает, что политика CORS отключена.
что указывает, что политика CORS в силе. По умолчанию false.
expose_headers
список / элементы=строка
Указывает содержимое заголовка Access-Control-Expose-Headers.
max_age
целое число
Указывает, как долго результаты запроса предварительной обработки могут храниться в кэше. Это отражается в содержимом заголовка Access-Control-Max-Age.
fault_injection_policy
словарь
Спецификация для внедрения ошибок в трафик для проверки устойчивости клиентов к отказу службы бэкенда. В рамках внедрения ошибок, когда клиенты отправляют запросы службе бэкенда, балансировщик нагрузки может вводить задержки для определенного процента запросов перед отправкой этих запросов службе бэкенда. Аналогично, запросы от клиентов могут быть прерваны балансировщиком нагрузки для определенного процента запросов. timeout и retry_policy будут проигнорированы клиентами, настроенными с fault_injection_policy.
abort
словарь
Спецификация того, как прерываются запросы клиентов в рамках внедрения ошибок.
http_status
целое число
Код HTTP-статуса, используемый для прерывания запроса. Значение должно быть от 200 до 599 включительно.
percentage
строка
Процент трафика (соединений/операций/запросов), который будет прерван в рамках внедрения ошибок. Значение должно быть от 0,0 до 100,0 включительно.
delay
словарь
Спецификация того, как задерживаются запросы клиентов в рамках внедрения ошибок перед отправкой их в службу бэкенда.
nanos
целое число
Продолжительность, которая представляет собой долю секунды с разрешением в наносекунды. Длительности менее одной секунды представляются с полем `seconds` равным 0 и положительным полем `nanos`. Должно быть от 0 до 999 999 999 включительно.
seconds
строка / обязательно
Продолжительность с разрешением в секунду. Должно быть от 0 до 315 576 000 000 включительно.
percentage
строка
Процент трафика (соединений/операций/запросов), для которого будет введена задержка в рамках внедрения ошибок. Значение должно быть от 0,0 до 100,0 включительно.
request_mirror_policy
словарь
Указывает политику, определяющую, как запросы, предназначенные для бэкендов маршрута, дублируются в отдельной зеркальной службе бэкенда. Балансировщик нагрузки не ждет ответов от зеркальной службы. Перед отправкой трафика в зеркальную службу к заголовку host / authority добавляется суффикс -shadow.
backend_service
словарь / обязательно
Ресурс RegionBackendService, который дублируется.
Это поле представляет ссылку на ресурс RegionBackendService в GCP. Его можно указать двумя способами. Во-первых, вы можете поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Во-вторых, вы можете добавить `register: имя-ресурса` к задаче gcp_compute_region_backend_service и затем установить это поле backend_service в "{{ имя-ресурса }}"
retry_policy
словарь
Определяет политику повторных попыток, связанную с этим маршрутом.
num_retries
целое число / обязательно
Определяет разрешенное количество попыток повтора. Это число должно быть > 0.
per_try_timeout
словарь
Устанавливает ненулевой таймаут на каждую попытку повтора.
nanos
целое число
Промежуток времени, являющийся дробной частью секунды с разрешением в наносекунды. Продолжительности меньше одной секунды представляются с полем `seconds` равным 0 и положительным полем `nanos`. Должно быть от 0 до 999 999 999 включительно.
seconds
строка / обязательно
Промежуток времени с разрешением в секунды. Должно быть от 0 до 315 576 000 000 включительно.
retry_conditions
список / элементы=строка
Указывает одно или несколько условий, когда применяется эта политика повтора. Допустимые значения: - 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 в заголовке ответа установлен в отменен - deadline-exceeded: Loadbalancer повторит попытку, если код состояния gRPC в заголовке ответа установлен в deadline-exceeded - resource-exhausted: Loadbalancer повторит попытку, если код состояния gRPC в заголовке ответа установлен в resource-exhausted - unavailable: Loadbalancer повторит попытку, если код состояния gRPC в заголовке ответа установлен в unavailable.
timeout
словарь
Определяет таймаут для выбранного маршрута. Таймаут рассчитывается с момента полного обработки запроса (т. е. окончания потока) до момента полной обработки ответа. Таймаут включает все повторы. Если не указано, значение по умолчанию составляет 15 секунд.
nanos
целое число
Промежуток времени, являющийся дробной частью секунды с разрешением в наносекунды. Продолжительности меньше одной секунды представляются с полем `seconds` равным 0 и положительным полем `nanos`. Должно быть от 0 до 999 999 999 включительно.
seconds
строка / обязательно
Промежуток времени с разрешением в секунды. Должно быть от 0 до 315 576 000 000 включительно.
url_rewrite
словарь
Спецификация для изменения URL запроса до пересылки запроса сопоставленной службе.
host_rewrite
строка
Перед пересылкой запроса выбранной службе заголовок хоста запроса заменяется содержимым hostRewrite. Значение должно быть между 1 и 255 символами.
path_prefix_rewrite
строка
Перед пересылкой запроса выбранной службе обратного канала соответствующая часть пути запроса заменяется на pathPrefixRewrite. Значение должно быть между 1 и 1024 символами.
weighted_backend_services
список / элементы=словарь
Список взвешенных служб обратного канала, которым необходимо отправить трафик при совпадении маршрута. Веса определяют долю трафика, которая передается соответствующей службе обратного канала. Если весь трафик должен идти к одной службе обратного канала, должно быть одно weightedBackendService с весом, установленным на ненулевое число. После определения backendService и перед пересылкой запроса службе обратного канала применяются расширенные действия маршрутизации, такие как перенаправление URL и преобразование заголовков, в зависимости от дополнительных настроек, указанных в HttpRouteAction.
backend_service
словарь / обязательно
Ресурс RegionBackendService по умолчанию. Перед пересылкой запроса backendService балансировщик нагрузки применяет все соответствующие действия с заголовками, указанные в рамках этого backendServiceWeight.
Это поле представляет ссылку на ресурс RegionBackendService в GCP. Его можно указать двумя способами. Во-первых, вы можете поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Во-вторых, вы можете добавить `register: имя-ресурса` к задаче gcp_compute_region_backend_service и затем установить это поле backend_service в "{{ имя-ресурса }}"
header_action
словарь
Указывает изменения в заголовках запроса и ответа, которые должны быть выполнены для выбранной службы обратного канала. Действия с заголовками, указанные здесь, выполняются перед действиями с заголовками в окружающем HttpRouteRule, PathMatcher и UrlMap.
request_headers_to_add
список / элементы=словарь
Заголовки, которые нужно добавить в соответствующий запрос перед пересылкой запроса в службу обратного канала.
header_name
строка / обязательно
Имя заголовка.
header_value
строка / обязательно
Значение заголовка, которое нужно добавить.
replace
логическое значение / обязательно
    Варианты:
  • нет
  • да
Если ложно, headerValue добавляется к любым значениям, которые уже существуют для заголовка. Если истинно, headerValue устанавливается для заголовка, отбрасывая любые значения, которые были установлены для этого заголовка.
request_headers_to_remove
список / элементы=строка
Список имен заголовков для заголовков, которые нужно удалить из запроса перед пересылкой запроса в службу обратного канала.
response_headers_to_add
список / элементы=словарь
Заголовки, которые нужно добавить в ответ перед отправкой ответа обратно клиенту.
Имя_заголовка
строка / обязательно
Название заголовка.
Значение_заголовка
строка / обязательно
Значение добавляемого заголовка.
Заменить
булево / обязательно
    Варианты:
  • нет
  • да
Если ложь, значение заголовка добавляется к существующим значениям для заголовка. Если истина, значение заголовка устанавливается для заголовка, отбрасывая любые ранее заданные значения для этого заголовка.
Заголовки_ответа_для_удаления
список / элементы=строка
Список имён заголовков, которые нужно удалить из ответа перед отправкой его клиенту.
Вес
целое число / обязательно
Определяет долю трафика, направляемого на backendService, вычисляемую как вес / (сумма весов всех взвешенных backendService в routeAction). Выбор backend сервиса определяется только для нового трафика. После направления запроса пользователя к backendService последующие запросы будут отправляться тому же backendService, как определяется политикой аффинити сессии BackendService.
Значение должно быть между 0 и 1000.
Сервис
словарь
Ресурс регионального backend сервиса GCP, которому направляется трафик, если совпадает данное правило. Если дополнительно указан routeAction, выполняются расширенные действия маршрутизации, такие как перенаправление URL и т. д., перед отправкой запроса на backend. Однако, если указан service, routeAction не может содержать weightedBackendService. И наоборот, если routeAction указывает weightedBackendServices, service не должен быть указан. Только один из urlRedirect, service или routeAction.weightedBackendService должен быть установлен.
Это поле представляет ссылку на ресурс RegionBackendService в GCP. Его можно указать двумя способами. Во-первых, можно поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Во-вторых, можно добавить `register: имя_ресурса` к задаче gcp_compute_region_backend_service, а затем установить это поле service на "{{ имя_ресурса }}"
Перенаправление_URL
словарь
При совпадении с данным правилом запрос перенаправляется на URL, указанный в urlRedirect. Если указан urlRedirect, service или routeAction не должны быть установлены.
Перенаправление_хоста
строка
Хост, который будет использоваться в ответе перенаправления вместо хоста, предоставленного в запросе. Значение должно быть между 1 и 255 символами.
Перенаправление_HTTPS
булево
    Варианты:
  • нет
  • да
По умолчанию:
"ложь"
Если установлено в истинное значение, схема URL в перенаправленном запросе устанавливается в https.
Если установлено в ложное значение, схема URL перенаправленного запроса останется такой же, как в запросе. Это должно быть установлено только для UrlMaps, используемых в TargetHttpProxys. Установка в истинное значение для TargetHttpsProxy запрещена. По умолчанию установлено в ложь.
Перенаправление_пути
строка
Путь, который будет использоваться в ответе перенаправления вместо пути, предоставленного в запросе. pathRedirect нельзя использовать вместе с prefixRedirect. Используйте либо тот, либо другой, либо ни того, ни другого. Если ни то, ни другое не указано, для перенаправления будет использован путь исходного запроса.
Значение должно быть между 1 и 1024 символами.
Перенаправление_префикса
строка
Префикс, который заменяет префиксMatch, указанный в HttpRouteRuleMatch, сохраняя оставшуюся часть URL перед перенаправлением запроса. prefixRedirect нельзя использовать вместе с pathRedirect. Используйте либо тот, либо другой, либо ни того, ни другого. Если ни то, ни другое не указано, для перенаправления будет использован путь исходного запроса. Значение должно быть между 1 и 1024 символами.
Код_ответа_перенаправления
строка
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"
Убрать_запрос
булево
    Варианты:
  • нет
  • да
По умолчанию:
"ложь"
Если установлено в истинное значение, любая сопутствующая часть запроса исходного URL удаляется перед перенаправлением запроса. Если установлено в ложное значение, часть запроса исходного URL сохраняется. По умолчанию установлено в ложное значение.
Проект
строка
Проект Google Cloud Platform для использования.
Регион
строка / обязательно
Ссылка на регион, в котором находится url map.
Области
список / элементы=строка
Массив областей для использования
Содержимое_аккаунта_службы
jsonarg
Содержимое файла JSON учетной записи службы, либо в словаре, либо как JSON-строка, его представляющая.
Электронная_почта_аккаунта_службы
строка
Необязательный адрес электронной почты учетной записи службы, если machineaccount выбран, и пользователь не хочет использовать адрес по умолчанию.
Файл_аккаунта_службы
путь
Путь к файлу JSON учетной записи службы, если serviceaccount выбран как тип.
Состояние
строка
    Варианты:
  • присутствует ←
  • отсутствует
Существует ли данный объект в GCP
Тесты
список / элементы=словарь
Список ожидаемых сопоставлений URL. Запросы на обновление этого UrlMap будут успешны только в том случае, если пройдут все тестовые сценарии.
Описание
строка
Описание этого тестового сценария.
Хост
строка / обязательно
Часть хоста URL.
Путь
строка / обязательно
Часть пути URL.
Сервис
словарь / обязательно
Ссылка на ожидаемый ресурс RegionBackendService, к которому должен быть сопоставлен данный URL.
Это поле представляет ссылку на ресурс RegionBackendService в GCP. Его можно указать двумя способами. Во-первых, можно поместить словарь с ключом 'selfLink' и значением selfLink вашего ресурса. Во-вторых, можно добавить `register: имя_ресурса` к задаче gcp_compute_region_backend_service, а затем установить это поле service на "{{ имя_ресурса }}"

Примеры

- name: create a health check
  google.cloud.gcp_compute_health_check:
    name: "{{ resource_name }}"
    type: HTTP
    http_health_check:
      port: 80
    check_interval_sec: 1
    timeout_sec: 1
    project: "{{ gcp_project }}"
    auth_kind: "{{ gcp_cred_kind }}"
    service_account_file: "{{ gcp_cred_file }}"
    state: present
  register: healthcheck

- name: create a region backend service
  google.cloud.gcp_compute_region_backend_service:
    name: "{{ resource_name }}"
    region: us-central1
    health_checks:
    - "{{ healthcheck.selfLink }}"
    protocol: HTTP
    project: "{{ gcp_project }}"
    auth_kind: "{{ gcp_cred_kind }}"
    service_account_file: "{{ gcp_cred_file }}"
    state: present
  register: backendservice

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

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

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

Ключ Возвращаемое значение Описание
creationTimestamp
строка
success
Маркер времени создания в формате RFC3339.

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

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

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

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

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

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

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

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

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

fingerprint
строка
success
Отпечаток этого ресурса. Это поле используется внутренне во время обновлений этого ресурса.

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

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

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

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

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

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

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

defaultService
словарь
success
Ссылка на ресурс RegionBackendService. Будет использоваться, если ни одно из pathRules, определённых этим PathMatcher, не соответствует пути URL.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

разрешить_заголовки
список / элементы=строка
успешно
Указывает содержимое заголовка Access-Control-Allow-Headers.

разрешить_методы
список / элементы=строка
успешно
Указывает содержимое заголовка Access-Control-Allow-Methods.

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

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

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

раскрыть_заголовки
список / элементы=строка
успешно
Указывает содержимое заголовка Access-Control-Expose-Headers.

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

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

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

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

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

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

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

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

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

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

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

бэкенд_сервис
словарь
успешно
Ресурс RegionBackendService, которому дублируется трафик.

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

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

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

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

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

retryConditions
список / элементы=строка
успех
Указывает один или несколько условий, при которых применяется данное правило повторной попытки. Допустимые значения:
- 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
сложный
успех
Устанавливает таймаут для выбранного маршрута. Таймаут рассчитывается от момента полного обработки запроса (т.е. окончания потока) до момента полной обработки ответа. Таймаут включает все повторные попытки. Если не указано, значение по умолчанию составляет 15 секунд.

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

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

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

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

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

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

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

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

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

headerName
строка
успех
Имя заголовка.

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

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

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

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

headerName
строка
успех
Имя заголовка.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

headerName
строка
success
Имя заголовка.

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

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

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

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

headerName
строка
success
Имя заголовка.

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

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

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

matchRules
сложный
success
Правила для определения совпадения.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

backendService
dictionary
success
Ресурс RegionBackendService, к которому осуществляется зеркалирование.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

region
string
success
Ссылка на регион, в котором находится url-карта.

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

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

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

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

service
dictionary
success
Ссылка на ожидаемый ресурс RegionBackendService, к которому должен быть сопоставлен данный URL.



Авторы

  • Google Inc. (@googlecloudplatform)

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/google/cloud/gcp_compute_region_url_map_module.html

Spec-Zone.ru

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