- 描述
- CanaryTemplate is the Schema for the Canarytemplates API
- 类型
object
规格
.spec
- 描述
- CanaryTemplateSpec defines the desired state of CanaryTemplate
- 类型
object
.spec.analysis
- 描述
- Analysis defines the validation process of a release
- 类型
object- 必填
interval
.spec.analysis.match
- 描述
- A/B testing HTTP header match conditions
- 类型
array
.spec.analysis.match[]
- 描述
- HttpMatchRequest specifies a set of criterion to be met in order for the rule to be applied to the HTTP request. For example, the following restricts the rule to match only requests where the URL path starts with /ratings/v2/ and the request contains a "cookie" with value "user=jason". apiVersion: networking.istio.io/v1alpha3 kind: VirtualService metadata: name: ratings-route spec: hosts: - ratings http: - match: - headers: cookie: regex: "^(.*?;)?(user=jason)(;.*)?" uri: prefix: "/ratings/v2/" route: - destination: host: ratings HTTPMatchRequest CANNOT be empty.
- 类型
object
.spec.analysis.match[].authority
- 描述
- HTTP Authority values are case-sensitive and formatted as follows: - `exact: "value"` for exact string match - `prefix: "value"` for prefix-based match - `regex: "value"` for ECMAscript style regex-based match
- 类型
object
.spec.analysis.match[].gateways
- 描述
- Names of gateways where the rule should be applied to. Gateway names at the top of the VirtualService (if any) are overridden. The gateway match is independent of sourceLabels.
- 类型
array
.spec.analysis.match[].gateways[]
- 类型
string
.spec.analysis.match[].headers
- 描述
- The header keys must be lowercase and use hyphen as the separator, e.g. _x-request-id_. Header values are case-sensitive and formatted as follows: - `exact: "value"` for exact string match - `prefix: "value"` for prefix-based match - `regex: "value"` for ECMAscript style regex-based match **Note:** The keys `uri`, `scheme`, `method`, and `authority` will be ignored.
- 类型
object
.spec.analysis.match[].method
- 描述
- HTTP Method values are case-sensitive and formatted as follows: - `exact: "value"` for exact string match - `prefix: "value"` for prefix-based match - `regex: "value"` for ECMAscript style regex-based match
- 类型
object
.spec.analysis.match[].scheme
- 描述
- URI Scheme values are case-sensitive and formatted as follows: - `exact: "value"` for exact string match - `prefix: "value"` for prefix-based match - `regex: "value"` for ECMAscript style regex-based match
- 类型
object
.spec.analysis.match[].sourceLabels
- 描述
- One or more labels that constrain the applicability of a rule to workloads with the given labels. If the VirtualService has a list of gateways specified at the top, it should include the reserved gateway `mesh` in order for this field to be applicable.
- 类型
object
.spec.analysis.match[].uri
- 描述
- URI to match values are case-sensitive and formatted as follows: - `exact: "value"` for exact string match - `prefix: "value"` for prefix-based match - `regex: "value"` for ECMAscript style regex-based match
- 类型
object
.spec.analysis.metrics
- 描述
- Metric check list for this canary analysis
- 类型
array
.spec.analysis.metrics[]
- 描述
- CanaryMetric holds the reference to metrics used for canary analysis
- 类型
object- 必填
name
.spec.analysis.metrics[].templateRef
- 描述
- TemplateRef references a metric template object
- 类型
object- 必填
name
.spec.analysis.metrics[].thresholdRange
- 描述
- Range value accepted for this metric
- 类型
object
.spec.analysis.webhooks
- 描述
- Webhook list for this canary analysis
- 类型
array
.spec.analysis.webhooks[]
- 描述
- CanaryWebhook holds the reference to external checks used for canary analysis
- 类型
object- 必填
nametypeurl
.spec.autoscalerRef
- 描述
- AutoscalerRef references an autoscaling resource
- 类型
object- 必填
name
.spec.canaryAnalysis
- 描述
- Deprecated: replaced by Analysis
- 类型
object- 必填
interval
.spec.canaryAnalysis.match
- 描述
- A/B testing HTTP header match conditions
- 类型
array
.spec.canaryAnalysis.match[]
- 描述
- HttpMatchRequest specifies a set of criterion to be met in order for the rule to be applied to the HTTP request. For example, the following restricts the rule to match only requests where the URL path starts with /ratings/v2/ and the request contains a "cookie" with value "user=jason". apiVersion: networking.istio.io/v1alpha3 kind: VirtualService metadata: name: ratings-route spec: hosts: - ratings http: - match: - headers: cookie: regex: "^(.*?;)?(user=jason)(;.*)?" uri: prefix: "/ratings/v2/" route: - destination: host: ratings HTTPMatchRequest CANNOT be empty.
- 类型
object
.spec.canaryAnalysis.match[].authority
- 描述
- HTTP Authority values are case-sensitive and formatted as follows: - `exact: "value"` for exact string match - `prefix: "value"` for prefix-based match - `regex: "value"` for ECMAscript style regex-based match
- 类型
object
.spec.canaryAnalysis.match[].gateways
- 描述
- Names of gateways where the rule should be applied to. Gateway names at the top of the VirtualService (if any) are overridden. The gateway match is independent of sourceLabels.
- 类型
array
.spec.canaryAnalysis.match[].gateways[]
- 类型
string
.spec.canaryAnalysis.match[].headers
- 描述
- The header keys must be lowercase and use hyphen as the separator, e.g. _x-request-id_. Header values are case-sensitive and formatted as follows: - `exact: "value"` for exact string match - `prefix: "value"` for prefix-based match - `regex: "value"` for ECMAscript style regex-based match **Note:** The keys `uri`, `scheme`, `method`, and `authority` will be ignored.
- 类型
object
.spec.canaryAnalysis.match[].method
- 描述
- HTTP Method values are case-sensitive and formatted as follows: - `exact: "value"` for exact string match - `prefix: "value"` for prefix-based match - `regex: "value"` for ECMAscript style regex-based match
- 类型
object
.spec.canaryAnalysis.match[].scheme
- 描述
- URI Scheme values are case-sensitive and formatted as follows: - `exact: "value"` for exact string match - `prefix: "value"` for prefix-based match - `regex: "value"` for ECMAscript style regex-based match
- 类型
object
.spec.canaryAnalysis.match[].sourceLabels
- 描述
- One or more labels that constrain the applicability of a rule to workloads with the given labels. If the VirtualService has a list of gateways specified at the top, it should include the reserved gateway `mesh` in order for this field to be applicable.
- 类型
object
.spec.canaryAnalysis.match[].uri
- 描述
- URI to match values are case-sensitive and formatted as follows: - `exact: "value"` for exact string match - `prefix: "value"` for prefix-based match - `regex: "value"` for ECMAscript style regex-based match
- 类型
object
.spec.canaryAnalysis.metrics
- 描述
- Metric check list for this canary analysis
- 类型
array
.spec.canaryAnalysis.metrics[]
- 描述
- CanaryMetric holds the reference to metrics used for canary analysis
- 类型
object- 必填
name
.spec.canaryAnalysis.metrics[].templateRef
- 描述
- TemplateRef references a metric template object
- 类型
object- 必填
name
.spec.canaryAnalysis.metrics[].thresholdRange
- 描述
- Range value accepted for this metric
- 类型
object
.spec.canaryAnalysis.webhooks
- 描述
- Webhook list for this canary analysis
- 类型
array
.spec.canaryAnalysis.webhooks[]
- 描述
- CanaryWebhook holds the reference to external checks used for canary analysis
- 类型
object- 必填
nametypeurl
.spec.ingressRef
- 描述
- Reference to NGINX ingress resource
- 类型
object- 必填
name
.spec.service
- 描述
- Service defines how ClusterIP services, service mesh or ingress routing objects are generated
- 类型
object- 必填
portportDiscovery
.spec.service.backends
- 描述
- Backends of the generated App Mesh virtual nodes
- 类型
array
.spec.service.backends[]
- 类型
string
.spec.service.corsPolicy
- 描述
- Cross-Origin Resource Sharing policy for the generated Istio virtual service
- 类型
object
.spec.service.corsPolicy.allowHeaders
- 描述
- List of HTTP headers that can be used when requesting the resource. Serialized to Access-Control-Allow-Methods header.
- 类型
array
.spec.service.corsPolicy.allowHeaders[]
- 类型
string
.spec.service.corsPolicy.allowMethods
- 描述
- List of HTTP methods allowed to access the resource. The content will be serialized into the Access-Control-Allow-Methods header.
- 类型
array
.spec.service.corsPolicy.allowMethods[]
- 类型
string
.spec.service.corsPolicy.allowOrigin
- 描述
- The list of origins that are allowed to perform CORS requests. The content will be serialized into the Access-Control-Allow-Origin header. Wildcard * will allow all origins.
- 类型
array
.spec.service.corsPolicy.allowOrigin[]
- 类型
string
.spec.service.corsPolicy.exposeHeaders
- 描述
- A white list of HTTP headers that the browsers are allowed to access. Serialized into Access-Control-Expose-Headers header.
- 类型
array
.spec.service.corsPolicy.exposeHeaders[]
- 类型
string
.spec.service.gateways
- 描述
- Gateways attached to the generated Istio virtual service Defaults to the internal mesh gateway
- 类型
array
.spec.service.gateways[]
- 类型
string
.spec.service.headers
- 描述
- Headers operations for the generated Istio virtual service
- 类型
object
.spec.service.headers.request
- 描述
- Header manipulation rules to apply before forwarding a request to the destination service
- 类型
object
.spec.service.headers.request.add
- 描述
- Append the given values to the headers specified by keys (will create a comma-separated list of values)
- 类型
object
.spec.service.headers.request.remove
- 描述
- Remove the specified headers
- 类型
array
.spec.service.headers.request.remove[]
- 类型
string
.spec.service.headers.request.set
- 描述
- Overwrite the headers specified by key with the given values
- 类型
object
.spec.service.headers.response
- 描述
- Header manipulation rules to apply before returning a response to the caller
- 类型
object
.spec.service.headers.response.add
- 描述
- Append the given values to the headers specified by keys (will create a comma-separated list of values)
- 类型
object
.spec.service.headers.response.remove
- 描述
- Remove the specified headers
- 类型
array
.spec.service.headers.response.remove[]
- 类型
string
.spec.service.headers.response.set
- 描述
- Overwrite the headers specified by key with the given values
- 类型
object
.spec.service.hosts
- 描述
- Hosts attached to the generated Istio virtual service Defaults to the service name
- 类型
array
.spec.service.hosts[]
- 类型
string
.spec.service.match
- 描述
- URI match conditions for the generated service
- 类型
array
.spec.service.match[]
- 描述
- HttpMatchRequest specifies a set of criterion to be met in order for the rule to be applied to the HTTP request. For example, the following restricts the rule to match only requests where the URL path starts with /ratings/v2/ and the request contains a "cookie" with value "user=jason". apiVersion: networking.istio.io/v1alpha3 kind: VirtualService metadata: name: ratings-route spec: hosts: - ratings http: - match: - headers: cookie: regex: "^(.*?;)?(user=jason)(;.*)?" uri: prefix: "/ratings/v2/" route: - destination: host: ratings HTTPMatchRequest CANNOT be empty.
- 类型
object
.spec.service.match[].authority
- 描述
- HTTP Authority values are case-sensitive and formatted as follows: - `exact: "value"` for exact string match - `prefix: "value"` for prefix-based match - `regex: "value"` for ECMAscript style regex-based match
- 类型
object
.spec.service.match[].gateways
- 描述
- Names of gateways where the rule should be applied to. Gateway names at the top of the VirtualService (if any) are overridden. The gateway match is independent of sourceLabels.
- 类型
array
.spec.service.match[].gateways[]
- 类型
string
.spec.service.match[].headers
- 描述
- The header keys must be lowercase and use hyphen as the separator, e.g. _x-request-id_. Header values are case-sensitive and formatted as follows: - `exact: "value"` for exact string match - `prefix: "value"` for prefix-based match - `regex: "value"` for ECMAscript style regex-based match **Note:** The keys `uri`, `scheme`, `method`, and `authority` will be ignored.
- 类型
object
.spec.service.match[].method
- 描述
- HTTP Method values are case-sensitive and formatted as follows: - `exact: "value"` for exact string match - `prefix: "value"` for prefix-based match - `regex: "value"` for ECMAscript style regex-based match
- 类型
object
.spec.service.match[].scheme
- 描述
- URI Scheme values are case-sensitive and formatted as follows: - `exact: "value"` for exact string match - `prefix: "value"` for prefix-based match - `regex: "value"` for ECMAscript style regex-based match
- 类型
object
.spec.service.match[].sourceLabels
- 描述
- One or more labels that constrain the applicability of a rule to workloads with the given labels. If the VirtualService has a list of gateways specified at the top, it should include the reserved gateway `mesh` in order for this field to be applicable.
- 类型
object
.spec.service.match[].uri
- 描述
- URI to match values are case-sensitive and formatted as follows: - `exact: "value"` for exact string match - `prefix: "value"` for prefix-based match - `regex: "value"` for ECMAscript style regex-based match
- 类型
object
.spec.service.retries
- 描述
- Retries policy for the generated virtual service
- 类型
object
.spec.service.rewrite
- 描述
- Rewrite HTTP URIs for the generated service
- 类型
object
.spec.service.trafficPolicy
- 描述
- TrafficPolicy attached to the generated Istio destination rules
- 类型
object
.spec.service.trafficPolicy.connectionPool
- 描述
- Settings controlling the volume of connections to an upstream service
- 类型
object
.spec.service.trafficPolicy.connectionPool.http
- 描述
- HTTP connection pool settings.
- 类型
object
.spec.service.trafficPolicy.connectionPool.tcp
- 描述
- Settings common to both HTTP and TCP upstream connections.
- 类型
object
.spec.service.trafficPolicy.loadBalancer
- 描述
- Settings controlling the load balancer algorithms.
- 类型
object
.spec.service.trafficPolicy.loadBalancer.consistentHash
- 描述
- Consistent Hash-based load balancing can be used to provide soft session affinity based on HTTP headers, cookies or other properties. This load balancing policy is applicable only for HTTP connections. The affinity to a particular destination host will be lost when one or more hosts are added/removed from the destination service.
- 类型
object
.spec.service.trafficPolicy.loadBalancer.consistentHash.httpCookie
- 描述
- Hash based on HTTP cookie.
- 类型
object- 必填
namettl
.spec.service.trafficPolicy.outlierDetection
- 描述
- Settings controlling eviction of unhealthy hosts from the load balancing pool
- 类型
object
.spec.service.trafficPolicy.portLevelSettings
- 描述
- Traffic policies specific to individual ports. Note that port level settings will override the destination-level settings. Traffic settings specified at the destination-level will not be inherited when overridden by port-level settings, i.e. default values will be applied to fields omitted in port-level traffic policies.
- 类型
array
.spec.service.trafficPolicy.portLevelSettings[]
- 描述
- Traffic policies that apply to specific ports of the service
- 类型
object- 必填
port
.spec.service.trafficPolicy.portLevelSettings[].connectionPool
- 描述
- Settings controlling the volume of connections to an upstream service
- 类型
object
.spec.service.trafficPolicy.portLevelSettings[].connectionPool.http
- 描述
- HTTP connection pool settings.
- 类型
object
.spec.service.trafficPolicy.portLevelSettings[].connectionPool.tcp
- 描述
- Settings common to both HTTP and TCP upstream connections.
- 类型
object
.spec.service.trafficPolicy.portLevelSettings[].loadBalancer
- 描述
- Settings controlling the load balancer algorithms.
- 类型
object
.spec.service.trafficPolicy.portLevelSettings[].loadBalancer.consistentHash
- 描述
- Consistent Hash-based load balancing can be used to provide soft session affinity based on HTTP headers, cookies or other properties. This load balancing policy is applicable only for HTTP connections. The affinity to a particular destination host will be lost when one or more hosts are added/removed from the destination service.
- 类型
object
.spec.service.trafficPolicy.portLevelSettings[].loadBalancer.consistentHash.httpCookie
- 描述
- Hash based on HTTP cookie.
- 类型
object- 必填
namettl
.spec.service.trafficPolicy.portLevelSettings[].outlierDetection
- 描述
- Settings controlling eviction of unhealthy hosts from the load balancing pool
- 类型
object
.spec.service.trafficPolicy.portLevelSettings[].port
- 描述
- Specifies the port name or number of a port on the destination service on which this policy is being applied. Names must comply with DNS label syntax (rfc1035) and therefore cannot collide with numbers. If there are multiple ports on a service with the same protocol the names should be of the form <protocol-name>-<DNS label>.
- 类型
object
.spec.service.trafficPolicy.portLevelSettings[].tls
- 描述
- TLS related settings for connections to the upstream service.
- 类型
object- 必填
mode
.spec.service.trafficPolicy.portLevelSettings[].tls.subjectAltNames
- 描述
- A list of alternate names to verify the subject identity in the certificate. If specified, the proxy will verify that the server certificate's subject alt name matches one of the specified values. Should be empty if mode is `ISTIO_MUTUAL`.
- 类型
array
.spec.service.trafficPolicy.portLevelSettings[].tls.subjectAltNames[]
- 类型
string
.spec.service.trafficPolicy.tls
- 描述
- TLS related settings for connections to the upstream service.
- 类型
object- 必填
mode
.spec.service.trafficPolicy.tls.subjectAltNames
- 描述
- A list of alternate names to verify the subject identity in the certificate. If specified, the proxy will verify that the server certificate's subject alt name matches one of the specified values. Should be empty if mode is `ISTIO_MUTUAL`.
- 类型
array
.spec.service.trafficPolicy.tls.subjectAltNames[]
- 类型
string
.spec.targetRef
- 描述
- TargetRef references a target resource
- 类型
object- 必填
name
API 端点
可用的 API 端点如下:
/apis/asm.alauda.io/v1alpha1/namespaces/{namespace}/canarytemplatesDELETE: delete collection of CanaryTemplateGET: list objects of kind CanaryTemplatePOST: create a new CanaryTemplate
/apis/asm.alauda.io/v1alpha1/namespaces/{namespace}/canarytemplates/{name}DELETE: delete the specified CanaryTemplateGET: read the specified CanaryTemplatePATCH: partially update the specified CanaryTemplatePUT: replace the specified CanaryTemplate
/apis/asm.alauda.io/v1alpha1/namespaces/{namespace}/canarytemplates
- HTTP 方法
DELETE- 描述
- delete collection of CanaryTemplate
- HTTP 响应
- HTTP 方法
GET- 描述
- list objects of kind CanaryTemplate
- HTTP 响应
- HTTP 方法
POST- 描述
- create a new CanaryTemplate
- 查询参数
- 请求体参数
- HTTP 响应
/apis/asm.alauda.io/v1alpha1/namespaces/{namespace}/canarytemplates/{name}
- HTTP 方法
DELETE- 描述
- delete the specified CanaryTemplate
- 查询参数
- HTTP 响应
- HTTP 方法
GET- 描述
- read the specified CanaryTemplate
- HTTP 响应
- HTTP 方法
PATCH- 描述
- partially update the specified CanaryTemplate
- 查询参数
- HTTP 响应
- HTTP 方法
PUT- 描述
- replace the specified CanaryTemplate
- 查询参数
- 请求体参数
- HTTP 响应