IngressIstioController
Scope: Cluster
Version: v1alpha1
- objectspec
Required value
- objectspec.hostPort
HostPortinlet settings.- integerspec.hostPort.httpPort
Port for insecure HTTP connections.
If the parameter is not set, the connection over HTTP cannot be established.
This parameter is mandatory if
httpsPortis not set.Example:
httpPort: 80 - integerspec.hostPort.httpsPort
Port for secure HTTPS connections.
If the parameter is not set, the connection over HTTPS cannot be established.
This parameter is mandatory if
httpPortis not set.Example:
httpsPort: 443
- stringspec.ingressGatewayClass
Required value
Ingress gateway class is used by application Gateway resources for identifying the right Ingress gateway setup.
The identification is organized by setting the spec.selector:
istio.deckhouse.io/ingress-gateway-class: <ingressGatewayClass value>.Pattern:
^[a-z0-9]([-a-z0-9]*[a-z0-9])?$Example:
ingressGatewayClass: istio - stringspec.inlet
Required value
The way traffic goes to cluster from the outer network.
LoadBalancer— Ingress controller is deployed and the service ofLoadBalancertype is provisioned.NodePort— Ingress controller is deployed and available through nodes’ ports vianodePort.-
HostPort— Ingress controller is deployed and available through nodes’ ports viahostPort.Caution! There can be only one controller with this inlet type on a host.
Allowed values:
LoadBalancer,HostPort,NodePort - objectspec.loadBalancer
Not required value.
A section of parameters of the
LoadBalancerinlet.- objectspec.loadBalancer.annotations
Annotations to assign to the service for flexible configuration of the load balancer.
- objectspec.nodePort
HostPortinlet settings.- integerspec.nodePort.httpPort
Port for insecure HTTP connections.
If the parameter is not set, the connection over HTTP cannot be established.
This parameter is mandatory if
httpsPortis not set.Example:
httpPort: 30080 - integerspec.nodePort.httpsPort
Port for secure HTTPS connections.
If the parameter is not set, the connection over HTTPS cannot be established.
This parameter is mandatory if
httpPortis not set.Example:
httpsPort: 30443
- objectspec.nodeSelector
The same as in the pods’
spec.nodeSelectorparameter in Kubernetes.If the parameter is omitted or
false, it will be determined automatically.Format: the standard
nodeSelectorlist. Instance pods inherit this field as is. - objectspec.resourcesRequests
Max amounts of CPU and memory resources that the pod can request when selecting a node (if the VPA is disabled, then these values become the default ones).
- stringspec.resourcesRequests.mode
Required value
The mode for managing resource requests.
Default:
VPAAllowed values:
VPA,Static - objectspec.resourcesRequests.static
Static mode settings.
- stringspec.resourcesRequests.static.cpu
CPU requests.
Default:
350m - stringspec.resourcesRequests.static.memory
Memory requests.
Default:
500Mi
- objectspec.resourcesRequests.vpa
Parameters of the vpa mode.
- objectspec.resourcesRequests.vpa.cpu
CPU-related parameters.
- stringspec.resourcesRequests.vpa.cpu.max
Maximum allowed CPU requests.
Default:
100m - stringspec.resourcesRequests.vpa.cpu.min
Minimum allowed CPU requests.
Default:
50m
- objectspec.resourcesRequests.vpa.memory
The amount of memory requested.
- stringspec.resourcesRequests.vpa.memory.max
Maximum allowed memory requests.
Default:
200Mi - stringspec.resourcesRequests.vpa.memory.min
Minimum allowed memory requests.
Default:
100Mi
- stringspec.resourcesRequests.vpa.mode
The VPA usage mode.
Default:
InitialAllowed values:
Initial,Auto
- array of objectsspec.tolerations
The same as in the pods’
spec.tolerationsparameter in Kubernetes;If the parameter is omitted or
false, it will be determined automatically.Format: the standard toleration list. Instance pods inherit this field as is.
- stringspec.tolerations.effect
Allowed values:
NoSchedule,PreferNoSchedule,NoExecute - stringspec.tolerations.key
- stringspec.tolerations.operator
Default:
EqualAllowed values:
Exists,Equal - integerspec.tolerations.tolerationSeconds
- stringspec.tolerations.value
IstioFederation
Scope: Cluster
Version: v1alpha1
Custom resource for setting remote cluster as trusted one.
- objectspec
Required value
Available in editions: EE
- objectspec.metadata
- stringspec.metadata.ca
Available in editions: EE
Certificate for validation HTTPS endpoint with remote cluster metadata.
Example:
ca: "-----BEGIN CERTIFICATE----- ..... -----END CERTIFICATE-----" - booleanspec.metadata.insecureSkipVerify
Available in editions: EE
Skip validation certificate on HTTPS endpoint with remote cluster metadata.
Default:
falseExample:
insecureSkipVerify: 'true'
- stringspec.metadataEndpoint
Required value
Available in editions: EE
HTTPS endpoint with remote cluster metadata.
Pattern:
^https://[0-9a-zA-Z._/-]+$Example:
metadataEndpoint: https://istio.k8s.example.com/metadata/ - stringspec.trustDomain
Required value
Available in editions: EE
The TrustDomain of the remote cluster.
A mandatory parameter, but it is not currently utilized, as Istio does not yet support mapping TrustDomain to a root Certificate Authority (CA).
Pattern:
^[0-9a-zA-Z._-]+$Example:
trustDomain: cluster.local
IstioMulticluster
Scope: Cluster
Version: v1alpha1
Custom resource for setting remote cluster as trusted one.
- objectspec
Required value
Available in editions: EE
- booleanspec.enableIngressGateway
Available in editions: EE
Using IngressGateway for accessing remote Pods.
If remote Pods are accessible directly from our cluster (flat network), it is efficient not to use extra hop.
Default:
true - objectspec.metadata
- stringspec.metadata.ca
Available in editions: EE
HTTPS certificate authority for remote cluster metadata.
- booleanspec.metadata.insecureSkipVerify
Available in editions: EE
HTTPS check or not for remote cluster metadata.
Default:
falseExample:
insecureSkipVerify: 'true'
- stringspec.metadataEndpoint
Required value
Available in editions: EE
HTTPS endpoint with remote cluster metadata.
Pattern:
^https://[0-9a-zA-Z._/-]+$Example:
metadataEndpoint: https://istio.k8s.example.com/metadata/