traffic.tsb.tetrate.io/v2
Resource Types:
TrafficSetting
| Name | Type | Description | Required |
|---|---|---|---|
| apiVersion | string | traffic.tsb.tetrate.io/v2 | true |
| kind | string | TrafficSetting | true |
| metadata | object | Refer to the Kubernetes API documentation for the fields of the metadata field. | true |
| spec | object | false | |
| status | object | false |
TrafficSetting.spec
| Name | Type | Description | Required |
|---|---|---|---|
| configGenerationMetadata | object | Metadata values that will be add into the Istio generated configurations. | false |
| description | string | A description of the resource. | false |
| displayName | string | User friendly name for the resource. | false |
| egress | object | false | |
| etag | string | The etag for the resource. | false |
| fqn | string | Fully-qualified name of the resource. | false |
| rateLimiting | object | Configuration for rate limiting requests. | false |
| reachability | object | false | |
| resilience | object | false |
TrafficSetting.spec.configGenerationMetadata
Metadata values that will be add into the Istio generated configurations.
| Name | Type | Description | Required |
|---|---|---|---|
| annotations | map[string]string | Set of key value paris that will be added into the | false |
| labels | map[string]string | Set of key value paris that will be added into the | false |
TrafficSetting.spec.egress
| Name | Type | Description | Required |
|---|---|---|---|
| host | string | Specifies the egress gateway hostname. | false |
| port | integer | Deprecated. Format: int32 | false |
TrafficSetting.spec.rateLimiting
Configuration for rate limiting requests.
| Name | Type | Description | Required |
|---|---|---|---|
| externalService | object | Configure ratelimiting using an external ratelimit server. | false |
| settings | object | false |
TrafficSetting.spec.rateLimiting.externalService
Configure ratelimiting using an external ratelimit server.
| Name | Type | Description | Required |
|---|---|---|---|
| domain | string | The rate limit domain to use when calling the rate limit service. | false |
| failClosed | boolean | false | |
| rateLimitServerUri | string | The URI at which the external rate limit server can be reached. | false |
| rules | []object | A set of rate limit rules. | false |
| timeout | string | The timeout in seconds for the external rate limit server RPC. | false |
| tls | object | false |
TrafficSetting.spec.rateLimiting.externalService.rules[index]
| Name | Type | Description | Required |
|---|---|---|---|
| dimensions | []object | A list of dimensions that are to be applied for this rate limit configuration. | false |
TrafficSetting.spec.rateLimiting.externalService.rules[index].dimensions[index]
| Name | Type | Description | Required |
|---|---|---|---|
| destinationCluster | object | Rate limit on destination envoy cluster. | false |
| headerValueMatch | object | Rate limit on the existence of certain request headers. | false |
| remoteAddress | object | Rate limit on remote address of client. | false |
| requestHeaders | object | Rate limit on the value of certain request headers. | false |
| sourceCluster | object | Rate limit on source envoy cluster. | false |
TrafficSetting.spec.rateLimiting.externalService.rules[index].dimensions[index].headerValueMatch
Rate limit on the existence of certain request headers.
| Name | Type | Description | Required |
|---|---|---|---|
| descriptorValue | string | The value to use in the descriptor entry. | false |
| dontMatch | boolean | If set to true, the condition will be met when the header value does not match. | false |
| headers | map[string]object | false |
TrafficSetting.spec.rateLimiting.externalService.rules[index].dimensions[index].headerValueMatch.headers[key]
| Name | Type | Description | Required |
|---|---|---|---|
| exact | string | Exact string match. | false |
| prefix | string | Prefix-based match. | false |
| regex | string | ECMAscript style regex-based match. | false |
TrafficSetting.spec.rateLimiting.externalService.rules[index].dimensions[index].requestHeaders
Rate limit on the value of certain request headers.
| Name | Type | Description | Required |
|---|---|---|---|
| descriptorKey | string | The key to use in the descriptor entry. | false |
| headerName | string | The header name to be queried from the request headers. | false |
TrafficSetting.spec.rateLimiting.externalService.tls
| Name | Type | Description | Required |
|---|---|---|---|
| files | object | TLS key source from files. | false |
| mode | enum | Enum: DISABLED, SIMPLE, MUTUAL | false |
| secretName | string | TLS key source from a Kubernetes Secret. | false |
| subjectAltNames | []string | false |
TrafficSetting.spec.rateLimiting.externalService.tls.files
TLS key source from files.
| Name | Type | Description | Required |
|---|---|---|---|
| caCertificates | string | false | |
| clientCertificate | string | Certificate file to authenticate the client. | false |
| privateKey | string | Private key file associated with the client certificate. | false |
TrafficSetting.spec.rateLimiting.settings
| Name | Type | Description | Required |
|---|---|---|---|
| failClosed | boolean | false | |
| rules | []object | A list of rules for ratelimiting. | false |
| timeout | string | The timeout in seconds for the rate limit server RPC. | false |
TrafficSetting.spec.rateLimiting.settings.rules[index]
| Name | Type | Description | Required |
|---|---|---|---|
| dimensions | []object | A list of dimensions to define each ratelimit rule. | false |
| limit | object | The ratelimit value that will be configured for the above rules. | false |
TrafficSetting.spec.rateLimiting.settings.rules[index].dimensions[index]
| Name | Type | Description | Required |
|---|---|---|---|
| header | object | Rate limit on certain HTTP headers. | false |
| remoteAddress | object | Rate limit on the remote address of client. | false |
TrafficSetting.spec.rateLimiting.settings.rules[index].dimensions[index].header
Rate limit on certain HTTP headers.
| Name | Type | Description | Required |
|---|---|---|---|
| dontMatch | boolean | If set to true, the condition will be met when the header value does not match. | false |
| name | string | Name of the header to match on. | false |
| value | object | Value of the header to match on if matching on a specific value. | false |
TrafficSetting.spec.rateLimiting.settings.rules[index].dimensions[index].header.value
Value of the header to match on if matching on a specific value.
| Name | Type | Description | Required |
|---|---|---|---|
| exact | string | Exact string match. | false |
| prefix | string | Prefix-based match. | false |
| regex | string | ECMAscript style regex-based match. | false |
TrafficSetting.spec.rateLimiting.settings.rules[index].dimensions[index].remoteAddress
Rate limit on the remote address of client.
| Name | Type | Description | Required |
|---|---|---|---|
| value | string | Ratelimit on a specific remote address. | false |
TrafficSetting.spec.rateLimiting.settings.rules[index].limit
The ratelimit value that will be configured for the above rules.
| Name | Type | Description | Required |
|---|---|---|---|
| requestsPerUnit | integer | Specifies the value of the rate limit. Minimum: 0 | false |
| unit | enum | Specifies the unit of time for rate limit. Enum: UNKNOWN, SECOND, MINUTE, HOUR, DAY | false |
TrafficSetting.spec.reachability
| Name | Type | Description | Required |
|---|---|---|---|
| hosts | []string | false | |
| mode | enum | A short cut for specifying the set of services accessed by the workload. Enum: UNSET, NAMESPACE, GROUP, WORKSPACE, CLUSTER, CUSTOM | false |
TrafficSetting.spec.resilience
| Name | Type | Description | Required |
|---|---|---|---|
| circuitBreakerSensitivity | enum | Enum: UNSET, LOW, MEDIUM, HIGH | false |
| httpRequestTimeout | string | Timeout for HTTP requests. | false |
| httpRetries | object | Retry policy for HTTP requests. | false |
| keepAlive | object | Keep Alive Settings. | false |
| tcpKeepalive | boolean | Deprecated. | false |
TrafficSetting.spec.resilience.httpRetries
Retry policy for HTTP requests.
| Name | Type | Description | Required |
|---|---|---|---|
| attempts | integer | Number of retries for a given request. Format: int32 | false |
| perTryTimeout | string | Timeout per retry attempt for a given request. | false |
| retryOn | string | Specifies the conditions under which retry takes place. | false |
TrafficSetting.spec.resilience.keepAlive
Keep Alive Settings.
| Name | Type | Description | Required |
|---|---|---|---|
| tcp | object | TCP Keep Alive settings associated with the upstream and downstream TCP connections. | false |
TrafficSetting.spec.resilience.keepAlive.tcp
TCP Keep Alive settings associated with the upstream and downstream TCP connections.
| Name | Type | Description | Required |
|---|---|---|---|
| downstream | object | TCP Keep Alive Settings associated with the downstream (client) connection. | false |
| upstream | object | TCP Keep Alive Settings associated with the upstream (backend) connection. | false |
TrafficSetting.spec.resilience.keepAlive.tcp.downstream
TCP Keep Alive Settings associated with the downstream (client) connection.
| Name | Type | Description | Required |
|---|---|---|---|
| idleTime | integer | Minimum: 0 | false |
| interval | integer | The number of seconds between keep-alive probes. Minimum: 0 | false |
| probes | integer | Minimum: 0 | false |
TrafficSetting.spec.resilience.keepAlive.tcp.upstream
TCP Keep Alive Settings associated with the upstream (backend) connection.
| Name | Type | Description | Required |
|---|---|---|---|
| idleTime | integer | Minimum: 0 | false |
| interval | integer | The number of seconds between keep-alive probes. Minimum: 0 | false |
| probes | integer | Minimum: 0 | false |
ServiceRoute
| Name | Type | Description | Required |
|---|---|---|---|
| apiVersion | string | traffic.tsb.tetrate.io/v2 | true |
| kind | string | ServiceRoute | true |
| metadata | object | Refer to the Kubernetes API documentation for the fields of the metadata field. | true |
| spec | object | false | |
| status | object | false |
ServiceRoute.spec
| Name | Type | Description | Required |
|---|---|---|---|
| configGenerationMetadata | object | Metadata values that will be add into the Istio generated configurations. | false |
| description | string | A description of the resource. | false |
| displayName | string | User friendly name for the resource. | false |
| etag | string | The etag for the resource. | false |
| fqn | string | Fully-qualified name of the resource. | false |
| httpRoutes | []object | false | |
| portLevelSettings | []object | In order to support multi-protocol routing, a list of all port/protocol combinations is needed. | false |
| service | string | The service on which the configuration is being applied. | false |
| stickySession | object | false | |
| subsets | []object | false | |
| tcpRoutes | []object | TCPRoutes match TCP traffic based on port number. | false |
ServiceRoute.spec.configGenerationMetadata
Metadata values that will be add into the Istio generated configurations.
| Name | Type | Description | Required |
|---|---|---|---|
| annotations | map[string]string | Set of key value paris that will be added into the | false |
| labels | map[string]string | Set of key value paris that will be added into the | false |
ServiceRoute.spec.httpRoutes[index]
| Name | Type | Description | Required |
|---|---|---|---|
| destination | []object | false | |
| match | []object | false | |
| name | string | false |
ServiceRoute.spec.httpRoutes[index].destination[index]
| Name | Type | Description | Required |
|---|---|---|---|
| destinationHost | string | Service host where traffic should be routed to. | false |
| port | integer | Minimum: 0 | false |
| subset | string | false | |
| weight | integer | Minimum: 0 | false |
ServiceRoute.spec.httpRoutes[index].match[index]
| Name | Type | Description | Required |
|---|---|---|---|
| headers | map[string]object | false | |
| name | string | false | |
| port | integer | Minimum: 0 | false |
| uri | object | false |
ServiceRoute.spec.httpRoutes[index].match[index].headers[key]
| Name | Type | Description | Required |
|---|---|---|---|
| exact | string | Exact string match. | false |
| prefix | string | Prefix-based match. | false |
| regex | string | ECMAscript style regex-based match. | false |
ServiceRoute.spec.httpRoutes[index].match[index].uri
| Name | Type | Description | Required |
|---|---|---|---|
| exact | string | Exact string match. | false |
| prefix | string | Prefix-based match. | false |
| regex | string | ECMAscript style regex-based match. | false |
ServiceRoute.spec.portLevelSettings[index]
| Name | Type | Description | Required |
|---|---|---|---|
| port | integer | Minimum: 0 | false |
| stickySession | object | false | |
| trafficType | enum | Enum: HTTP, TCP, TLS_PASSTHROUGH | false |
ServiceRoute.spec.portLevelSettings[index].stickySession
| Name | Type | Description | Required |
|---|---|---|---|
| cookie | object | Hash based on HTTP cookie. | false |
| header | string | Hash based on a specific HTTP header. | false |
| useSourceIp | boolean | Hash based on the source IP address. | false |
ServiceRoute.spec.portLevelSettings[index].stickySession.cookie
Hash based on HTTP cookie.
| Name | Type | Description | Required |
|---|---|---|---|
| name | string | Name of the cookie. | false |
| path | string | Path to set for the cookie. | false |
| ttl | string | Lifetime of the cookie. | false |
ServiceRoute.spec.stickySession
| Name | Type | Description | Required |
|---|---|---|---|
| cookie | object | Hash based on HTTP cookie. | false |
| header | string | Hash based on a specific HTTP header. | false |
| useSourceIp | boolean | Hash based on the source IP address. | false |
ServiceRoute.spec.stickySession.cookie
Hash based on HTTP cookie.
| Name | Type | Description | Required |
|---|---|---|---|
| name | string | Name of the cookie. | false |
| path | string | Path to set for the cookie. | false |
| ttl | string | Lifetime of the cookie. | false |
ServiceRoute.spec.subsets[index]
| Name | Type | Description | Required |
|---|---|---|---|
| labels | map[string]string | Labels apply a filter over the endpoints of a service in the service registry. | false |
| name | string | Name used to refer to the subset. | false |
| portLevelSettings | []object | false | |
| weight | integer | Percentage of traffic to be sent to this subset. Minimum: 0 | false |
ServiceRoute.spec.subsets[index].portLevelSettings[index]
| Name | Type | Description | Required |
|---|---|---|---|
| port | integer | Minimum: 0 | false |
| stickySession | object | false | |
| trafficType | enum | Enum: HTTP, TCP, TLS_PASSTHROUGH | false |
ServiceRoute.spec.subsets[index].portLevelSettings[index].stickySession
| Name | Type | Description | Required |
|---|---|---|---|
| cookie | object | Hash based on HTTP cookie. | false |
| header | string | Hash based on a specific HTTP header. | false |
| useSourceIp | boolean | Hash based on the source IP address. | false |
ServiceRoute.spec.subsets[index].portLevelSettings[index].stickySession.cookie
Hash based on HTTP cookie.
| Name | Type | Description | Required |
|---|---|---|---|
| name | string | Name of the cookie. | false |
| path | string | Path to set for the cookie. | false |
| ttl | string | Lifetime of the cookie. | false |
ServiceRoute.spec.tcpRoutes[index]
| Name | Type | Description | Required |
|---|---|---|---|
| destination | []object | false | |
| match | []object | false | |
| name | string | false |
ServiceRoute.spec.tcpRoutes[index].destination[index]
| Name | Type | Description | Required |
|---|---|---|---|
| destinationHost | string | Service host where traffic should be routed to. | false |
| port | integer | Minimum: 0 | false |
| subset | string | false | |
| weight | integer | Minimum: 0 | false |
ServiceRoute.spec.tcpRoutes[index].match[index]
| Name | Type | Description | Required |
|---|---|---|---|
| name | string | false | |
| port | integer | Minimum: 0 | false |
Group
| Name | Type | Description | Required |
|---|---|---|---|
| apiVersion | string | traffic.tsb.tetrate.io/v2 | true |
| kind | string | Group | true |
| metadata | object | Refer to the Kubernetes API documentation for the fields of the metadata field. | true |
| spec | object | false | |
| status | object | false |
Group.spec
| Name | Type | Description | Required |
|---|---|---|---|
| configGenerationMetadata | object | Default metadata values that will be propagated to the children Istio generated configurations. | false |
| configMode | enum | Enum: BRIDGED, DIRECT | false |
| deletionProtectionEnabled | boolean | When set, prevents the resource from being deleted. | false |
| description | string | A description of the resource. | false |
| displayName | string | User friendly name for the resource. | false |
| etag | string | The etag for the resource. | false |
| fqn | string | Fully-qualified name of the resource. | false |
| namespaceSelector | object | Set of namespaces owned exclusively by this group. | false |
Group.spec.configGenerationMetadata
Default metadata values that will be propagated to the children Istio generated configurations.
| Name | Type | Description | Required |
|---|---|---|---|
| annotations | map[string]string | Set of key value paris that will be added into the | false |
| labels | map[string]string | Set of key value paris that will be added into the | false |
Group.spec.namespaceSelector
Set of namespaces owned exclusively by this group.
| Name | Type | Description | Required |
|---|---|---|---|
| names | []string | false |