google.cloud.gcp_compute_url_map 模块 – 创建 GCP UrlMap
注意
此模块是 google.cloud 集合 (版本 1.4.1) 的一部分。
如果您使用的是 ansible
包,则可能已安装此集合。它不包含在 ansible-core
中。要检查是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用: ansible-galaxy collection install google.cloud
。您需要其他要求才能使用此模块,请参阅 要求 获取详细信息。
要在 playbook 中使用它,请指定: google.cloud.gcp_compute_url_map
。
注意
由于违反了 Ansible 包含要求,google.cloud 集合将从 Ansible 12 中删除。该集合存在 未解决的健全性测试失败。请参阅 讨论主题 获取更多信息。
概要
UrlMap 用于根据您为传入 URL 的主机和路径定义的规则将请求路由到后端服务。
要求
执行此模块的主机需要以下要求。
python >= 2.6
requests >= 2.18.4
google-auth >= 1.3.0
参数
参数 |
注释 |
---|---|
如果凭据类型为 accesstoken,则为 OAuth2 访问令牌。 |
|
使用的凭据类型。 选项
|
|
当没有任何 hostRules 匹配时,defaultRouteAction 生效。负载均衡器在将请求转发到所选后端之前,会执行高级路由操作,例如 URL 重写、标头转换等。 如果 defaultRouteAction 指定任何 weightedBackendServices,则不能设置 defaultService。反之,如果设置了 defaultService,则 defaultRouteAction 不能包含任何 weightedBackendServices。 只能设置 defaultRouteAction 或 defaultUrlRedirect 之一。 |
|
允许客户端跨域请求的规范。请参阅 [W3C 跨域资源共享建议](https://www.w3.org/TR/cors/)。 |
|
响应预检请求时,将其设置为 true 表示实际请求可以包含用户凭据。 这将转换为 Access-Control-Allow-Credentials 标头。 选项
|
|
指定 Access-Control-Allow-Headers 标头的內容。 |
|
指定 Access-Control-Allow-Methods 标头的內容。 |
|
指定与允许的来源匹配的正则表达式模式。有关正则表达式语法,请参阅 en.cppreference.com/w/cpp/regex/ecmascript。如果来源与 allowOrigins 中的项目或 allowOriginRegexes 中的项目匹配,则允许该来源。 |
|
指定将允许执行 CORS 请求的来源列表。 如果来源与 allowOrigins 中的项目或 allowOriginRegexes 中的项目匹配,则允许该来源。 |
|
如果为 true,则指定 CORS 策略已禁用。默认值为 false,表示 CORS 策略有效。 选项
|
|
指定 Access-Control-Expose-Headers 标头的內容。 |
|
指定预检请求的结果可以缓存多少秒。 这将转换为 Access-Control-Max-Age 标头。 |
|
引入到流量中的故障注入规范,用于测试客户端对后端服务故障的弹性。 作为故障注入的一部分,当客户端向后端服务发送请求时,负载均衡器可以在将这些请求发送到后端服务之前,对一定比例的请求引入延迟。类似地,负载均衡器可以为一定比例的请求中止来自客户端的请求。 配置了 faultInjectionPolicy 的客户端将忽略 timeout 和 retryPolicy。 |
|
指定作为故障注入的一部分如何中止客户端请求的规范。 |
|
用于中止请求的 HTTP 状态代码。 值必须介于 200 和 599(含)之间。 |
|
作为故障注入的一部分将中止的流量(连接/操作/请求)的百分比。 值必须介于 0.0 和 100.0(含)之间。 |
|
指定作为故障注入的一部分,在将客户端请求发送到后端服务之前如何延迟客户端请求的规范。 |
|
指定固定延迟间隔的值。 |
|
以纳秒分辨率表示的少于一秒的时间跨度。小于一秒的持续时间用 0 秒字段和正纳秒字段表示。必须介于 0 到 999,999,999(含)之间。 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 注意:这些边界是根据以下计算得出的:60 秒/分钟 * 60 分钟/小时 * 24 小时/天 * 365.25 天/年 * 10000 年。 |
|
作为故障注入的一部分将引入延迟的流量(连接/操作/请求)的百分比。 值必须介于 0.0 和 100.0(含)之间。 |
|
指定如何将意图用于路由后端的请求镜像到单独的镜像后端服务的策略。 负载均衡器不会等待来自影子服务的响应。在将流量发送到影子服务之前,主机/授权标头将后缀为 -shadow。 |
|
镜像到的 BackendService 资源的完整或部分 URL。 此字段表示指向 GCP 中 BackendService 资源的链接。它可以通过两种方式指定。首先,您可以放置一个键为“selfLink”且值为资源 selfLink 的字典。或者,您可以将 `register: name-of-resource` 添加到 gcp_compute_backend_service 任务,然后将此 backend_service 字段设置为“{{ name-of-resource }}” |
|
指定与此路由关联的重试策略。 |
|
指定允许的重试次数。此数字必须 > 0。如果未指定,则默认为 1。 默认值: |
|
指定每次重试尝试的非零超时时间。 如果未指定,将使用 HttpRouteAction 中设置的超时时间。如果 HttpRouteAction 中未设置超时时间,将使用与该路由关联的所有后端服务中的最大超时时间。 |
|
以纳秒分辨率表示的少于一秒的时间跨度。小于一秒的持续时间用 0 秒字段和正纳秒字段表示。必须介于 0 到 999,999,999(含)之间。 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 注意:这些边界是根据以下计算得出的:60 秒/分钟 * 60 分钟/小时 * 24 小时/天 * 365.25 天/年 * 10000 年。 |
|
指定此重试规则适用的一个或多个条件。有效值为:* 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,负载均衡器将重试。 |
|
指定所选路由的超时时间。超时时间是从请求完全处理完毕(即流结束)到响应完全处理完毕的时间计算的。超时时间包括所有重试。 如果未指定,将使用与该路由关联的所有后端服务中的最大超时时间。 |
|
以纳秒分辨率表示的少于一秒的时间跨度。小于一秒的持续时间用 0 秒字段和正纳秒字段表示。必须介于 0 到 999,999,999(含)之间。 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 注意:这些边界是根据以下计算得出的:60 秒/分钟 * 60 分钟/小时 * 24 小时/天 * 365.25 天/年 * 10000 年。 |
|
在将请求转发到匹配的服务之前,修改请求 URL 的规范。 |
|
在将请求转发到所选服务之前,请求的 host 头将替换为 hostRewrite 的内容。 值必须在 1 到 255 个字符之间。 |
|
在将请求转发到所选后端服务之前,请求路径的匹配部分将替换为 pathPrefixRewrite。 值必须在 1 到 1024 个字符之间。 |
|
发生路由匹配时用于发送流量的加权后端服务的列表。 权重决定流向其对应后端服务的流量比例。 如果所有流量都需要发送到单个后端服务,则必须有一个 weightedBackendService 的权重设置为非 0 数字。 一旦确定了后端服务,并且在将请求转发到后端服务之前,将根据此 HttpRouteAction 中指定的其他设置应用高级路由操作,例如 URL 重写和标头转换。 |
|
指向默认 BackendService 资源的完整或部分 URL。在将请求转发到 backendService 之前,负载均衡器将应用作为此 backendServiceWeight 部分指定的任何相关 headerActions。 此字段表示指向 GCP 中 BackendService 资源的链接。它可以通过两种方式指定。首先,您可以放置一个键为“selfLink”且值为资源 selfLink 的字典。或者,您可以将 `register: name-of-resource` 添加到 gcp_compute_backend_service 任务,然后将此 backend_service 字段设置为“{{ name-of-resource }}” |
|
指定需要对所选 backendService 生效的请求和响应标头的更改。 此处指定的 headerAction 在包含的 HttpRouteRule、PathMatcher 和 UrlMap 中的 headerAction 之前生效。 |
|
在将请求转发到 backendService 之前,添加到匹配请求的标头。 |
|
要添加的标头的名称。 |
|
要添加的标头的值。 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。 如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 选项
|
|
需要从请求中删除的标头名称列表,然后将请求转发到 backendService。 |
|
在将响应发送回客户端之前添加到响应的标头。 |
|
要添加的标头的名称。 |
|
要添加的标头的值。 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。 如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 选项
|
|
需要从响应中删除的标头名称列表,然后将响应发送回客户端。 |
|
指定发送到 backendService 的流量比例,计算方法为 weight /(routeAction 中所有 weightedBackendService 权重的总和)。 仅针对新流量确定后端服务的选取。一旦用户的请求被定向到一个后端服务,后续请求将根据后端服务的会话关联策略发送到同一个后端服务。 值必须在 0 到 1000 之间。 |
|
如果没有任何 hostRules 匹配,则将流量定向到的 defaultService 资源的完整或部分 URL。如果另外指定了 defaultRouteAction,则高级路由操作(如 URL 重写等)将在将请求发送到后端之前生效。但是,如果指定了 defaultService,则 defaultRouteAction 不能包含任何 weightedBackendServices。反之,如果 routeAction 指定任何 weightedBackendServices,则不能指定 service。必须只设置 defaultService、defaultUrlRedirect 或 defaultRouteAction.weightedBackendService 中的一个。 此字段表示指向 GCP 中 BackendService 资源的链接。可以通过两种方式指定它。首先,您可以放置一个键为“selfLink”且值为资源 selfLink 的字典。或者,您可以将 `register: name-of-resource` 添加到 gcp_compute_backend_service 任务,然后将此 default_service 字段设置为“{{ name-of-resource }}” |
|
如果指定的 hostRules 均不匹配,则请求将重定向到 defaultUrlRedirect 指定的 URL。如果指定了 defaultUrlRedirect,则不能设置 defaultService 或 defaultRouteAction。 |
|
将在重定向响应中使用的主机,而不是请求中提供的那个主机。值必须在 1 到 255 个字符之间。 |
|
如果设置为 true,则重定向请求中的 URL 方案将设置为 https。如果设置为 false,则重定向请求的 URL 方案将保持与请求的 URL 方案相同。这只能设置为在 TargetHttpProxys 中使用的 UrlMaps。不允许为 TargetHttpsProxy 设置为 true。默认为 false。 选项
|
|
将在重定向响应中使用的路径,而不是请求中提供的那个路径。pathRedirect 不能与 prefixRedirect 一起提供。单独提供一个或都不提供。如果两者都不提供,则将使用原始请求的路径进行重定向。值必须在 1 到 1024 个字符之间。 |
|
替换 HttpRouteRuleMatch 中指定的 prefixMatch 的前缀,保留 URL 的其余部分,然后重定向请求。 prefixRedirect 不能与 pathRedirect 一起提供。单独提供一个或都不提供。如果两者都不提供,则将使用原始请求的路径进行重定向。值必须在 1 到 1024 个字符之间。 |
|
为此 RedirectAction 使用的 HTTP 状态代码。支持的值为:* 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” |
|
如果设置为 true,则在重定向请求之前,将删除原始 URL 的任何伴随查询部分。如果设置为 false,则将保留原始 URL 的查询部分。默认为 false。 选项
|
|
此资源的可选描述。创建资源时提供此属性。 |
|
指定您在其中运行此模块的 Ansible 环境。 除非您知道自己在做什么,否则不应设置此项。 这只会更改任何 API 请求的用户代理字符串。 |
|
指定需要对所选 backendService 生效的请求和响应标头的更改。此处指定的 headerAction 在 pathMatcher 下指定的 headerAction 之后生效。 |
|
在将请求转发到 backendService 之前,添加到匹配请求的标头。 |
|
标头的名称。 |
|
要添加的标头的值。 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 选项
|
|
需要从请求中删除的标头名称列表,然后将请求转发到 backendService。 |
|
在将响应发送回客户端之前添加到响应的标头。 |
|
标头的名称。 |
|
要添加的标头的值。 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 选项
|
|
需要从响应中删除的标头名称列表,然后将响应发送回客户端。 |
|
要针对 URL 使用的 HostRules 列表。 |
|
此资源的可选描述。创建资源时提供此属性。 |
|
要匹配的主机模式列表。它们必须是有效的主机名,除了 * 将匹配任何 ([a-z0-9-.]*) 字符串。在这种情况下,* 必须是第一个字符,并且必须在模式中紧跟 - 或 .。 |
|
如果 hostRule 匹配 URL 的主机部分,则使用该 PathMatcher 来匹配 URL 路径部分的名称。 |
|
资源名称。资源创建时由客户端提供。名称长度必须为 1-63 个字符,并符合 RFC1035 规范。具体来说,名称长度必须为 1-63 个字符,并匹配正则表达式 `[a-z]([-a-z0-9]*[a-z0-9])?`,这意味着第一个字符必须是小写字母,所有后续字符必须是连字符、小写字母或数字,最后一个字符不能是连字符。 |
|
用于匹配 URL 的命名 PathMatcher 列表。 |
|
当没有 pathRules 或 routeRules 匹配时,defaultRouteAction 生效。负载均衡器会在将请求转发到选定的后端之前执行高级路由操作,例如 URL 重写、报头转换等。如果 defaultRouteAction 指定任何 weightedBackendServices,则不能设置 defaultService。 反之,如果设置了 defaultService,则 defaultRouteAction 不能包含任何 weightedBackendServices。 只能设置 defaultRouteAction 或 defaultUrlRedirect 之一。 |
|
允许客户端跨域请求的规范。请参阅 [W3C 跨域资源共享建议](https://www.w3.org/TR/cors/)。 |
|
响应预检请求时,将其设置为 true 表示实际请求可以包含用户凭据。 这将转换为 Access-Control-Allow-Credentials 标头。 选项
|
|
指定 Access-Control-Allow-Headers 标头的內容。 |
|
指定 Access-Control-Allow-Methods 标头的內容。 |
|
指定与允许的来源匹配的正则表达式模式。有关正则表达式语法,请参阅 en.cppreference.com/w/cpp/regex/ecmascript。如果来源与 allowOrigins 中的项目或 allowOriginRegexes 中的项目匹配,则允许该来源。 |
|
指定将允许执行 CORS 请求的来源列表。 如果来源与 allowOrigins 中的项目或 allowOriginRegexes 中的项目匹配,则允许该来源。 |
|
如果为 true,则指定 CORS 策略已禁用。默认值为 false,表示 CORS 策略有效。 选项
|
|
指定 Access-Control-Expose-Headers 标头的內容。 |
|
指定预检请求的结果可以缓存多少秒。 这将转换为 Access-Control-Max-Age 标头。 |
|
引入到流量中的故障注入规范,用于测试客户端对后端服务故障的弹性。 作为故障注入的一部分,当客户端向后端服务发送请求时,负载均衡器可以在将这些请求发送到后端服务之前,对一定比例的请求引入延迟。类似地,负载均衡器可以为一定比例的请求中止来自客户端的请求。 配置了 faultInjectionPolicy 的客户端将忽略 timeout 和 retryPolicy。 |
|
指定作为故障注入的一部分如何中止客户端请求的规范。 |
|
用于中止请求的 HTTP 状态代码。 值必须介于 200 和 599(含)之间。 |
|
作为故障注入的一部分将中止的流量(连接/操作/请求)的百分比。 值必须介于 0.0 和 100.0(含)之间。 |
|
指定作为故障注入的一部分,在将客户端请求发送到后端服务之前如何延迟客户端请求的规范。 |
|
指定固定延迟间隔的值。 |
|
以纳秒分辨率表示的少于一秒的时间跨度。小于一秒的持续时间用 0 秒字段和正纳秒字段表示。必须介于 0 到 999,999,999(含)之间。 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 注意:这些边界是根据以下计算得出的:60 秒/分钟 * 60 分钟/小时 * 24 小时/天 * 365.25 天/年 * 10000 年。 |
|
作为故障注入的一部分将引入延迟的流量(连接/操作/请求)的百分比。 值必须介于 0.0 和 100.0(含)之间。 |
|
指定如何将意图用于路由后端的请求镜像到单独的镜像后端服务的策略。 负载均衡器不会等待来自影子服务的响应。在将流量发送到影子服务之前,主机/授权标头将后缀为 -shadow。 |
|
镜像到的 BackendService 资源的完整或部分 URL。 此字段表示指向 GCP 中 BackendService 资源的链接。它可以通过两种方式指定。首先,您可以放置一个键为“selfLink”且值为资源 selfLink 的字典。或者,您可以将 `register: name-of-resource` 添加到 gcp_compute_backend_service 任务,然后将此 backend_service 字段设置为“{{ name-of-resource }}” |
|
指定与此路由关联的重试策略。 |
|
指定允许的重试次数。此数字必须 > 0。如果未指定,则默认为 1。 默认值: |
|
指定每次重试尝试的非零超时时间。 如果未指定,将使用 HttpRouteAction 中设置的超时时间。如果 HttpRouteAction 中未设置超时时间,将使用与该路由关联的所有后端服务中的最大超时时间。 |
|
以纳秒分辨率表示的少于一秒的时间跨度。小于一秒的持续时间用 0 秒字段和正纳秒字段表示。必须介于 0 到 999,999,999(含)之间。 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 注意:这些边界是根据以下计算得出的:60 秒/分钟 * 60 分钟/小时 * 24 小时/天 * 365.25 天/年 * 10000 年。 |
|
指定此重试规则适用的一个或多个条件。有效值为:* 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,负载均衡器将重试。 |
|
指定所选路由的超时时间。超时时间是从请求完全处理完毕(即流结束)到响应完全处理完毕的时间计算的。超时时间包括所有重试。 如果未指定,将使用与该路由关联的所有后端服务中的最大超时时间。 |
|
以纳秒分辨率表示的少于一秒的时间跨度。小于一秒的持续时间用 0 秒字段和正纳秒字段表示。必须介于 0 到 999,999,999(含)之间。 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 注意:这些边界是根据以下计算得出的:60 秒/分钟 * 60 分钟/小时 * 24 小时/天 * 365.25 天/年 * 10000 年。 |
|
在将请求转发到匹配的服务之前,修改请求 URL 的规范。 |
|
在将请求转发到所选服务之前,请求的 host 头将替换为 hostRewrite 的内容。 值必须在 1 到 255 个字符之间。 |
|
在将请求转发到所选后端服务之前,请求路径的匹配部分将替换为 pathPrefixRewrite。 值必须在 1 到 1024 个字符之间。 |
|
发生路由匹配时用于发送流量的加权后端服务的列表。 权重决定流向其对应后端服务的流量比例。 如果所有流量都需要发送到单个后端服务,则必须有一个 weightedBackendService 的权重设置为非 0 数字。 一旦确定了后端服务,并且在将请求转发到后端服务之前,将根据此 HttpRouteAction 中指定的其他设置应用高级路由操作,例如 URL 重写和标头转换。 |
|
指向默认 BackendService 资源的完整或部分 URL。在将请求转发到 backendService 之前,负载均衡器将应用作为此 backendServiceWeight 部分指定的任何相关 headerActions。 此字段表示指向 GCP 中 BackendService 资源的链接。它可以通过两种方式指定。首先,您可以放置一个键为“selfLink”且值为资源 selfLink 的字典。或者,您可以将 `register: name-of-resource` 添加到 gcp_compute_backend_service 任务,然后将此 backend_service 字段设置为“{{ name-of-resource }}” |
|
指定需要对所选 backendService 生效的请求和响应标头的更改。 此处指定的 headerAction 在包含的 HttpRouteRule、PathMatcher 和 UrlMap 中的 headerAction 之前生效。 |
|
在将请求转发到 backendService 之前,添加到匹配请求的标头。 |
|
要添加的标头的名称。 |
|
要添加的标头的值。 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。 如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 选项
|
|
需要从请求中删除的标头名称列表,然后将请求转发到 backendService。 |
|
在将响应发送回客户端之前添加到响应的标头。 |
|
要添加的标头的名称。 |
|
要添加的标头的值。 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。 如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 选项
|
|
需要从响应中删除的标头名称列表,然后将响应发送回客户端。 |
|
指定发送到 backendService 的流量比例,计算方法为 weight /(routeAction 中所有 weightedBackendService 权重的总和)。 仅针对新流量确定后端服务的选取。一旦用户的请求被定向到一个后端服务,后续请求将根据后端服务的会话关联策略发送到同一个后端服务。 值必须在 0 到 1000 之间。 |
|
指向 BackendService 资源的完整或部分 URL。如果此 PathMatcher 定义的 pathRules 或 routeRules 均未匹配,则将使用此 URL。例如,以下是指向 BackendService 资源的所有有效 URL: - https://www.googleapis.com/compute/v1/projects/project/global/backendServices/backendService - compute/v1/projects/project/global/backendServices/backendService - global/backendServices/backendService 如果另外还指定了 defaultRouteAction,则在将请求发送到后端之前,高级路由操作(例如 URL 重写等)将生效。但是,如果指定了 defaultService,则 defaultRouteAction 不能包含任何 weightedBackendServices。反之,如果 defaultRouteAction 指定任何 weightedBackendServices,则必须不指定 defaultService。 必须只设置 defaultService、defaultUrlRedirect 或 defaultRouteAction.weightedBackendService 之一。授权需要在指定的资源 defaultService 上拥有以下一个或多个 Google IAM 权限: - compute.backendBuckets.use - compute.backendServices.use。 此字段表示指向 GCP 中 BackendService 资源的链接。可以通过两种方式指定它。首先,您可以放置一个键为“selfLink”且值为资源 selfLink 的字典。或者,您可以将 `register: name-of-resource` 添加到 gcp_compute_backend_service 任务,然后将此 default_service 字段设置为“{{ name-of-resource }}” |
|
如果指定的 hostRules 均不匹配,则请求将重定向到 defaultUrlRedirect 指定的 URL。如果指定了 defaultUrlRedirect,则不能设置 defaultService 或 defaultRouteAction。 |
|
将在重定向响应中使用的主机,而不是请求中提供的那个主机。值必须在 1 到 255 个字符之间。 |
|
如果设置为 true,则重定向请求中的 URL 方案将设置为 https。如果设置为 false,则重定向请求的 URL 方案将保持与请求的 URL 方案相同。这只能设置为在 TargetHttpProxys 中使用的 UrlMaps。不允许为 TargetHttpsProxy 设置为 true。默认为 false。 选项
|
|
将在重定向响应中使用的路径,而不是请求中提供的那个路径。pathRedirect 不能与 prefixRedirect 一起提供。单独提供一个或都不提供。如果两者都不提供,则将使用原始请求的路径进行重定向。值必须在 1 到 1024 个字符之间。 |
|
替换 HttpRouteRuleMatch 中指定的 prefixMatch 的前缀,保留 URL 的其余部分,然后重定向请求。 prefixRedirect 不能与 pathRedirect 一起提供。单独提供一个或都不提供。如果两者都不提供,则将使用原始请求的路径进行重定向。值必须在 1 到 1024 个字符之间。 |
|
为此 RedirectAction 使用的 HTTP 状态代码。支持的值为:* 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” |
|
如果设置为 true,则在重定向请求之前,将删除原始 URL 中的任何随附查询部分。如果设置为 false,则保留原始 URL 的查询部分。 选项
|
|
此资源的可选描述。创建资源时提供此属性。 |
|
指定需要对选定的 backendService 生效的请求和响应报头更改。此处指定的 HeaderAction 应用于匹配的 HttpRouteRule HeaderAction 之后,并在 UrlMap 中的 HeaderAction 之前。 |
|
在将请求转发到 backendService 之前,添加到匹配请求的标头。 |
|
标头的名称。 |
|
要添加的标头的值。 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 选项
|
|
需要从请求中删除的标头名称列表,然后将请求转发到 backendService。 |
|
在将响应发送回客户端之前添加到响应的标头。 |
|
标头的名称。 |
|
要添加的标头的值。 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 选项
|
|
需要从响应中删除的标头名称列表,然后将响应发送回客户端。 |
|
HostRule 引用的此 PathMatcher 的名称。 |
|
路径规则列表。当仅需要基于简单的路径匹配进行路由时,请使用此列表代替 routeRules。指定路径规则的顺序无关紧要。匹配始终基于最长路径优先原则进行。例如:路径为 /a/b/c/* 的 pathRule 将在 /a/b/* 之前匹配,无论这些路径在此列表中出现的顺序如何。在给定的 pathMatcher 中,必须只设置 pathRules 或 routeRules 之一。 |
|
要匹配的路径模式列表。每个路径都必须以 / 开头,并且只允许在结尾处使用 \*,且必须位于 / 之后。提供给路径匹配器的字符串不包含第一个 ? 或 # 之后的任何文本,并且此处不允许使用这些字符。 |
|
响应匹配的路径,负载均衡器会在将请求转发到选定的后端之前执行高级路由操作,例如 URL 重写、报头转换等。如果 routeAction 指定任何 weightedBackendServices,则不能设置 service。反之,如果设置了 service,则 routeAction 不能包含任何 weightedBackendServices。必须只设置 routeAction 或 urlRedirect 之一。 |
|
允许客户端跨域请求的规范。请参阅 W3C 关于跨域资源共享的建议。 |
|
响应预检请求时,将其设置为 true 表示实际请求可以包含用户凭据。这将转换为 Access-Control-Allow-Credentials 报头。默认为 false。 选项
|
|
指定 Access-Control-Allow-Headers 标头的內容。 |
|
指定 Access-Control-Allow-Methods 标头的內容。 |
|
指定与允许的来源匹配的正则表达式模式。有关正则表达式语法,请参阅 en.cppreference.com/w/cpp/regex/ecmascript。如果来源与 allow_origins 或 allow_origin_regex 匹配,则允许该来源。 |
|
指定允许执行 CORS 请求的来源列表。如果来源与 allow_origins 或 allow_origin_regex 匹配,则允许该来源。 |
|
如果为 true,则指定 CORS 策略已禁用。 选项
|
|
指定 Access-Control-Expose-Headers 标头的內容。 |
|
指定预检请求的结果可以缓存多长时间。这将转换为 Access-Control-Max-Age 报头的内容。 |
|
引入到流量中的故障注入规范,用于测试客户端对后端服务故障的弹性。作为故障注入的一部分,当客户端向后端服务发送请求时,负载均衡器可以在将这些请求发送到后端服务之前,对一定百分比的请求引入延迟。同样,负载均衡器可以为一定百分比的请求中止来自客户端的请求。配置了 fault_injection_policy 的客户端将忽略 timeout 和 retry_policy。 |
|
指定作为故障注入的一部分如何中止客户端请求的规范。 |
|
用于中止请求的 HTTP 状态代码。值必须介于 200 和 599(含)之间。 |
|
作为故障注入的一部分将中止的流量(连接/操作/请求)的百分比。值必须介于 0.0 和 100.0(含)之间。 |
|
指定作为故障注入的一部分,在将客户端请求发送到后端服务之前如何延迟客户端请求的规范。 |
|
指定固定延迟间隔的值。 |
|
以纳秒分辨率表示的几分之一秒的时间跨度。小于一秒的持续时间用 0 `seconds` 字段和正 `nanos` 字段表示。必须介于 0 到 999,999,999(含)之间。 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 |
|
将引入延迟的流量(连接/操作/请求)的百分比,作为故障注入的一部分。值必须介于 0.0 和 100.0(含)之间。 |
|
指定如何将针对路由后端的请求影子到单独的镜像后端服务的策略。负载均衡器不会等待来自影子服务的响应。在将流量发送到影子服务之前,主机/授权报头将后缀为 -shadow。 |
|
正在镜像到的 BackendService 资源。 此字段表示指向 GCP 中 BackendService 资源的链接。它可以通过两种方式指定。首先,您可以放置一个键为“selfLink”且值为资源 selfLink 的字典。或者,您可以将 `register: name-of-resource` 添加到 gcp_compute_backend_service 任务,然后将此 backend_service 字段设置为“{{ name-of-resource }}” |
|
指定与此路由关联的重试策略。 |
|
指定允许的重试次数。此数字必须 > 0。 |
|
指定每次重试尝试的非零超时时间。 |
|
以纳秒分辨率表示的几分之一秒的时间跨度。小于一秒的持续时间用 0 `seconds` 字段和正 `nanos` 字段表示。必须介于 0 到 999,999,999(含)之间。 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 |
|
指定此重试规则适用的一个或多个条件。有效值为:* 5xx:如果后端服务返回任何 5xx 响应代码,或者后端服务根本没有响应(例如:断开连接、重置、读取超时、连接故障和拒绝的流),则负载均衡器将尝试重试。 * gateway-error:类似于 5xx,但仅适用于响应代码 502、503 或 504。 * connect-failure:负载均衡器将在连接到后端服务失败时重试,例如由于连接超时。 * retriable-4xx:负载均衡器将针对可重试的 4xx 响应代码重试。 目前唯一支持的可重试错误是 409。 * refused-stream:如果后端服务使用 REFUSED_STREAM 错误代码重置流,则负载均衡器将重试。此重置类型表示可以安全地重试。 * cancelled:如果响应头中的 gRPC 状态代码设置为 cancelled,负载均衡器将重试 * deadline-exceeded:如果响应头中的 gRPC 状态代码设置为 deadline-exceeded,负载均衡器将重试 * resource-exhausted:如果响应头中的 gRPC 状态代码设置为 resource-exhausted,负载均衡器将重试 * unavailable:如果响应头中的 gRPC 状态代码设置为 unavailable,负载均衡器将重试。 |
|
指定所选路由的超时时间。超时时间从请求完全处理(即流结束)的时间到响应完全处理的时间计算。超时时间包括所有重试。如果未指定,则默认值为 15 秒。 |
|
以纳秒分辨率表示的几分之一秒的时间跨度。小于一秒的持续时间用 0 `seconds` 字段和正 `nanos` 字段表示。必须介于 0 到 999,999,999(含)之间。 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 |
|
在将请求转发到匹配的服务之前修改请求 URL 的规范。 |
|
在将请求转发到选定的服务之前,请求的主机报头将替换为 hostRewrite 的内容。值必须介于 1 和 255 个字符之间。 |
|
在将请求转发到选定的后端服务之前,请求路径的匹配部分将替换为 pathPrefixRewrite。值必须介于 1 和 1024 个字符之间。 |
|
发生路由匹配时要向其发送流量的加权后端服务列表。权重决定流向其对应后端服务的流量比例。如果所有流量都需要转到单个后端服务,则必须有一个 weightedBackendService 的权重设置为非 0 数字。一旦识别出后端服务,并且在将请求转发到后端服务之前,将根据此 HttpRouteAction 中指定的其他设置应用高级路由操作,例如 URL 重写和报头转换。 |
|
默认的 BackendService 资源。在将请求转发到 backendService 之前,负载均衡器将应用作为此 backendServiceWeight 的一部分指定的任何相关 headerActions。 此字段表示指向 GCP 中 BackendService 资源的链接。它可以通过两种方式指定。首先,您可以放置一个键为“selfLink”且值为资源 selfLink 的字典。或者,您可以将 `register: name-of-resource` 添加到 gcp_compute_backend_service 任务,然后将此 backend_service 字段设置为“{{ name-of-resource }}” |
|
指定需要对选定的 backendService 生效的请求和响应报头更改。此处指定的 headerAction 在封闭的 HttpRouteRule、PathMatcher 和 UrlMap 中的 headerAction 之前生效。 |
|
在将请求转发到 backendService 之前,添加到匹配请求的标头。 |
|
标头的名称。 |
|
要添加的标头的值。 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 选项
|
|
需要从请求中删除的标头名称列表,然后将请求转发到 backendService。 |
|
在将响应发送回客户端之前添加到响应的标头。 |
|
标头的名称。 |
|
要添加的标头的值。 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 选项
|
|
需要从响应中删除的标头名称列表,然后将响应发送回客户端。 |
|
指定发送到 backendService 的流量比例,计算方式为 weight /(routeAction 中所有 weightedBackendService 权重的总和)。仅对新流量确定后端服务的选取。一旦用户的请求被定向到后端服务,后续请求将根据 BackendService 的会话关联性策略发送到相同的后端服务。 值必须在 0 到 1000 之间。 |
|
如果匹配此规则,则将流量定向到的后端服务资源。如果另外还指定了 routeAction,则在将请求发送到后端之前,高级路由操作(例如 URL 重写等)将生效。但是,如果指定了 service,则 routeAction 不能包含任何 weightedBackendServices。反之,如果 routeAction 指定任何 weightedBackendServices,则必须不指定 service。必须只设置 urlRedirect、service 或 routeAction.weightedBackendService 之一。 此字段表示指向 GCP 中 BackendService 资源的链接。可以通过两种方式指定。首先,您可以放置一个字典,其中键为“selfLink”,值为资源的 selfLink。或者,您可以将 `register: name-of-resource` 添加到 gcp_compute_backend_service 任务中,然后将此 service 字段设置为“{{ name-of-resource }}”。 |
|
匹配路径模式时,请求将重定向到 urlRedirect 指定的 URL。如果指定了 urlRedirect,则不能设置 service 或 routeAction。 |
|
将在重定向响应中使用的主机,而不是请求中提供的那个主机。值必须在 1 到 255 个字符之间。 |
|
如果设置为 true,则重定向请求中的 URL 方案将设置为 https。 如果设置为 false,则重定向请求的 URL 方案将保持与请求的 URL 方案相同。这只能设置为在 TargetHttpProxys 中使用的 UrlMaps。不允许为 TargetHttpsProxy 将其设置为 true。默认为 false。 选项
|
|
将在重定向响应中使用的路径,而不是请求中提供的路径。pathRedirect 不能与 prefixRedirect 一起提供。单独提供一个或两者都不提供。如果两者都不提供,则将使用原始请求的路径进行重定向。 值必须在 1 到 1024 个字符之间。 |
|
替换 HttpRouteRuleMatch 中指定的 prefixMatch 的前缀,保留 URL 的其余部分,然后重定向请求。prefixRedirect 不能与 pathRedirect 一起提供。单独提供一个或两者都不提供。如果两者都不提供,则将使用原始请求的路径进行重定向。值必须介于 1 和 1024 个字符之间。 |
|
为此 RedirectAction 使用的 HTTP 状态代码。支持的值为:* 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” |
|
如果设置为 true,则在重定向请求之前,将删除原始 URL 中的任何随附查询部分。如果设置为 false,则保留原始 URL 的查询部分。 选项
|
|
已排序的 HTTP 路由规则列表。如果需要高级路由匹配和路由操作,请使用此列表代替 pathRules。routeRules 的指定顺序很重要:第一个匹配的规则将导致其指定的路由操作生效。在给定的 pathMatcher 中,只能设置 pathRules 或 routeRules 之一。外部负载均衡器专用的 UrlMaps 不支持 routeRules。 |
|
指定需要对选定的 backendService 生效的请求和响应标头更改。此处指定的 headerAction 将在匹配的 pathMatchers[].headerAction 之前应用,并在 pathMatchers[].routeRules[].routeAction.weightedBackendService.backendServiceWeightAction[].headerAction 之后应用。 |
|
在将请求转发到 backendService 之前,添加到匹配请求的标头。 |
|
标头的名称。 |
|
要添加的标头的值。 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 选项
|
|
需要从请求中删除的标头名称列表,然后将请求转发到 backendService。 |
|
在将响应发送回客户端之前添加到响应的标头。 |
|
标头的名称。 |
|
要添加的标头的值。 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 选项
|
|
需要从响应中删除的标头名称列表,然后将响应发送回客户端。 |
|
确定匹配的规则。 |
|
为了满足 matchRule 条件,请求的路径必须与 fullPathMatch 中指定的值完全匹配,前提是已删除原始 URL 中可能包含的任何查询参数和锚点。FullPathMatch 必须在 1 到 1024 个字符之间。只能指定 prefixMatch、fullPathMatch 或 regexMatch 之一。 |
|
指定标头匹配条件列表,所有这些条件都必须与请求中的相应标头匹配。 |
|
该值应与 exactMatch 的内容完全匹配。只能设置 exactMatch、prefixMatch、suffixMatch、regexMatch、presentMatch 或 rangeMatch 之一。 |
|
要匹配的 HTTP 标头的名称。要针对 HTTP 请求的授权进行匹配,请使用标头名称为“:authority”的 headerMatch。要匹配请求的方法,请使用 headerName“:method”。 |
|
如果设置为 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 请求中指定的端口进行匹配,请使用 headerName 设置为 PORT 的 headerMatch 和满足 RFC2616 Host 标头端口说明符的正则表达式。 只能设置 exactMatch、prefixMatch、suffixMatch、regexMatch、presentMatch 或 rangeMatch 之一。 |
|
标头的值必须以 suffixMatch 的内容结尾。只能设置 exactMatch、prefixMatch、suffixMatch、regexMatch、presentMatch 或 rangeMatch 之一。 |
|
指定 prefixMatch 和 fullPathMatch 匹配是否区分大小写。 默认为 false。 选项
|
|
负载均衡器使用的透明过滤器条件,用于将路由配置限制为一组有限的符合 xDS 的客户端。在它们对负载均衡器的 xDS 请求中,xDS 客户端会提供节点元数据。如果发生匹配,则相关的路由配置将提供给这些代理。对于此列表中的每个 metadataFilter,如果其 filterMatchCriteria 设置为 MATCH_ANY,则至少一个 filterLabels 必须与元数据中提供的相应标签匹配。如果其 filterMatchCriteria 设置为 MATCH_ALL,则其所有 filterLabels 都必须与提供的元数据中的相应标签匹配。此处指定的 metadataFilters 可以覆盖引用此 UrlMap 的 ForwardingRule 中指定的那些 metadataFilters。metadataFilters 仅适用于其 loadBalancingScheme 设置为 INTERNAL_SELF_MANAGED 的负载均衡器。 |
|
必须根据 filterMatchCriteria 与提供的元数据中的标签匹配的标签值对列表。此列表不得为空,最多可以包含 64 个条目。 |
|
元数据标签的名称。名称的最大长度为 1024 个字符,并且必须至少为 1 个字符。 |
|
标签的值必须与指定的值匹配。value 的最大长度为 1024 个字符。 |
|
指定 filterLabels 列表中各个 filterLabel 匹配如何对整体 metadataFilter 匹配做出贡献。支持的值为:- MATCH_ANY:至少一个 filterLabels 必须在提供的元数据中具有匹配的标签。
一些有效的选项包括:“MATCH_ALL”、“MATCH_ANY” |
|
为了满足 matchRule 条件,请求的路径必须以指定的 prefixMatch 开头。prefixMatch 必须以 / 开头。该值必须在 1 到 1024 个字符之间。只能指定 prefixMatch、fullPathMatch 或 regexMatch 之一。 |
|
指定查询参数匹配条件列表,所有这些条件都必须与请求中的相应查询参数匹配。 |
|
如果参数的值与 exactMatch 的内容完全匹配,则 queryParameterMatch 匹配。只能设置 presentMatch、exactMatch 和 regexMatch 之一。 |
|
要匹配的查询参数的名称。请求中必须存在查询参数,否则请求匹配将失败。 |
|
指定如果请求包含查询参数,则 queryParameterMatch 匹配,而不管参数是否有值。只能设置 presentMatch、exactMatch 和 regexMatch 之一。 选项
|
|
如果参数的值与 regexMatch 指定的正则表达式匹配,则 queryParameterMatch 匹配。有关正则表达式语法,请参阅 en.cppreference.com/w/cpp/regex/ecmascript 只能设置 presentMatch、exactMatch 和 regexMatch 之一。 |
|
为了满足 matchRule 条件,请求的路径必须满足在删除原始 URL 附带的任何查询参数和锚点后 regexMatch 中指定的正则表达式。有关正则表达式语法,请参阅 en.cppreference.com/w/cpp/regex/ecmascript 只能指定 prefixMatch、fullPathMatch 或 regexMatch 之一。 |
|
对于给定 pathMatcher 中的 routeRules,优先级决定负载均衡器解释 routeRules 的顺序。按优先级顺序(从最低到最高的数字)评估 RouteRules。规则的优先级随着其数字的增加而降低(1、2、3、N+1)。应用第一个与请求匹配的规则。 不能配置两个或多个具有相同优先级的 routeRules。 每个规则的优先级必须设置为 0 到 2147483647(含)之间的数字。 优先级数字可以有间隙,这使您能够在将来添加或删除规则,而不会影响其余规则。例如,1、2、3、4、5、9、12、16 是一系列有效的优先级数字,您可以在将来向其中添加编号为 6 到 8、10 到 11 和 13 到 15 的规则,而不会对现有规则产生任何影响。 |
|
响应匹配的 matchRule,负载均衡器会在将请求转发到选定的后端之前执行高级路由操作,例如 URL 重写、标头转换等。如果 routeAction 指定任何 weightedBackendServices,则 service 不得设置。反之,如果设置了 service,则 routeAction 不能包含任何 weightedBackendServices。只能设置 routeAction 或 urlRedirect 之一。 |
|
允许客户端跨域请求的规范。请参阅 W3C 关于跨域资源共享的建议。 |
|
响应预检请求时,将其设置为 true 表示实际请求可以包含用户凭据。这将转换为 Access-Control-Allow-Credentials 报头。默认为 false。 选项
|
|
指定 Access-Control-Allow-Headers 标头的內容。 |
|
指定 Access-Control-Allow-Methods 标头的內容。 |
|
指定与允许的来源匹配的正则表达式模式。有关正则表达式语法,请参阅 en.cppreference.com/w/cpp/regex/ecmascript。如果来源与 allow_origins 或 allow_origin_regex 匹配,则允许该来源。 |
|
指定允许执行 CORS 请求的来源列表。如果来源与 allow_origins 或 allow_origin_regex 匹配,则允许该来源。 |
|
如果为 true,则指定 CORS 策略已禁用。 这表示 CORS 策略正在生效。默认为 false。 选项
|
|
指定 Access-Control-Expose-Headers 标头的內容。 |
|
指定预检请求的结果可以缓存多长时间。这将转换为 Access-Control-Max-Age 报头的内容。 |
|
引入到流量中的故障注入规范,用于测试客户端对后端服务故障的弹性。作为故障注入的一部分,当客户端向后端服务发送请求时,负载均衡器可以在将这些请求发送到后端服务之前,对一定百分比的请求引入延迟。同样,负载均衡器可以为一定百分比的请求中止来自客户端的请求。配置了 fault_injection_policy 的客户端将忽略 timeout 和 retry_policy。 |
|
指定作为故障注入的一部分如何中止客户端请求的规范。 |
|
用于中止请求的 HTTP 状态代码。值必须介于 200 和 599(含)之间。 |
|
作为故障注入的一部分将中止的流量(连接/操作/请求)的百分比。值必须介于 0.0 和 100.0(含)之间。 |
|
指定作为故障注入的一部分,在将客户端请求发送到后端服务之前如何延迟客户端请求的规范。 |
|
指定固定延迟间隔的值。 |
|
以纳秒分辨率表示的几分之一秒的时间跨度。小于一秒的持续时间用 0 `seconds` 字段和正 `nanos` 字段表示。必须介于 0 到 999,999,999(含)之间。 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 |
|
将引入延迟的流量(连接/操作/请求)的百分比,作为故障注入的一部分。值必须介于 0.0 和 100.0(含)之间。 |
|
指定如何将针对路由后端的请求影子到单独的镜像后端服务的策略。负载均衡器不会等待来自影子服务的响应。在将流量发送到影子服务之前,主机/授权报头将后缀为 -shadow。 |
|
正在镜像到的 BackendService 资源。 此字段表示指向 GCP 中 BackendService 资源的链接。它可以通过两种方式指定。首先,您可以放置一个键为“selfLink”且值为资源 selfLink 的字典。或者,您可以将 `register: name-of-resource` 添加到 gcp_compute_backend_service 任务,然后将此 backend_service 字段设置为“{{ name-of-resource }}” |
|
指定与此路由关联的重试策略。 |
|
指定允许的重试次数。此数字必须 > 0。 |
|
指定每次重试尝试的非零超时时间。 如果未指定,将使用 HttpRouteAction 中设置的超时时间。如果 HttpRouteAction 中未设置超时时间,将使用与该路由关联的所有后端服务中的最大超时时间。 |
|
以纳秒分辨率表示的几分之一秒的时间跨度。小于一秒的持续时间用 0 `seconds` 字段和正 `nanos` 字段表示。必须介于 0 到 999,999,999(含)之间。 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 |
|
指定此重试规则适用的一个或多个条件。有效值为:* 5xx:如果后端服务返回任何 5xx 响应代码,或者后端服务根本没有响应(例如:断开连接、重置、读取超时、连接失败和拒绝流),负载均衡器将尝试重试。 * gateway-error:类似于 5xx,但仅适用于响应代码 502、503 或 504。 * connect-failure:负载均衡器将在连接到后端服务失败时重试,例如由于连接超时。 * retriable-4xx:负载均衡器将针对可重试的 4xx 响应代码重试。 目前唯一支持的可重试错误是 409。 * refused-stream:如果后端服务使用 REFUSED_STREAM 错误代码重置流,则负载均衡器将重试。此重置类型表示可以安全地重试。 * cancelled:如果响应头中的 gRPC 状态代码设置为 cancelled,负载均衡器将重试 * deadline-exceeded:如果响应头中的 gRPC 状态代码设置为 deadline-exceeded,负载均衡器将重试 * resource-exhausted:如果响应头中的 gRPC 状态代码设置为 resource-exhausted,负载均衡器将重试 * unavailable:如果响应头中的 gRPC 状态代码设置为 unavailable,负载均衡器将重试。 |
|
指定所选路由的超时时间。超时时间从请求完全处理(即流结束)的时间到响应完全处理的时间计算。超时时间包括所有重试。如果未指定,则默认值为 15 秒。 |
|
以纳秒分辨率表示的几分之一秒的时间跨度。小于一秒的持续时间用 0 `seconds` 字段和正 `nanos` 字段表示。必须介于 0 到 999,999,999(含)之间。 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 |
|
在将请求转发到匹配的服务之前修改请求 URL 的规范。 |
|
在将请求转发到选定的服务之前,请求的主机报头将替换为 hostRewrite 的内容。值必须介于 1 和 255 个字符之间。 |
|
在将请求转发到选定的后端服务之前,请求路径的匹配部分将替换为 pathPrefixRewrite。值必须介于 1 和 1024 个字符之间。 |
|
发生路由匹配时要向其发送流量的加权后端服务列表。权重决定流向其对应后端服务的流量比例。如果所有流量都需要转到单个后端服务,则必须有一个 weightedBackendService 的权重设置为非 0 数字。一旦识别出后端服务,并且在将请求转发到后端服务之前,将根据此 HttpRouteAction 中指定的其他设置应用高级路由操作,例如 URL 重写和报头转换。 |
|
默认的 BackendService 资源。在将请求转发到 backendService 之前,负载均衡器将应用作为此 backendServiceWeight 的一部分指定的任何相关 headerActions。 此字段表示指向 GCP 中 BackendService 资源的链接。它可以通过两种方式指定。首先,您可以放置一个键为“selfLink”且值为资源 selfLink 的字典。或者,您可以将 `register: name-of-resource` 添加到 gcp_compute_backend_service 任务,然后将此 backend_service 字段设置为“{{ name-of-resource }}” |
|
指定需要对选定的 backendService 生效的请求和响应报头更改。此处指定的 headerAction 在封闭的 HttpRouteRule、PathMatcher 和 UrlMap 中的 headerAction 之前生效。 |
|
在将请求转发到 backendService 之前,添加到匹配请求的标头。 |
|
标头的名称。 |
|
要添加的标头的值。 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 选项
|
|
需要从请求中删除的标头名称列表,然后将请求转发到 backendService。 |
|
在将响应发送回客户端之前添加到响应的标头。 |
|
标头的名称。 |
|
要添加的标头的值。 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 选项
|
|
需要从响应中删除的标头名称列表,然后将响应发送回客户端。 |
|
指定发送到 backendService 的流量比例,计算方式为 weight /(routeAction 中所有 weightedBackendService 权重的总和)。仅对新流量确定后端服务的选取。一旦用户的请求被定向到后端服务,后续请求将根据 BackendService 的会话关联性策略发送到相同的后端服务。 值必须在 0 到 1000 之间。 |
|
如果匹配此规则,则将流量定向到的后端服务资源。如果另外还指定了 routeAction,则在将请求发送到后端之前,高级路由操作(例如 URL 重写等)将生效。但是,如果指定了 service,则 routeAction 不能包含任何 weightedBackendServices。反之,如果 routeAction 指定任何 weightedBackendServices,则必须不指定 service。必须只设置 urlRedirect、service 或 routeAction.weightedBackendService 之一。 此字段表示指向 GCP 中 BackendService 资源的链接。可以通过两种方式指定。首先,您可以放置一个字典,其中键为“selfLink”,值为资源的 selfLink。或者,您可以将 `register: name-of-resource` 添加到 gcp_compute_backend_service 任务中,然后将此 service 字段设置为“{{ name-of-resource }}”。 |
|
当匹配此规则时,请求将重定向到 urlRedirect 指定的 URL。如果指定了 urlRedirect,则不得设置 service 或 routeAction。 |
|
将在重定向响应中使用的主机,而不是请求中提供的那个主机。值必须在 1 到 255 个字符之间。 |
|
如果设置为 true,则重定向请求中的 URL 方案将设置为 https。如果设置为 false,则重定向请求的 URL 方案将保持与请求的 URL 方案相同。这只能针对 TargetHttpProxys 中使用的 UrlMaps 设置。 不允许为 TargetHttpsProxy 设置为 true。默认为 false。 选项
|
|
将用于重定向响应中的路径,而不是请求中提供的路径。只能指定 pathRedirect 或 prefixRedirect 之一。该值必须在 1 到 1024 个字符之间。 |
|
替换 HttpRouteRuleMatch 中指定的 prefixMatch 的前缀,保留 URL 的其余部分,然后重定向请求。 |
|
为此 RedirectAction 使用的 HTTP 状态代码。支持的值为:* 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” |
|
如果设置为 true,则在重定向请求之前,将删除原始 URL 的任何伴随查询部分。如果设置为 false,则将保留原始 URL 的查询部分。默认为 false。 选项
|
|
要使用的 Google Cloud Platform 项目。 |
|
要使用的范围数组 |
|
服务帐户 JSON 文件的内容,可以是字典或表示它的 JSON 字符串。 |
|
如果选择 machineaccount 并且用户不希望使用默认电子邮件,则可以选择服务帐户电子邮件地址。 |
|
如果选择 serviceaccount 作为类型,则为服务帐户 JSON 文件的路径。 |
|
给定对象是否应该存在于 GCP 中 选项
|
|
预期 URL 映射测试列表。只有在所有测试用例都通过后,更新此 UrlMap 的请求才会成功。每个 UrlMap 最多可以指定 100 个测试。 |
|
此测试用例的描述。 |
|
URL 的主机部分。 |
|
URL 的路径部分。 |
|
给定 URL 应映射到的预期 BackendService 资源。 此字段表示指向 GCP 中 BackendService 资源的链接。可以通过两种方式指定。首先,您可以放置一个字典,其中键为“selfLink”,值为资源的 selfLink。或者,您可以将 `register: name-of-resource` 添加到 gcp_compute_backend_service 任务中,然后将此 service 字段设置为“{{ name-of-resource }}”。 |
注释
注意
API 参考:https://cloud.google.com/compute/docs/reference/rest/v1/urlMaps
对于身份验证,您可以使用
GCP_SERVICE_ACCOUNT_FILE
环境变量设置 service_account_file。对于身份验证,您可以使用
GCP_SERVICE_ACCOUNT_CONTENTS
环境变量设置 service_account_contents。对于身份验证,您可以使用
GCP_SERVICE_ACCOUNT_EMAIL
环境变量设置 service_account_email。用于身份验证,您可以使用
GCP_ACCESS_TOKEN
环境变量设置access_token。用于身份验证,您可以使用
GCP_AUTH_KIND
环境变量设置auth_kind。用于身份验证,您可以使用
GCP_SCOPES
环境变量设置scopes。只有在未设置 playbook 值的情况下,才会使用环境变量值。
service_account_email 和 service_account_file 选项是互斥的。
示例
- name: create a instance group
google.cloud.gcp_compute_instance_group:
name: instancegroup-urlmap
zone: us-central1-a
project: "{{ gcp_project }}"
auth_kind: "{{ gcp_cred_kind }}"
service_account_file: "{{ gcp_cred_file }}"
state: present
register: instancegroup
- name: create a HTTP health check
google.cloud.gcp_compute_http_health_check:
name: httphealthcheck-urlmap
healthy_threshold: 10
port: 8080
timeout_sec: 2
unhealthy_threshold: 5
project: "{{ gcp_project }}"
auth_kind: "{{ gcp_cred_kind }}"
service_account_file: "{{ gcp_cred_file }}"
state: present
register: healthcheck
- name: create a backend service
google.cloud.gcp_compute_backend_service:
name: backendservice-urlmap
backends:
- group: "{{ instancegroup.selfLink }}"
health_checks:
- "{{ healthcheck.selfLink }}"
enable_cdn: 'true'
project: "{{ gcp_project }}"
auth_kind: "{{ gcp_cred_kind }}"
service_account_file: "{{ gcp_cred_file }}"
state: present
register: backendservice
- name: create a URL map
google.cloud.gcp_compute_url_map:
name: test_object
default_service: "{{ backendservice }}"
project: test_project
auth_kind: serviceaccount
service_account_file: "/tmp/auth.pem"
state: present
返回值
常见的返回值已在此处记录,以下是此模块特有的字段
键 |
描述 |
---|---|
RFC3339文本格式的创建时间戳。 返回:成功 |
|
当没有任何 hostRules 匹配时,defaultRouteAction 生效。负载均衡器在将请求转发到所选后端之前,会执行高级路由操作,例如 URL 重写、标头转换等。 如果 defaultRouteAction 指定任何 weightedBackendServices,则不能设置 defaultService。反之,如果设置了 defaultService,则 defaultRouteAction 不能包含任何 weightedBackendServices。 只能设置 defaultRouteAction 或 defaultUrlRedirect 之一。 返回:成功 |
|
允许客户端跨域请求的规范。请参阅 [W3C 跨域资源共享建议](https://www.w3.org/TR/cors/)。 返回:成功 |
|
响应预检请求时,将其设置为 true 表示实际请求可以包含用户凭据。 这将转换为 Access-Control-Allow-Credentials 标头。 返回:成功 |
|
指定 Access-Control-Allow-Headers 标头的內容。 返回:成功 |
|
指定 Access-Control-Allow-Methods 标头的內容。 返回:成功 |
|
指定与允许的来源匹配的正则表达式模式。有关正则表达式语法,请参阅 en.cppreference.com/w/cpp/regex/ecmascript。如果来源与 allowOrigins 中的项目或 allowOriginRegexes 中的项目匹配,则允许该来源。 返回:成功 |
|
指定将允许执行 CORS 请求的来源列表。 如果来源与 allowOrigins 中的项目或 allowOriginRegexes 中的项目匹配,则允许该来源。 返回:成功 |
|
如果为 true,则指定 CORS 策略已禁用。默认值为 false,表示 CORS 策略有效。 返回:成功 |
|
指定 Access-Control-Expose-Headers 标头的內容。 返回:成功 |
|
指定预检请求的结果可以缓存多少秒。 这将转换为 Access-Control-Max-Age 标头。 返回:成功 |
|
引入到流量中的故障注入规范,用于测试客户端对后端服务故障的弹性。 作为故障注入的一部分,当客户端向后端服务发送请求时,负载均衡器可以在将这些请求发送到后端服务之前,对一定比例的请求引入延迟。类似地,负载均衡器可以为一定比例的请求中止来自客户端的请求。 配置了 faultInjectionPolicy 的客户端将忽略 timeout 和 retryPolicy。 返回:成功 |
|
指定作为故障注入的一部分如何中止客户端请求的规范。 返回:成功 |
|
用于中止请求的 HTTP 状态代码。 值必须介于 200 和 599(含)之间。 返回:成功 |
|
作为故障注入的一部分将中止的流量(连接/操作/请求)的百分比。 值必须介于 0.0 和 100.0(含)之间。 返回:成功 |
|
指定作为故障注入的一部分,在将客户端请求发送到后端服务之前如何延迟客户端请求的规范。 返回:成功 |
|
指定固定延迟间隔的值。 返回:成功 |
|
以纳秒分辨率表示的少于一秒的时间跨度。小于一秒的持续时间用 0 秒字段和正纳秒字段表示。必须介于 0 到 999,999,999(含)之间。 返回:成功 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 注意:这些边界是根据以下计算得出的:60 秒/分钟 * 60 分钟/小时 * 24 小时/天 * 365.25 天/年 * 10000 年。 返回:成功 |
|
作为故障注入的一部分将引入延迟的流量(连接/操作/请求)的百分比。 值必须介于 0.0 和 100.0(含)之间。 返回:成功 |
|
指定如何将意图用于路由后端的请求镜像到单独的镜像后端服务的策略。 负载均衡器不会等待来自影子服务的响应。在将流量发送到影子服务之前,主机/授权标头将后缀为 -shadow。 返回:成功 |
|
镜像到的 BackendService 资源的完整或部分 URL。 返回:成功 |
|
指定与此路由关联的重试策略。 返回:成功 |
|
指定允许的重试次数。此数字必须 > 0。如果未指定,则默认为 1。 返回:成功 |
|
指定每次重试尝试的非零超时时间。 如果未指定,将使用 HttpRouteAction 中设置的超时时间。如果 HttpRouteAction 中未设置超时时间,将使用与该路由关联的所有后端服务中的最大超时时间。 返回:成功 |
|
以纳秒分辨率表示的少于一秒的时间跨度。小于一秒的持续时间用 0 秒字段和正纳秒字段表示。必须介于 0 到 999,999,999(含)之间。 返回:成功 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 注意:这些边界是根据以下计算得出的:60 秒/分钟 * 60 分钟/小时 * 24 小时/天 * 365.25 天/年 * 10000 年。 返回:成功 |
|
指定此重试规则适用的一个或多个条件。有效值为:* 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,负载均衡器将重试。 返回:成功 |
|
指定所选路由的超时时间。超时时间是从请求完全处理完毕(即流结束)到响应完全处理完毕的时间计算的。超时时间包括所有重试。 如果未指定,将使用与该路由关联的所有后端服务中的最大超时时间。 返回:成功 |
|
以纳秒分辨率表示的少于一秒的时间跨度。小于一秒的持续时间用 0 秒字段和正纳秒字段表示。必须介于 0 到 999,999,999(含)之间。 返回:成功 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 注意:这些边界是根据以下计算得出的:60 秒/分钟 * 60 分钟/小时 * 24 小时/天 * 365.25 天/年 * 10000 年。 返回:成功 |
|
在将请求转发到匹配的服务之前,修改请求 URL 的规范。 返回:成功 |
|
在将请求转发到所选服务之前,请求的 host 头将替换为 hostRewrite 的内容。 值必须在 1 到 255 个字符之间。 返回:成功 |
|
在将请求转发到所选后端服务之前,请求路径的匹配部分将替换为 pathPrefixRewrite。 值必须在 1 到 1024 个字符之间。 返回:成功 |
|
发生路由匹配时用于发送流量的加权后端服务的列表。 权重决定流向其对应后端服务的流量比例。 如果所有流量都需要发送到单个后端服务,则必须有一个 weightedBackendService 的权重设置为非 0 数字。 一旦确定了后端服务,并且在将请求转发到后端服务之前,将根据此 HttpRouteAction 中指定的其他设置应用高级路由操作,例如 URL 重写和标头转换。 返回:成功 |
|
指向默认 BackendService 资源的完整或部分 URL。在将请求转发到 backendService 之前,负载均衡器将应用作为此 backendServiceWeight 部分指定的任何相关 headerActions。 返回:成功 |
|
指定需要对所选 backendService 生效的请求和响应标头的更改。 此处指定的 headerAction 在包含的 HttpRouteRule、PathMatcher 和 UrlMap 中的 headerAction 之前生效。 返回:成功 |
|
在将请求转发到 backendService 之前,添加到匹配请求的标头。 返回:成功 |
|
要添加的标头的名称。 返回:成功 |
|
要添加的标头的值。 返回:成功 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。 如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 返回:成功 |
|
需要从请求中删除的标头名称列表,然后将请求转发到 backendService。 返回:成功 |
|
在将响应发送回客户端之前添加到响应的标头。 返回:成功 |
|
要添加的标头的名称。 返回:成功 |
|
要添加的标头的值。 返回:成功 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。 如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 返回:成功 |
|
需要从响应中删除的标头名称列表,然后将响应发送回客户端。 返回:成功 |
|
指定发送到 backendService 的流量比例,计算方法为 weight /(routeAction 中所有 weightedBackendService 权重的总和)。 仅针对新流量确定后端服务的选取。一旦用户的请求被定向到一个后端服务,后续请求将根据后端服务的会话关联策略发送到同一个后端服务。 值必须在 0 到 1000 之间。 返回:成功 |
|
如果没有任何 hostRules 匹配,则将流量定向到的 defaultService 资源的完整或部分 URL。如果另外指定了 defaultRouteAction,则高级路由操作(如 URL 重写等)将在将请求发送到后端之前生效。但是,如果指定了 defaultService,则 defaultRouteAction 不能包含任何 weightedBackendServices。反之,如果 routeAction 指定任何 weightedBackendServices,则不能指定 service。必须只设置 defaultService、defaultUrlRedirect 或 defaultRouteAction.weightedBackendService 中的一个。 返回:成功 |
|
如果指定的 hostRules 均不匹配,则请求将重定向到 defaultUrlRedirect 指定的 URL。如果指定了 defaultUrlRedirect,则不能设置 defaultService 或 defaultRouteAction。 返回:成功 |
|
将在重定向响应中使用的主机,而不是请求中提供的那个主机。值必须在 1 到 255 个字符之间。 返回:成功 |
|
如果设置为 true,则重定向请求中的 URL 方案将设置为 https。如果设置为 false,则重定向请求的 URL 方案将保持与请求的 URL 方案相同。这只能设置为在 TargetHttpProxys 中使用的 UrlMaps。不允许为 TargetHttpsProxy 设置为 true。默认为 false。 返回:成功 |
|
将在重定向响应中使用的路径,而不是请求中提供的那个路径。pathRedirect 不能与 prefixRedirect 一起提供。单独提供一个或都不提供。如果两者都不提供,则将使用原始请求的路径进行重定向。值必须在 1 到 1024 个字符之间。 返回:成功 |
|
替换 HttpRouteRuleMatch 中指定的 prefixMatch 的前缀,保留 URL 的其余部分,然后重定向请求。 prefixRedirect 不能与 pathRedirect 一起提供。单独提供一个或都不提供。如果两者都不提供,则将使用原始请求的路径进行重定向。值必须在 1 到 1024 个字符之间。 返回:成功 |
|
为此 RedirectAction 使用的 HTTP 状态代码。支持的值为:* MOVED_PERMANENTLY_DEFAULT,这是默认值,对应于 301。 * FOUND,对应于 302。 * SEE_OTHER,对应于 303。 * TEMPORARY_REDIRECT,对应于 307。在这种情况下,将保留请求方法。 * PERMANENT_REDIRECT,对应于 308。在这种情况下,将保留请求方法。 返回:成功 |
|
如果设置为 true,则在重定向请求之前,将删除原始 URL 的任何伴随查询部分。如果设置为 false,则将保留原始 URL 的查询部分。默认为 false。 返回:成功 |
|
此资源的可选描述。创建资源时提供此属性。 返回:成功 |
|
此资源的指纹。此对象中存储的内容的哈希值。此字段用于乐观锁定。 返回:成功 |
|
指定需要对所选 backendService 生效的请求和响应标头的更改。此处指定的 headerAction 在 pathMatcher 下指定的 headerAction 之后生效。 返回:成功 |
|
在将请求转发到 backendService 之前,添加到匹配请求的标头。 返回:成功 |
|
标头的名称。 返回:成功 |
|
要添加的标头的值。 返回:成功 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 返回:成功 |
|
需要从请求中删除的标头名称列表,然后将请求转发到 backendService。 返回:成功 |
|
在将响应发送回客户端之前添加到响应的标头。 返回:成功 |
|
标头的名称。 返回:成功 |
|
要添加的标头的值。 返回:成功 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 返回:成功 |
|
需要从响应中删除的标头名称列表,然后将响应发送回客户端。 返回:成功 |
|
要针对 URL 使用的 HostRules 列表。 返回:成功 |
|
此资源的可选描述。创建资源时提供此属性。 返回:成功 |
|
要匹配的主机模式列表。它们必须是有效的主机名,除了 * 将匹配任何 ([a-z0-9-.]*) 字符串。在这种情况下,* 必须是第一个字符,并且必须在模式中紧跟 - 或 .。 返回:成功 |
|
如果 hostRule 匹配 URL 的主机部分,则使用该 PathMatcher 来匹配 URL 路径部分的名称。 返回:成功 |
|
资源的唯一标识符。 返回:成功 |
|
资源名称。资源创建时由客户端提供。名称长度必须为 1-63 个字符,并符合 RFC1035 规范。具体来说,名称长度必须为 1-63 个字符,并匹配正则表达式 `[a-z]([-a-z0-9]*[a-z0-9])?`,这意味着第一个字符必须是小写字母,所有后续字符必须是连字符、小写字母或数字,最后一个字符不能是连字符。 返回:成功 |
|
用于匹配 URL 的命名 PathMatcher 列表。 返回:成功 |
|
当没有 pathRules 或 routeRules 匹配时,defaultRouteAction 生效。负载均衡器会在将请求转发到选定的后端之前执行高级路由操作,例如 URL 重写、报头转换等。如果 defaultRouteAction 指定任何 weightedBackendServices,则不能设置 defaultService。 反之,如果设置了 defaultService,则 defaultRouteAction 不能包含任何 weightedBackendServices。 只能设置 defaultRouteAction 或 defaultUrlRedirect 之一。 返回:成功 |
|
允许客户端跨域请求的规范。请参阅 [W3C 跨域资源共享建议](https://www.w3.org/TR/cors/)。 返回:成功 |
|
响应预检请求时,将其设置为 true 表示实际请求可以包含用户凭据。 这将转换为 Access-Control-Allow-Credentials 标头。 返回:成功 |
|
指定 Access-Control-Allow-Headers 标头的內容。 返回:成功 |
|
指定 Access-Control-Allow-Methods 标头的內容。 返回:成功 |
|
指定与允许的来源匹配的正则表达式模式。有关正则表达式语法,请参阅 en.cppreference.com/w/cpp/regex/ecmascript。如果来源与 allowOrigins 中的项目或 allowOriginRegexes 中的项目匹配,则允许该来源。 返回:成功 |
|
指定将允许执行 CORS 请求的来源列表。 如果来源与 allowOrigins 中的项目或 allowOriginRegexes 中的项目匹配,则允许该来源。 返回:成功 |
|
如果为 true,则指定 CORS 策略已禁用。默认值为 false,表示 CORS 策略有效。 返回:成功 |
|
指定 Access-Control-Expose-Headers 标头的內容。 返回:成功 |
|
指定预检请求的结果可以缓存多少秒。 这将转换为 Access-Control-Max-Age 标头。 返回:成功 |
|
引入到流量中的故障注入规范,用于测试客户端对后端服务故障的弹性。 作为故障注入的一部分,当客户端向后端服务发送请求时,负载均衡器可以在将这些请求发送到后端服务之前,对一定比例的请求引入延迟。类似地,负载均衡器可以为一定比例的请求中止来自客户端的请求。 配置了 faultInjectionPolicy 的客户端将忽略 timeout 和 retryPolicy。 返回:成功 |
|
指定作为故障注入的一部分如何中止客户端请求的规范。 返回:成功 |
|
用于中止请求的 HTTP 状态代码。 值必须介于 200 和 599(含)之间。 返回:成功 |
|
作为故障注入的一部分将中止的流量(连接/操作/请求)的百分比。 值必须介于 0.0 和 100.0(含)之间。 返回:成功 |
|
指定作为故障注入的一部分,在将客户端请求发送到后端服务之前如何延迟客户端请求的规范。 返回:成功 |
|
指定固定延迟间隔的值。 返回:成功 |
|
以纳秒分辨率表示的少于一秒的时间跨度。小于一秒的持续时间用 0 秒字段和正纳秒字段表示。必须介于 0 到 999,999,999(含)之间。 返回:成功 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 注意:这些边界是根据以下计算得出的:60 秒/分钟 * 60 分钟/小时 * 24 小时/天 * 365.25 天/年 * 10000 年。 返回:成功 |
|
作为故障注入的一部分将引入延迟的流量(连接/操作/请求)的百分比。 值必须介于 0.0 和 100.0(含)之间。 返回:成功 |
|
指定如何将意图用于路由后端的请求镜像到单独的镜像后端服务的策略。 负载均衡器不会等待来自影子服务的响应。在将流量发送到影子服务之前,主机/授权标头将后缀为 -shadow。 返回:成功 |
|
镜像到的 BackendService 资源的完整或部分 URL。 返回:成功 |
|
指定与此路由关联的重试策略。 返回:成功 |
|
指定允许的重试次数。此数字必须 > 0。如果未指定,则默认为 1。 返回:成功 |
|
指定每次重试尝试的非零超时时间。 如果未指定,将使用 HttpRouteAction 中设置的超时时间。如果 HttpRouteAction 中未设置超时时间,将使用与该路由关联的所有后端服务中的最大超时时间。 返回:成功 |
|
以纳秒分辨率表示的少于一秒的时间跨度。小于一秒的持续时间用 0 秒字段和正纳秒字段表示。必须介于 0 到 999,999,999(含)之间。 返回:成功 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 注意:这些边界是根据以下计算得出的:60 秒/分钟 * 60 分钟/小时 * 24 小时/天 * 365.25 天/年 * 10000 年。 返回:成功 |
|
指定此重试规则适用的一个或多个条件。有效值为:* 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,负载均衡器将重试。 返回:成功 |
|
指定所选路由的超时时间。超时时间是从请求完全处理完毕(即流结束)到响应完全处理完毕的时间计算的。超时时间包括所有重试。 如果未指定,将使用与该路由关联的所有后端服务中的最大超时时间。 返回:成功 |
|
以纳秒分辨率表示的少于一秒的时间跨度。小于一秒的持续时间用 0 秒字段和正纳秒字段表示。必须介于 0 到 999,999,999(含)之间。 返回:成功 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 注意:这些边界是根据以下计算得出的:60 秒/分钟 * 60 分钟/小时 * 24 小时/天 * 365.25 天/年 * 10000 年。 返回:成功 |
|
在将请求转发到匹配的服务之前,修改请求 URL 的规范。 返回:成功 |
|
在将请求转发到所选服务之前,请求的 host 头将替换为 hostRewrite 的内容。 值必须在 1 到 255 个字符之间。 返回:成功 |
|
在将请求转发到所选后端服务之前,请求路径的匹配部分将替换为 pathPrefixRewrite。 值必须在 1 到 1024 个字符之间。 返回:成功 |
|
发生路由匹配时用于发送流量的加权后端服务的列表。 权重决定流向其对应后端服务的流量比例。 如果所有流量都需要发送到单个后端服务,则必须有一个 weightedBackendService 的权重设置为非 0 数字。 一旦确定了后端服务,并且在将请求转发到后端服务之前,将根据此 HttpRouteAction 中指定的其他设置应用高级路由操作,例如 URL 重写和标头转换。 返回:成功 |
|
指向默认 BackendService 资源的完整或部分 URL。在将请求转发到 backendService 之前,负载均衡器将应用作为此 backendServiceWeight 部分指定的任何相关 headerActions。 返回:成功 |
|
指定需要对所选 backendService 生效的请求和响应标头的更改。 此处指定的 headerAction 在包含的 HttpRouteRule、PathMatcher 和 UrlMap 中的 headerAction 之前生效。 返回:成功 |
|
在将请求转发到 backendService 之前,添加到匹配请求的标头。 返回:成功 |
|
要添加的标头的名称。 返回:成功 |
|
要添加的标头的值。 返回:成功 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。 如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 返回:成功 |
|
需要从请求中删除的标头名称列表,然后将请求转发到 backendService。 返回:成功 |
|
在将响应发送回客户端之前添加到响应的标头。 返回:成功 |
|
要添加的标头的名称。 返回:成功 |
|
要添加的标头的值。 返回:成功 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。 如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 返回:成功 |
|
需要从响应中删除的标头名称列表,然后将响应发送回客户端。 返回:成功 |
|
指定发送到 backendService 的流量比例,计算方法为 weight /(routeAction 中所有 weightedBackendService 权重的总和)。 仅针对新流量确定后端服务的选取。一旦用户的请求被定向到一个后端服务,后续请求将根据后端服务的会话关联策略发送到同一个后端服务。 值必须在 0 到 1000 之间。 返回:成功 |
|
指向 BackendService 资源的完整或部分 URL。如果此 PathMatcher 定义的 pathRules 或 routeRules 均未匹配,则将使用此 URL。例如,以下是指向 BackendService 资源的所有有效 URL: - https://www.googleapis.com/compute/v1/projects/project/global/backendServices/backendService - compute/v1/projects/project/global/backendServices/backendService - global/backendServices/backendService 如果另外还指定了 defaultRouteAction,则在将请求发送到后端之前,高级路由操作(例如 URL 重写等)将生效。但是,如果指定了 defaultService,则 defaultRouteAction 不能包含任何 weightedBackendServices。反之,如果 defaultRouteAction 指定任何 weightedBackendServices,则必须不指定 defaultService。 必须只设置 defaultService、defaultUrlRedirect 或 defaultRouteAction.weightedBackendService 之一。授权需要在指定的资源 defaultService 上拥有以下一个或多个 Google IAM 权限: - compute.backendBuckets.use - compute.backendServices.use。 返回:成功 |
|
如果指定的 hostRules 均不匹配,则请求将重定向到 defaultUrlRedirect 指定的 URL。如果指定了 defaultUrlRedirect,则不能设置 defaultService 或 defaultRouteAction。 返回:成功 |
|
将在重定向响应中使用的主机,而不是请求中提供的那个主机。值必须在 1 到 255 个字符之间。 返回:成功 |
|
如果设置为 true,则重定向请求中的 URL 方案将设置为 https。如果设置为 false,则重定向请求的 URL 方案将保持与请求的 URL 方案相同。这只能设置为在 TargetHttpProxys 中使用的 UrlMaps。不允许为 TargetHttpsProxy 设置为 true。默认为 false。 返回:成功 |
|
将在重定向响应中使用的路径,而不是请求中提供的那个路径。pathRedirect 不能与 prefixRedirect 一起提供。单独提供一个或都不提供。如果两者都不提供,则将使用原始请求的路径进行重定向。值必须在 1 到 1024 个字符之间。 返回:成功 |
|
替换 HttpRouteRuleMatch 中指定的 prefixMatch 的前缀,保留 URL 的其余部分,然后重定向请求。 prefixRedirect 不能与 pathRedirect 一起提供。单独提供一个或都不提供。如果两者都不提供,则将使用原始请求的路径进行重定向。值必须在 1 到 1024 个字符之间。 返回:成功 |
|
为此 RedirectAction 使用的 HTTP 状态代码。支持的值为:* MOVED_PERMANENTLY_DEFAULT,这是默认值,对应于 301。 * FOUND,对应于 302。 * SEE_OTHER,对应于 303。 * TEMPORARY_REDIRECT,对应于 307。在这种情况下,将保留请求方法。 * PERMANENT_REDIRECT,对应于 308。在这种情况下,将保留请求方法。 返回:成功 |
|
如果设置为 true,则在重定向请求之前,将删除原始 URL 中的任何随附查询部分。如果设置为 false,则保留原始 URL 的查询部分。 返回:成功 |
|
此资源的可选描述。创建资源时提供此属性。 返回:成功 |
|
指定需要对选定的 backendService 生效的请求和响应报头更改。此处指定的 HeaderAction 应用于匹配的 HttpRouteRule HeaderAction 之后,并在 UrlMap 中的 HeaderAction 之前。 返回:成功 |
|
在将请求转发到 backendService 之前,添加到匹配请求的标头。 返回:成功 |
|
标头的名称。 返回:成功 |
|
要添加的标头的值。 返回:成功 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 返回:成功 |
|
需要从请求中删除的标头名称列表,然后将请求转发到 backendService。 返回:成功 |
|
在将响应发送回客户端之前添加到响应的标头。 返回:成功 |
|
标头的名称。 返回:成功 |
|
要添加的标头的值。 返回:成功 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 返回:成功 |
|
需要从响应中删除的标头名称列表,然后将响应发送回客户端。 返回:成功 |
|
HostRule 引用的此 PathMatcher 的名称。 返回:成功 |
|
路径规则列表。当仅需要基于简单的路径匹配进行路由时,请使用此列表代替 routeRules。指定路径规则的顺序无关紧要。匹配始终基于最长路径优先原则进行。例如:路径为 /a/b/c/* 的 pathRule 将在 /a/b/* 之前匹配,无论这些路径在此列表中出现的顺序如何。在给定的 pathMatcher 中,必须只设置 pathRules 或 routeRules 之一。 返回:成功 |
|
要匹配的路径模式列表。每个路径都必须以 / 开头,并且只允许在结尾处使用 \*,且必须位于 / 之后。提供给路径匹配器的字符串不包含第一个 ? 或 # 之后的任何文本,并且此处不允许使用这些字符。 返回:成功 |
|
响应匹配的路径,负载均衡器会在将请求转发到选定的后端之前执行高级路由操作,例如 URL 重写、报头转换等。如果 routeAction 指定任何 weightedBackendServices,则不能设置 service。反之,如果设置了 service,则 routeAction 不能包含任何 weightedBackendServices。必须只设置 routeAction 或 urlRedirect 之一。 返回:成功 |
|
允许客户端跨域请求的规范。请参阅 W3C 关于跨域资源共享的建议。 返回:成功 |
|
响应预检请求时,将其设置为 true 表示实际请求可以包含用户凭据。这将转换为 Access-Control-Allow-Credentials 报头。默认为 false。 返回:成功 |
|
指定 Access-Control-Allow-Headers 标头的內容。 返回:成功 |
|
指定 Access-Control-Allow-Methods 标头的內容。 返回:成功 |
|
指定与允许的来源匹配的正则表达式模式。有关正则表达式语法,请参阅 en.cppreference.com/w/cpp/regex/ecmascript。如果来源与 allow_origins 或 allow_origin_regex 匹配,则允许该来源。 返回:成功 |
|
指定允许执行 CORS 请求的来源列表。如果来源与 allow_origins 或 allow_origin_regex 匹配,则允许该来源。 返回:成功 |
|
如果为 true,则指定 CORS 策略已禁用。 返回:成功 |
|
指定 Access-Control-Expose-Headers 标头的內容。 返回:成功 |
|
指定预检请求的结果可以缓存多长时间。这将转换为 Access-Control-Max-Age 报头的内容。 返回:成功 |
|
引入到流量中的故障注入规范,用于测试客户端对后端服务故障的弹性。作为故障注入的一部分,当客户端向后端服务发送请求时,负载均衡器可以在将这些请求发送到后端服务之前,对一定百分比的请求引入延迟。同样,负载均衡器可以为一定百分比的请求中止来自客户端的请求。配置了 fault_injection_policy 的客户端将忽略 timeout 和 retry_policy。 返回:成功 |
|
指定作为故障注入的一部分如何中止客户端请求的规范。 返回:成功 |
|
用于中止请求的 HTTP 状态代码。值必须介于 200 和 599(含)之间。 返回:成功 |
|
作为故障注入的一部分将中止的流量(连接/操作/请求)的百分比。值必须介于 0.0 和 100.0(含)之间。 返回:成功 |
|
指定作为故障注入的一部分,在将客户端请求发送到后端服务之前如何延迟客户端请求的规范。 返回:成功 |
|
指定固定延迟间隔的值。 返回:成功 |
|
以纳秒分辨率表示的几分之一秒的时间跨度。小于一秒的持续时间用 0 `seconds` 字段和正 `nanos` 字段表示。必须介于 0 到 999,999,999(含)之间。 返回:成功 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 返回:成功 |
|
将引入延迟的流量(连接/操作/请求)的百分比,作为故障注入的一部分。值必须介于 0.0 和 100.0(含)之间。 返回:成功 |
|
指定如何将针对路由后端的请求影子到单独的镜像后端服务的策略。负载均衡器不会等待来自影子服务的响应。在将流量发送到影子服务之前,主机/授权报头将后缀为 -shadow。 返回:成功 |
|
正在镜像到的 BackendService 资源。 返回:成功 |
|
指定与此路由关联的重试策略。 返回:成功 |
|
指定允许的重试次数。此数字必须 > 0。 返回:成功 |
|
指定每次重试尝试的非零超时时间。 返回:成功 |
|
以纳秒分辨率表示的几分之一秒的时间跨度。小于一秒的持续时间用 0 `seconds` 字段和正 `nanos` 字段表示。必须介于 0 到 999,999,999(含)之间。 返回:成功 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 返回:成功 |
|
指定此重试规则适用的一个或多个条件。有效值为:* 5xx:如果后端服务返回任何 5xx 响应代码,或者后端服务根本没有响应(例如:断开连接、重置、读取超时、连接故障和拒绝的流),则负载均衡器将尝试重试。 * gateway-error:类似于 5xx,但仅适用于响应代码 502、503 或 504。 * connect-failure:负载均衡器将在连接到后端服务失败时重试,例如由于连接超时。 * retriable-4xx:负载均衡器将针对可重试的 4xx 响应代码重试。 目前唯一支持的可重试错误是 409。 * refused-stream:如果后端服务使用 REFUSED_STREAM 错误代码重置流,则负载均衡器将重试。此重置类型表示可以安全地重试。 * cancelled:如果响应头中的 gRPC 状态代码设置为 cancelled,负载均衡器将重试 * deadline-exceeded:如果响应头中的 gRPC 状态代码设置为 deadline-exceeded,负载均衡器将重试 * resource-exhausted:如果响应头中的 gRPC 状态代码设置为 resource-exhausted,负载均衡器将重试 * unavailable:如果响应头中的 gRPC 状态代码设置为 unavailable,负载均衡器将重试。 返回:成功 |
|
指定所选路由的超时时间。超时时间从请求完全处理(即流结束)的时间到响应完全处理的时间计算。超时时间包括所有重试。如果未指定,则默认值为 15 秒。 返回:成功 |
|
以纳秒分辨率表示的几分之一秒的时间跨度。小于一秒的持续时间用 0 `seconds` 字段和正 `nanos` 字段表示。必须介于 0 到 999,999,999(含)之间。 返回:成功 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 返回:成功 |
|
在将请求转发到匹配的服务之前修改请求 URL 的规范。 返回:成功 |
|
在将请求转发到选定的服务之前,请求的主机报头将替换为 hostRewrite 的内容。值必须介于 1 和 255 个字符之间。 返回:成功 |
|
在将请求转发到选定的后端服务之前,请求路径的匹配部分将替换为 pathPrefixRewrite。值必须介于 1 和 1024 个字符之间。 返回:成功 |
|
发生路由匹配时要向其发送流量的加权后端服务列表。权重决定流向其对应后端服务的流量比例。如果所有流量都需要转到单个后端服务,则必须有一个 weightedBackendService 的权重设置为非 0 数字。一旦识别出后端服务,并且在将请求转发到后端服务之前,将根据此 HttpRouteAction 中指定的其他设置应用高级路由操作,例如 URL 重写和报头转换。 返回:成功 |
|
默认的 BackendService 资源。在将请求转发到 backendService 之前,负载均衡器将应用作为此 backendServiceWeight 的一部分指定的任何相关 headerActions。 返回:成功 |
|
指定需要对选定的 backendService 生效的请求和响应报头更改。此处指定的 headerAction 在封闭的 HttpRouteRule、PathMatcher 和 UrlMap 中的 headerAction 之前生效。 返回:成功 |
|
在将请求转发到 backendService 之前,添加到匹配请求的标头。 返回:成功 |
|
标头的名称。 返回:成功 |
|
要添加的标头的值。 返回:成功 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 返回:成功 |
|
需要从请求中删除的标头名称列表,然后将请求转发到 backendService。 返回:成功 |
|
在将响应发送回客户端之前添加到响应的标头。 返回:成功 |
|
标头的名称。 返回:成功 |
|
要添加的标头的值。 返回:成功 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 返回:成功 |
|
需要从响应中删除的标头名称列表,然后将响应发送回客户端。 返回:成功 |
|
指定发送到 backendService 的流量比例,计算方式为 weight /(routeAction 中所有 weightedBackendService 权重的总和)。仅对新流量确定后端服务的选取。一旦用户的请求被定向到后端服务,后续请求将根据 BackendService 的会话关联性策略发送到相同的后端服务。 值必须在 0 到 1000 之间。 返回:成功 |
|
如果匹配此规则,则将流量定向到的后端服务资源。如果另外还指定了 routeAction,则在将请求发送到后端之前,高级路由操作(例如 URL 重写等)将生效。但是,如果指定了 service,则 routeAction 不能包含任何 weightedBackendServices。反之,如果 routeAction 指定任何 weightedBackendServices,则必须不指定 service。必须只设置 urlRedirect、service 或 routeAction.weightedBackendService 之一。 返回:成功 |
|
匹配路径模式时,请求将重定向到 urlRedirect 指定的 URL。如果指定了 urlRedirect,则不能设置 service 或 routeAction。 返回:成功 |
|
将在重定向响应中使用的主机,而不是请求中提供的那个主机。值必须在 1 到 255 个字符之间。 返回:成功 |
|
如果设置为 true,则重定向请求中的 URL 方案将设置为 https。 如果设置为 false,则重定向请求的 URL 方案将保持与请求的 URL 方案相同。这只能设置为在 TargetHttpProxys 中使用的 UrlMaps。不允许为 TargetHttpsProxy 将其设置为 true。默认为 false。 返回:成功 |
|
将在重定向响应中使用的路径,而不是请求中提供的路径。pathRedirect 不能与 prefixRedirect 一起提供。单独提供一个或两者都不提供。如果两者都不提供,则将使用原始请求的路径进行重定向。 值必须在 1 到 1024 个字符之间。 返回:成功 |
|
替换 HttpRouteRuleMatch 中指定的 prefixMatch 的前缀,保留 URL 的其余部分,然后重定向请求。prefixRedirect 不能与 pathRedirect 一起提供。单独提供一个或两者都不提供。如果两者都不提供,则将使用原始请求的路径进行重定向。值必须介于 1 和 1024 个字符之间。 返回:成功 |
|
为此 RedirectAction 使用的 HTTP 状态代码。支持的值为:* MOVED_PERMANENTLY_DEFAULT,这是默认值,对应于 301。 * FOUND,对应于 302。 * SEE_OTHER,对应于 303。 * TEMPORARY_REDIRECT,对应于 307。在这种情况下,将保留请求方法。 * PERMANENT_REDIRECT,对应于 308。在这种情况下,将保留请求方法。 返回:成功 |
|
如果设置为 true,则在重定向请求之前,将删除原始 URL 中的任何随附查询部分。如果设置为 false,则保留原始 URL 的查询部分。 返回:成功 |
|
已排序的 HTTP 路由规则列表。如果需要高级路由匹配和路由操作,请使用此列表代替 pathRules。routeRules 的指定顺序很重要:第一个匹配的规则将导致其指定的路由操作生效。在给定的 pathMatcher 中,只能设置 pathRules 或 routeRules 之一。外部负载均衡器专用的 UrlMaps 不支持 routeRules。 返回:成功 |
|
指定需要对选定的 backendService 生效的请求和响应标头更改。此处指定的 headerAction 将在匹配的 pathMatchers[].headerAction 之前应用,并在 pathMatchers[].routeRules[].routeAction.weightedBackendService.backendServiceWeightAction[].headerAction 之后应用。 返回:成功 |
|
在将请求转发到 backendService 之前,添加到匹配请求的标头。 返回:成功 |
|
标头的名称。 返回:成功 |
|
要添加的标头的值。 返回:成功 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 返回:成功 |
|
需要从请求中删除的标头名称列表,然后将请求转发到 backendService。 返回:成功 |
|
在将响应发送回客户端之前添加到响应的标头。 返回:成功 |
|
标头的名称。 返回:成功 |
|
要添加的标头的值。 返回:成功 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 返回:成功 |
|
需要从响应中删除的标头名称列表,然后将响应发送回客户端。 返回:成功 |
|
确定匹配的规则。 返回:成功 |
|
为了满足 matchRule 条件,请求的路径必须与 fullPathMatch 中指定的值完全匹配,前提是已删除原始 URL 中可能包含的任何查询参数和锚点。FullPathMatch 必须在 1 到 1024 个字符之间。只能指定 prefixMatch、fullPathMatch 或 regexMatch 之一。 返回:成功 |
|
指定标头匹配条件列表,所有这些条件都必须与请求中的相应标头匹配。 返回:成功 |
|
该值应与 exactMatch 的内容完全匹配。只能设置 exactMatch、prefixMatch、suffixMatch、regexMatch、presentMatch 或 rangeMatch 之一。 返回:成功 |
|
要匹配的 HTTP 标头的名称。要针对 HTTP 请求的授权进行匹配,请使用标头名称为“:authority”的 headerMatch。要匹配请求的方法,请使用 headerName“:method”。 返回:成功 |
|
如果设置为 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 请求中指定的端口进行匹配,请使用 headerName 设置为 PORT 的 headerMatch 和满足 RFC2616 Host 标头端口说明符的正则表达式。 只能设置 exactMatch、prefixMatch、suffixMatch、regexMatch、presentMatch 或 rangeMatch 之一。 返回:成功 |
|
标头的值必须以 suffixMatch 的内容结尾。只能设置 exactMatch、prefixMatch、suffixMatch、regexMatch、presentMatch 或 rangeMatch 之一。 返回:成功 |
|
指定 prefixMatch 和 fullPathMatch 匹配是否区分大小写。 默认为 false。 返回:成功 |
|
负载均衡器使用的透明过滤器条件,用于将路由配置限制为一组有限的符合 xDS 的客户端。在它们对负载均衡器的 xDS 请求中,xDS 客户端会提供节点元数据。如果发生匹配,则相关的路由配置将提供给这些代理。对于此列表中的每个 metadataFilter,如果其 filterMatchCriteria 设置为 MATCH_ANY,则至少一个 filterLabels 必须与元数据中提供的相应标签匹配。如果其 filterMatchCriteria 设置为 MATCH_ALL,则其所有 filterLabels 都必须与提供的元数据中的相应标签匹配。此处指定的 metadataFilters 可以覆盖引用此 UrlMap 的 ForwardingRule 中指定的那些 metadataFilters。metadataFilters 仅适用于其 loadBalancingScheme 设置为 INTERNAL_SELF_MANAGED 的负载均衡器。 返回:成功 |
|
必须根据 filterMatchCriteria 与提供的元数据中的标签匹配的标签值对列表。此列表不得为空,最多可以包含 64 个条目。 返回:成功 |
|
元数据标签的名称。名称的最大长度为 1024 个字符,并且必须至少为 1 个字符。 返回:成功 |
|
标签的值必须与指定的值匹配。value 的最大长度为 1024 个字符。 返回:成功 |
|
指定 filterLabels 列表中各个 filterLabel 匹配如何对整体 metadataFilter 匹配做出贡献。支持的值为:- MATCH_ANY:至少一个 filterLabels 必须在提供的元数据中具有匹配的标签。
返回:成功 |
|
为了满足 matchRule 条件,请求的路径必须以指定的 prefixMatch 开头。prefixMatch 必须以 / 开头。该值必须在 1 到 1024 个字符之间。只能指定 prefixMatch、fullPathMatch 或 regexMatch 之一。 返回:成功 |
|
指定查询参数匹配条件列表,所有这些条件都必须与请求中的相应查询参数匹配。 返回:成功 |
|
如果参数的值与 exactMatch 的内容完全匹配,则 queryParameterMatch 匹配。只能设置 presentMatch、exactMatch 和 regexMatch 之一。 返回:成功 |
|
要匹配的查询参数的名称。请求中必须存在查询参数,否则请求匹配将失败。 返回:成功 |
|
指定如果请求包含查询参数,则 queryParameterMatch 匹配,而不管参数是否有值。只能设置 presentMatch、exactMatch 和 regexMatch 之一。 返回:成功 |
|
如果参数的值与 regexMatch 指定的正则表达式匹配,则 queryParameterMatch 匹配。有关正则表达式语法,请参阅 en.cppreference.com/w/cpp/regex/ecmascript 只能设置 presentMatch、exactMatch 和 regexMatch 之一。 返回:成功 |
|
为了满足 matchRule 条件,请求的路径必须满足在删除原始 URL 附带的任何查询参数和锚点后 regexMatch 中指定的正则表达式。有关正则表达式语法,请参阅 en.cppreference.com/w/cpp/regex/ecmascript 只能指定 prefixMatch、fullPathMatch 或 regexMatch 之一。 返回:成功 |
|
对于给定 pathMatcher 中的 routeRules,优先级决定负载均衡器解释 routeRules 的顺序。按优先级顺序(从最低到最高的数字)评估 RouteRules。规则的优先级随着其数字的增加而降低(1、2、3、N+1)。应用第一个与请求匹配的规则。 不能配置两个或多个具有相同优先级的 routeRules。 每个规则的优先级必须设置为 0 到 2147483647(含)之间的数字。 优先级数字可以有间隙,这使您能够在将来添加或删除规则,而不会影响其余规则。例如,1、2、3、4、5、9、12、16 是一系列有效的优先级数字,您可以在将来向其中添加编号为 6 到 8、10 到 11 和 13 到 15 的规则,而不会对现有规则产生任何影响。 返回:成功 |
|
响应匹配的 matchRule,负载均衡器会在将请求转发到选定的后端之前执行高级路由操作,例如 URL 重写、标头转换等。如果 routeAction 指定任何 weightedBackendServices,则 service 不得设置。反之,如果设置了 service,则 routeAction 不能包含任何 weightedBackendServices。只能设置 routeAction 或 urlRedirect 之一。 返回:成功 |
|
允许客户端跨域请求的规范。请参阅 W3C 关于跨域资源共享的建议。 返回:成功 |
|
响应预检请求时,将其设置为 true 表示实际请求可以包含用户凭据。这将转换为 Access-Control-Allow-Credentials 报头。默认为 false。 返回:成功 |
|
指定 Access-Control-Allow-Headers 标头的內容。 返回:成功 |
|
指定 Access-Control-Allow-Methods 标头的內容。 返回:成功 |
|
指定与允许的来源匹配的正则表达式模式。有关正则表达式语法,请参阅 en.cppreference.com/w/cpp/regex/ecmascript。如果来源与 allow_origins 或 allow_origin_regex 匹配,则允许该来源。 返回:成功 |
|
指定允许执行 CORS 请求的来源列表。如果来源与 allow_origins 或 allow_origin_regex 匹配,则允许该来源。 返回:成功 |
|
如果为 true,则指定 CORS 策略已禁用。 这表示 CORS 策略正在生效。默认为 false。 返回:成功 |
|
指定 Access-Control-Expose-Headers 标头的內容。 返回:成功 |
|
指定预检请求的结果可以缓存多长时间。这将转换为 Access-Control-Max-Age 报头的内容。 返回:成功 |
|
引入到流量中的故障注入规范,用于测试客户端对后端服务故障的弹性。作为故障注入的一部分,当客户端向后端服务发送请求时,负载均衡器可以在将这些请求发送到后端服务之前,对一定百分比的请求引入延迟。同样,负载均衡器可以为一定百分比的请求中止来自客户端的请求。配置了 fault_injection_policy 的客户端将忽略 timeout 和 retry_policy。 返回:成功 |
|
指定作为故障注入的一部分如何中止客户端请求的规范。 返回:成功 |
|
用于中止请求的 HTTP 状态代码。值必须介于 200 和 599(含)之间。 返回:成功 |
|
作为故障注入的一部分将中止的流量(连接/操作/请求)的百分比。值必须介于 0.0 和 100.0(含)之间。 返回:成功 |
|
指定作为故障注入的一部分,在将客户端请求发送到后端服务之前如何延迟客户端请求的规范。 返回:成功 |
|
指定固定延迟间隔的值。 返回:成功 |
|
以纳秒分辨率表示的几分之一秒的时间跨度。小于一秒的持续时间用 0 `seconds` 字段和正 `nanos` 字段表示。必须介于 0 到 999,999,999(含)之间。 返回:成功 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 返回:成功 |
|
将引入延迟的流量(连接/操作/请求)的百分比,作为故障注入的一部分。值必须介于 0.0 和 100.0(含)之间。 返回:成功 |
|
指定如何将针对路由后端的请求影子到单独的镜像后端服务的策略。负载均衡器不会等待来自影子服务的响应。在将流量发送到影子服务之前,主机/授权报头将后缀为 -shadow。 返回:成功 |
|
正在镜像到的 BackendService 资源。 返回:成功 |
|
指定与此路由关联的重试策略。 返回:成功 |
|
指定允许的重试次数。此数字必须 > 0。 返回:成功 |
|
指定每次重试尝试的非零超时时间。 如果未指定,将使用 HttpRouteAction 中设置的超时时间。如果 HttpRouteAction 中未设置超时时间,将使用与该路由关联的所有后端服务中的最大超时时间。 返回:成功 |
|
以纳秒分辨率表示的几分之一秒的时间跨度。小于一秒的持续时间用 0 `seconds` 字段和正 `nanos` 字段表示。必须介于 0 到 999,999,999(含)之间。 返回:成功 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 返回:成功 |
|
指定此重试规则适用的一个或多个条件。有效值为:* 5xx:如果后端服务返回任何 5xx 响应代码,或者后端服务根本没有响应(例如:断开连接、重置、读取超时、连接失败和拒绝流),负载均衡器将尝试重试。 * gateway-error:类似于 5xx,但仅适用于响应代码 502、503 或 504。 * connect-failure:负载均衡器将在连接到后端服务失败时重试,例如由于连接超时。 * retriable-4xx:负载均衡器将针对可重试的 4xx 响应代码重试。 目前唯一支持的可重试错误是 409。 * refused-stream:如果后端服务使用 REFUSED_STREAM 错误代码重置流,则负载均衡器将重试。此重置类型表示可以安全地重试。 * cancelled:如果响应头中的 gRPC 状态代码设置为 cancelled,负载均衡器将重试 * deadline-exceeded:如果响应头中的 gRPC 状态代码设置为 deadline-exceeded,负载均衡器将重试 * resource-exhausted:如果响应头中的 gRPC 状态代码设置为 resource-exhausted,负载均衡器将重试 * unavailable:如果响应头中的 gRPC 状态代码设置为 unavailable,负载均衡器将重试。 返回:成功 |
|
指定所选路由的超时时间。超时时间从请求完全处理(即流结束)的时间到响应完全处理的时间计算。超时时间包括所有重试。如果未指定,则默认值为 15 秒。 返回:成功 |
|
以纳秒分辨率表示的几分之一秒的时间跨度。小于一秒的持续时间用 0 `seconds` 字段和正 `nanos` 字段表示。必须介于 0 到 999,999,999(含)之间。 返回:成功 |
|
以秒为单位的时间跨度。必须介于 0 到 315,576,000,000(含)之间。 返回:成功 |
|
在将请求转发到匹配的服务之前修改请求 URL 的规范。 返回:成功 |
|
在将请求转发到选定的服务之前,请求的主机报头将替换为 hostRewrite 的内容。值必须介于 1 和 255 个字符之间。 返回:成功 |
|
在将请求转发到选定的后端服务之前,请求路径的匹配部分将替换为 pathPrefixRewrite。值必须介于 1 和 1024 个字符之间。 返回:成功 |
|
发生路由匹配时要向其发送流量的加权后端服务列表。权重决定流向其对应后端服务的流量比例。如果所有流量都需要转到单个后端服务,则必须有一个 weightedBackendService 的权重设置为非 0 数字。一旦识别出后端服务,并且在将请求转发到后端服务之前,将根据此 HttpRouteAction 中指定的其他设置应用高级路由操作,例如 URL 重写和报头转换。 返回:成功 |
|
默认的 BackendService 资源。在将请求转发到 backendService 之前,负载均衡器将应用作为此 backendServiceWeight 的一部分指定的任何相关 headerActions。 返回:成功 |
|
指定需要对选定的 backendService 生效的请求和响应报头更改。此处指定的 headerAction 在封闭的 HttpRouteRule、PathMatcher 和 UrlMap 中的 headerAction 之前生效。 返回:成功 |
|
在将请求转发到 backendService 之前,添加到匹配请求的标头。 返回:成功 |
|
标头的名称。 返回:成功 |
|
要添加的标头的值。 返回:成功 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 返回:成功 |
|
需要从请求中删除的标头名称列表,然后将请求转发到 backendService。 返回:成功 |
|
在将响应发送回客户端之前添加到响应的标头。 返回:成功 |
|
标头的名称。 返回:成功 |
|
要添加的标头的值。 返回:成功 |
|
如果为 false,则 headerValue 将附加到标头中已存在的任何值。如果为 true,则 headerValue 将设置为标头,并丢弃为该标头设置的任何值。 返回:成功 |
|
需要从响应中删除的标头名称列表,然后将响应发送回客户端。 返回:成功 |
|
指定发送到 backendService 的流量比例,计算方式为 weight /(routeAction 中所有 weightedBackendService 权重的总和)。仅对新流量确定后端服务的选取。一旦用户的请求被定向到后端服务,后续请求将根据 BackendService 的会话关联性策略发送到相同的后端服务。 值必须在 0 到 1000 之间。 返回:成功 |
|
如果匹配此规则,则将流量定向到的后端服务资源。如果另外还指定了 routeAction,则在将请求发送到后端之前,高级路由操作(例如 URL 重写等)将生效。但是,如果指定了 service,则 routeAction 不能包含任何 weightedBackendServices。反之,如果 routeAction 指定任何 weightedBackendServices,则必须不指定 service。必须只设置 urlRedirect、service 或 routeAction.weightedBackendService 之一。 返回:成功 |
|
当匹配此规则时,请求将重定向到 urlRedirect 指定的 URL。如果指定了 urlRedirect,则不得设置 service 或 routeAction。 返回:成功 |
|
将在重定向响应中使用的主机,而不是请求中提供的那个主机。值必须在 1 到 255 个字符之间。 返回:成功 |
|
如果设置为 true,则重定向请求中的 URL 方案将设置为 https。如果设置为 false,则重定向请求的 URL 方案将保持与请求的 URL 方案相同。这只能针对 TargetHttpProxys 中使用的 UrlMaps 设置。 不允许为 TargetHttpsProxy 设置为 true。默认为 false。 返回:成功 |
|
将用于重定向响应中的路径,而不是请求中提供的路径。只能指定 pathRedirect 或 prefixRedirect 之一。该值必须在 1 到 1024 个字符之间。 返回:成功 |
|
替换 HttpRouteRuleMatch 中指定的 prefixMatch 的前缀,保留 URL 的其余部分,然后重定向请求。 返回:成功 |
|
为此 RedirectAction 使用的 HTTP 状态代码。支持的值为:* MOVED_PERMANENTLY_DEFAULT,这是默认值,对应于 301。 * FOUND,对应于 302。 * SEE_OTHER,对应于 303。 * TEMPORARY_REDIRECT,对应于 307。在这种情况下,将保留请求方法。 * PERMANENT_REDIRECT,对应于 308。在这种情况下,将保留请求方法。 返回:成功 |
|
如果设置为 true,则在重定向请求之前,将删除原始 URL 的任何伴随查询部分。如果设置为 false,则将保留原始 URL 的查询部分。默认为 false。 返回:成功 |
|
预期 URL 映射测试列表。只有在所有测试用例都通过后,更新此 UrlMap 的请求才会成功。每个 UrlMap 最多可以指定 100 个测试。 返回:成功 |
|
此测试用例的描述。 返回:成功 |
|
URL 的主机部分。 返回:成功 |
|
URL 的路径部分。 返回:成功 |
|
给定 URL 应映射到的预期 BackendService 资源。 返回:成功 |