diff --git a/_docs/reference/api/attribute-vocabulary.md b/_docs/reference/api/attribute-vocabulary.md index fe82b3d92c..4533c8d551 100644 --- a/_docs/reference/api/attribute-vocabulary.md +++ b/_docs/reference/api/attribute-vocabulary.md @@ -1,7 +1,7 @@ --- -title: Attribute Vocabulary +title: Mixer - Attribute Vocabulary overview: Describes the base attribute vocabulary used for policy and control. - + order: 10 layout: docs diff --git a/_docs/reference/api/destination-policies.md b/_docs/reference/api/destination-policies.md index c8e7e20f78..a84ec37c9f 100644 --- a/_docs/reference/api/destination-policies.md +++ b/_docs/reference/api/destination-policies.md @@ -1,6 +1,6 @@ --- -title: Destination Policies -overview: Generated documentation for the Istio's Configuration Schemas +title: Rules - Destination Policies +overview: Generated documentation for the Istio's traffic management rules. order: 1000 @@ -12,18 +12,155 @@ type: markdown ### Index -* [CircuitBreaker](#istio.proxy.v1.config.CircuitBreaker) -(message) -* [CircuitBreaker.SimpleCircuitBreakerPolicy](#istio.proxy.v1.config.CircuitBreaker.SimpleCircuitBreakerPolicy) -(message) * [DestinationPolicy](#istio.proxy.v1.config.DestinationPolicy) (message) -* [DestinationVersionPolicy](#istio.proxy.v1.config.DestinationVersionPolicy) -(message) * [LoadBalancing](#istio.proxy.v1.config.LoadBalancing) (message) -* [LoadBalancing.SimpleLBPolicy](#istio.proxy.v1.config.LoadBalancing.SimpleLBPolicy) -(enum) +* [CircuitBreaker](#istio.proxy.v1.config.CircuitBreaker) +(message) + + +### DestinationPolicy +DestinationPolicy defines client/caller-side policies that determine how +to handle traffic bound to a particular destination service. The policy +specifies configuration for load balancing and circuit breakers. For +example, a simple load balancing policy for the reviews service would +look as follows: + + + destination: reviews.default.svc.cluster.local + policy: + - loadBalancing: RANDOM + simpleCb: + maxConnections: 1000 + + +Policies are applicable per individual service versions. ONLY +ONE policy can be defined per service version. Policy CANNOT be empty. + +
| Field | +Type | +Description | +
|---|---|---|
destination |
+ string | +REQUIRED. Service name for which the service version is defined. The value MUST BE a fully-qualified domain name, e.g. my-service.default.svc.cluster.local. | +
policy[] |
+ repeated DestinationVersionPolicy | +REQUIRED. List of policies, one per service version. | +
| Field | +Type | +Description | +
|---|---|---|
tags |
+ repeated map<string, string> | +Optional set of tags that identify a particular version of the destination service. If omitted, the policy will apply to all versions of the service. | +
loadBalancing |
+ LoadBalancing | +Load balancing policy. | +
circuitBreaker |
+ CircuitBreaker | +Circuit breaker policy. | +
| Field | +Type | +Description | +
|---|---|---|
name |
+ SimpleLBPolicy | +Load balancing policy name (as defined in SimpleLBPolicy below) | +
| Field | -Type | -Description | -
|---|---|---|
destination |
- string | -REQUIRED. Service name for which the service version is defined. The value MUST BE a fully-qualified domain name, e.g. my-service.default.svc.cluster.local. | -
policy[] |
- repeated DestinationVersionPolicy | -REQUIRED. List of policies, one per service version. | -
| Field | -Type | -Description | -
|---|---|---|
tags |
- repeated map<string, string> | -Optional set of tags that identify a particular version of the destination service. If omitted, the policy will apply to all versions of the service. | -
loadBalancing |
- LoadBalancing | -Load balancing policy. | -
circuitBreaker |
- CircuitBreaker | -Circuit breaker policy. | -
| Field | -Type | -Description | -
|---|---|---|
name |
- SimpleLBPolicy | -Load balancing policy name (as defined in SimpleLBPolicy below) | -
| Field | -Type | -Description | -
|---|---|---|
delay |
- Delay | -Delay requests before forwarding, emulating various failures such as network issues, overloaded upstream service, etc. | -
abort |
- Abort | -Abort Http request attempts and return error codes back to downstream service, giving the impression that the upstream service is faulty. | -
| Field | -Type | -Description | -
|---|---|---|
percent |
- float | -percentage of requests on which the delay will be injected (0-100) | -
fixedDelay |
- Duration | -REQUIRED. Add a fixed delay before forwarding the request. Format: 1h/1m/1s/1ms. MUST be >=1ms. | -
| Field | -Type | -Description | -
|---|---|---|
delay |
- Delay | -Delay requests before forwarding, emulating various failures such as network issues, overloaded upstream service, etc. | -
abort |
- Abort | -Abort Http request attempts and return error codes back to downstream service, giving the impression that the upstream service is faulty. | -
| Field | -Type | -Description | -
|---|---|---|
percent |
- float | -percentage of requests on which the delay will be injected (0-100) | -
fixedDelay |
- Duration | -REQUIRED. Add a fixed delay before forwarding the request. Format: 1h/1m/1s/1ms. MUST be >=1ms. | -
| Field | -Type | -Description | -
|---|---|---|
simpleRetry |
- SimpleRetryPolicy | -- |
| Field | -Type | -Description | -
|---|---|---|
attempts |
- int32 | -REQUIRED. Number of retries for a given request. The interval between retries will be determined automatically (25ms+). Actual number of retries attempted depends on the httpReqTimeout. | -
perTryTimeout |
- Duration | -Timeout per retry attempt for a given request. format: 1h/1m/1s/1ms. MUST BE >=1ms. | -
| Field | -Type | -Description | -
|---|---|---|
simpleTimeout |
- SimpleTimeoutPolicy | -- |
| Field | -Type | -Description | -
|---|---|---|
timeout |
- Duration | -REQUIRED. Timeout for a HTTP request. Includes retries as well. Default 15s. format: 1h/1m/1s/1ms. MUST BE >=1ms. It is possible to control timeout per request by supplying the timeout value via x-envoy-upstream-rq-timeout-ms HTTP header. | -
| Field | -Type | -Description | -
|---|---|---|
source |
- string | -Identifies the service initiating a connection or a request by its name. If specified, name MUST BE a fully qualified domain name such as foo.bar.com | -
sourceTags |
- repeated map<string, string> | -One or more tags that uniquely identify the source service version. In Kubernetes, tags correspond to the labels associated with pods. | -
httpHeaders |
- repeated map<string, StringMatch> | -Set of HTTP match conditions based on HTTP/1.1, HTTP/2, GRPC request metadata, such as uri, scheme, authority. The header keys must be lowercase and use hyphen as the separator, e.g. x-request-id. Note 1: The keys uri, scheme, method, and authority correspond to URI, protocol scheme (e.g., HTTP, HTTPS), HTTP method (e.g., GET, POST), and the HTTP Host header respectively. Note 2: uri can be used to perform URL matches. For URL matches (Uri_), only prefix and exact (see StringMatch) matches are supported. For other HTTP headers, exact, prefix and ECMA style regular expression matches are supported. |
-
| Field | +Type | +Description | +
|---|---|---|
source |
+ string | +Identifies the service initiating a connection or a request by its name. If specified, name MUST BE a fully qualified domain name such as foo.bar.com | +
sourceTags |
+ repeated map<string, string> | +One or more tags that uniquely identify the source service version. In Kubernetes, tags correspond to the labels associated with pods. | +
httpHeaders |
+ repeated map<string, StringMatch> | +Set of HTTP match conditions based on HTTP/1.1, HTTP/2, GRPC request metadata, such as uri, scheme, authority. The header keys must be lowercase and use hyphen as the separator, e.g. x-request-id. Note 1: The keys uri, scheme, method, and authority correspond to URI, protocol scheme (e.g., HTTP, HTTPS), HTTP method (e.g., GET, POST), and the HTTP Host header respectively. Note 2: uri can be used to perform URL matches. For URL matches (Uri_), only prefix and exact (see StringMatch) matches are supported. For other HTTP headers, exact, prefix and ECMA style regular expression matches are supported. |
+
| ECMAscript style regex-based match |
| Field | +Type | +Description | +
|---|---|---|
simpleTimeout |
+ SimpleTimeoutPolicy | ++ |
| Field | +Type | +Description | +
|---|---|---|
timeout |
+ Duration | +REQUIRED. Timeout for a HTTP request. Includes retries as well. Default 15s. format: 1h/1m/1s/1ms. MUST BE >=1ms. It is possible to control timeout per request by supplying the timeout value via x-envoy-upstream-rq-timeout-ms HTTP header. | +
| Field | +Type | +Description | +
|---|---|---|
simpleRetry |
+ SimpleRetryPolicy | ++ |
| Field | +Type | +Description | +
|---|---|---|
attempts |
+ int32 | +REQUIRED. Number of retries for a given request. The interval between retries will be determined automatically (25ms+). Actual number of retries attempted depends on the httpReqTimeout. | +
perTryTimeout |
+ Duration | +Timeout per retry attempt for a given request. format: 1h/1m/1s/1ms. MUST BE >=1ms. | +
| Field | +Type | +Description | +
|---|---|---|
delay |
+ Delay | +Delay requests before forwarding, emulating various failures such as network issues, overloaded upstream service, etc. | +
abort |
+ Abort | +Abort Http request attempts and return error codes back to downstream service, giving the impression that the upstream service is faulty. | +
| Field | +Type | +Description | +
|---|---|---|
percent |
+ float | +percentage of requests on which the delay will be injected (0-100) | +
fixedDelay |
+ Duration | +REQUIRED. Add a fixed delay before forwarding the request. Format: 1h/1m/1s/1ms. MUST be >=1ms. | +