route.envoy

Simplest configuration:

[route#0]
type = envoy
svcmgr -s <svcname> set --kw route#0.type=envoy

hash_policies

scopable True
required False
provisioning False
default  
inheritance leaf > head
scope order specific > generic
convert list

The list of hash policy resource ids for the route. Honored if lb_policy is set to ring_hash or maglev.

match_case_sensitive

scopable True
required False
provisioning False
default None
inheritance leaf > head
scope order specific > generic

Indicates that prefix/path matching should be case sensitive. The default is true.

match_path

scopable True
required False
provisioning False
default None
inheritance leaf > head
scope order specific > generic

If specified, the route is an exact path rule meaning that the path must exactly match the :path header once the query string is removed. Precisely one of prefix, path, regex must be set.

match_prefix

scopable True
required False
provisioning False
default None
inheritance leaf > head
scope order specific > generic
If specified, the route is a prefix rule meaning that the prefix must match the beginning of the :path header. Precisely one of prefix, path, regex must be set.

match_regex

scopable True
required False
provisioning False
default None
inheritance leaf > head
scope order specific > generic
If specified, the route is a regular expression rule meaning that the regex must match the :path header once the query string is removed. The entire path (without the query string) must match the regex. The rule will not match if only a subsequence of the :path header matches the regex.

redirect_host_redirect

scopable True
required False
provisioning False
default None
inheritance leaf > head
scope order specific > generic

The host portion of the URL will be swapped with this value.

redirect_https_redirect

scopable True
required False
provisioning False
default False
inheritance leaf > head
scope order specific > generic
convert boolean

The scheme portion of the URL will be swapped with 'https'.

redirect_path_redirect

scopable True
required False
provisioning False
default None
inheritance leaf > head
scope order specific > generic

Indicates that the route is a redirect rule. If there is a match, a 301 redirect response will be sent which swaps the path portion of the URL with this value. host_redirect can also be specified along with this option.

redirect_prefix_rewrite

scopable True
required False
provisioning False
default None
inheritance leaf > head
scope order specific > generic

Indicates that during redirection, the matched prefix (or path) should be swapped with this value. This option allows redirect URLs be dynamically created based on the request.

redirect_response_code

scopable True
required False
provisioning False
default None
inheritance leaf > head
scope order specific > generic

The HTTP status code to use in the redirect response. The default response code is MOVED_PERMANENTLY (301).

redirect_strip_query

scopable True
required False
provisioning False
default False
inheritance leaf > head
scope order specific > generic
convert boolean

Indicates that during redirection, the query portion of the URL will be removed. Default value is false.

route_cluster_header

scopable True
required False
provisioning False
default None
inheritance leaf > head
scope order specific > generic

If the route is not a redirect (host_redirect and/or path_redirect is not specified), one of cluster, cluster_header, or weighted_clusters must be specified. When cluster_header is specified, Envoy will determine the cluster to route to by reading the value of the HTTP header named by cluster_header from the request headers. If the header is not found or the referenced cluster does not exist, Envoy will return a 404 response.

route_host_rewrite

scopable True
required False
provisioning False
default None
inheritance leaf > head
scope order specific > generic

Indicates that during forwarding, the host header will be swapped with this value.

route_prefix_rewrite

scopable True
required False
provisioning False
default None
inheritance leaf > head
scope order specific > generic

The string replacing the url path prefix if matching.

route_timeout

scopable True
required False
provisioning False
default None
inheritance leaf > head
scope order specific > generic

Specifies the timeout for the route. If not specified, the default is 15s. Note that this timeout includes all retries.