IstioOperator Options
Tetrate Service Express (TSE) utilizes many of the same components as the Tetrate Service Bridge(TSB) product but has the several distinctions. Go to Comparing TSE and TSB for more details.
Configuration affecting Istio control plane installation version and shape.
Note: unlike other Istio protos, field names must use camelCase. This is asserted in tests.
Without camelCase, the json
tag on the Go struct will not match the user's JSON representation.
This leads to Kubernetes merge libraries, which rely on this tag, to fail.
All other usages use jsonpb which does not use the json
tag.
istio.operator.v1alpha1.Affinity #
See k8s.io.api.core.v1.Affinity.
Field | Description | Validation Rule |
---|---|---|
nodeAffinity | – | |
podAffinity | – | |
podAntiAffinity | – |
istio.operator.v1alpha1.BaseComponentSpec #
Configuration for base component.
Field | Description | Validation Rule |
---|---|---|
enabled | google.protobuf.BoolValue | – |
k8s | istio.operator.v1alpha1.KubernetesResourcesSpec | – |
istio.operator.v1alpha1.ClientIPConfig #
See k8s.io.api.core.v1.ClientIPConfig.
Field | Description | Validation Rule |
---|---|---|
timeoutSeconds | – |
istio.operator.v1alpha1.ComponentSpec #
Configuration for internal components.
Field | Description | Validation Rule |
---|---|---|
enabled | google.protobuf.BoolValue | – |
namespace | string | – |
hub | string | – |
tag | google.protobuf.Value | – |
spec | google.protobuf.Struct | – |
k8s | istio.operator.v1alpha1.KubernetesResourcesSpec | – |
istio.operator.v1alpha1.ConfigMapKeySelector #
See k8s.io.api.core.v1.ConfigMapKeySelector.
Field | Description | Validation Rule |
---|---|---|
localObjectReference | – | |
key | – | |
optional | – |
istio.operator.v1alpha1.ContainerResourceMetricSource #
See k8s.io.api.autoscaling.v2beta2.ContainerResourceMetricSource.
Field | Description | Validation Rule |
---|---|---|
name | – | |
target | – | |
container | – |
istio.operator.v1alpha1.ContainerResourceMetricStatus #
See k8s.io.api.autoscaling.v2beta2.ContainerResourceMetricStatus.
Field | Description | Validation Rule |
---|---|---|
name | – | |
current | – | |
container | – |
istio.operator.v1alpha1.CrossVersionObjectReference #
See k8s.io.api.autoscaling.v2beta2.CrossVersionObjectReference.
Field | Description | Validation Rule |
---|---|---|
kind | – | |
name | – | |
apiVersion | – |
istio.operator.v1alpha1.DeploymentStrategy #
See k8s.io.api.apps.v1.DeploymentStrategy.
Field | Description | Validation Rule |
---|---|---|
type | – | |
rollingUpdate | – |
istio.operator.v1alpha1.EnvVar #
See k8s.io.api.core.v1.EnvVar.
Field | Description | Validation Rule |
---|---|---|
name | – | |
value | – | |
valueFrom | – |
istio.operator.v1alpha1.EnvVarSource #
See k8s.io.api.core.v1.EnvVarSource.
Field | Description | Validation Rule |
---|---|---|
fieldRef | – | |
resourceFieldRef | – | |
configMapKeyRef | – | |
secretKeyRef | – |
istio.operator.v1alpha1.ExecAction #
See k8s.io.api.core.v1.ExecAction.
Field | Description | Validation Rule |
---|---|---|
command | List of string | – |
istio.operator.v1alpha1.ExternalComponentSpec #
Configuration for external components.
Field | Description | Validation Rule |
---|---|---|
enabled | google.protobuf.BoolValue | – |
namespace | string | – |
spec | google.protobuf.Struct | – |
chartPath | string | – |
schema | google.protobuf.Any | – |
k8s | istio.operator.v1alpha1.KubernetesResourcesSpec | – |
istio.operator.v1alpha1.ExternalMetricSource #
See k8s.io.api.autoscaling.v2beta2.ExternalMetricSource.
Field | Description | Validation Rule |
---|---|---|
metricName | – | |
metricSelector | – | |
targetValue | – | |
targetAverageValue | – | |
metric | – | |
target | – |
istio.operator.v1alpha1.ExternalMetricStatus #
See k8s.io.autoscaling.v2beta2.ExternalMetricStatus.
Field | Description | Validation Rule |
---|---|---|
metric | – | |
current | – |
istio.operator.v1alpha1.GatewaySpec #
Configuration for gateways.
Field | Description | Validation Rule |
---|---|---|
enabled | google.protobuf.BoolValue | – |
namespace | string | – |
name | string | – |
label | – | |
hub | string | – |
tag | google.protobuf.Value | – |
k8s | istio.operator.v1alpha1.KubernetesResourcesSpec | – |
istio.operator.v1alpha1.HPAScalingPolicy #
See k8s.io.autoscaling.v2beta2.HPAScalingPolicy.
Field | Description | Validation Rule |
---|---|---|
type | – | |
value | – | |
periodSeconds | – |
istio.operator.v1alpha1.HPAScalingRules #
See k8s.io.autoscaling.v2beta2.HPAScalingRules.
Field | Description | Validation Rule |
---|---|---|
stabilizationWindowSeconds | – | |
selectPolicy | – | |
policies | – |
istio.operator.v1alpha1.HTTPGetAction #
See k8s.io.api.core.v1.HTTPGetAction.
Field | Description | Validation Rule |
---|---|---|
path | – | |
port | – | |
host | – | |
scheme | – | |
httpHeaders | – |
istio.operator.v1alpha1.HTTPHeader #
See k8s.io.api.core.v1.HTTPHeader.
Field | Description | Validation Rule |
---|---|---|
name | – | |
value | – |
istio.operator.v1alpha1.HorizontalPodAutoScalerBehavior #
See k8s.io.autoscaling.v2beta2.HorizontalPodAutoScalerBehavior.
Field | Description | Validation Rule |
---|---|---|
scaleUp | – | |
scaleDown | – |
istio.operator.v1alpha1.HorizontalPodAutoscalerSpec #
See k8s.io.api.autoscaling.v2beta1.HorizontalPodAutoscalerSpec.
Field | Description | Validation Rule |
---|---|---|
scaleTargetRef | – | |
minReplicas | – | |
maxReplicas | – | |
metrics | – | |
behavior | – |
istio.operator.v1alpha1.InstallStatus #
Observed state of IstioOperator
Field | Description | Validation Rule |
---|---|---|
status | istio.operator.v1alpha1.InstallStatus.Status
| – |
message | string | – |
componentStatus | map<string, istio.operator.v1alpha1.InstallStatus.VersionStatus> | – |
istio.operator.v1alpha1.InstallStatus.VersionStatus #
VersionStatus is the status and version of a component.
Field | Description | Validation Rule |
---|---|---|
version | – | |
status | – | |
error | – |
istio.operator.v1alpha1.IntOrString #
IntOrString is a type that can hold an int32 or a string. When used in JSON or YAML marshalling and unmarshalling, it produces or consumes the inner type. This allows you to have, for example, a JSON field that can accept a name or number.
Field | Description | Validation Rule |
---|---|---|
type | – | |
intVal | – | |
strVal | – |
istio.operator.v1alpha1.IstioComponentSetSpec #
IstioComponentSpec defines the desired installed state of Istio components.
Field | Description | Validation Rule |
---|---|---|
base | – | |
pilot | – | |
cni | – | |
istiodRemote | istio.operator.v1alpha1.ComponentSpec | – |
ingressGateways | – | |
egressGateways | – |
istio.operator.v1alpha1.IstioOperatorSpec #
IstioOperatorSpec defines the desired installed state of Istio components. The spec is a used to define a customization of the default profile values that are supplied with each Istio release. Because the spec is a customization API, specifying an empty IstioOperatorSpec results in a default Istio component values.
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
spec:
profile: default
hub: gcr.io/istio-testing
tag: latest
revision: 1-8-0
meshConfig:
accessLogFile: /dev/stdout
enableTracing: true
components:
egressGateways:
- name: istio-egressgateway
enabled: true
Field | Description | Validation Rule |
---|---|---|
profile | string
default profile is used if this field is unset. | – |
installPackagePath | string
| – |
hub | string | – |
tag | google.protobuf.Value | – |
namespace | string | – |
revision | string | – |
defaultRevision | bool | – |
meshConfig | google.protobuf.Struct | – |
components | istio.operator.v1alpha1.IstioComponentSetSpec | – |
addonComponents | map<string, istio.operator.v1alpha1.ExternalComponentSpec> | – |
values | google.protobuf.Struct | – |
unvalidatedValues | google.protobuf.Struct | – |
istio.operator.v1alpha1.K8sObjectOverlay #
Patch for an existing k8s resource.
Field | Description | Validation Rule |
---|---|---|
apiVersion | string | – |
kind | string | – |
name | string | – |
patches | List of istio.operator.v1alpha1.K8sObjectOverlay.PathValue | – |
istio.operator.v1alpha1.K8sObjectOverlay.PathValue #
Field | Description | Validation Rule |
---|---|---|
path | string | – |
value | google.protobuf.Value | – |
istio.operator.v1alpha1.KubernetesResourcesSpec #
KubernetesResourcesConfig is a common set of k8s resource configs for components.
istio.operator.v1alpha1.LocalObjectReference #
See k8s.io.api.core.v1.LocalObjectReference.
Field | Description | Validation Rule |
---|---|---|
name | – |
istio.operator.v1alpha1.MetricIdentifier #
See k8s.io.autoscaling.v2beta2.MetricIdentifier.
Field | Description | Validation Rule |
---|---|---|
name | – | |
selector | – |
istio.operator.v1alpha1.MetricSpec #
See k8s.io.autoscaling.v2beta2.MetricSpec.
Field | Description | Validation Rule |
---|---|---|
type | – | |
object | – | |
pods | – | |
resource | – | |
containerResource | – | |
external | – |
istio.operator.v1alpha1.MetricStatus #
See k8s.io.autoscaling.v2beta2.MetricStatus.
Field | Description | Validation Rule |
---|---|---|
type | – | |
object | – | |
pods | – | |
resource | – | |
containerResource | – | |
external | – |
istio.operator.v1alpha1.MetricTarget #
See k8s.io.autoscaling.v2beta2.MetricTarget.
Field | Description | Validation Rule |
---|---|---|
type | – | |
value | – | |
averageValue | – | |
averageUtilization | – |
istio.operator.v1alpha1.MetricValueStatus #
See k8s.io.autoscaling.v2beta2.MetricValueStatus.
Field | Description | Validation Rule |
---|---|---|
value | – | |
averageValue | – | |
averageUtilization | – |
istio.operator.v1alpha1.NodeAffinity #
See k8s.io.api.core.v1.NodeAffinity.
Field | Description | Validation Rule |
---|---|---|
requiredDuringSchedulingIgnoredDuringExecution | – | |
preferredDuringSchedulingIgnoredDuringExecution | – |
istio.operator.v1alpha1.NodeSelector #
See k8s.io.api.core.v1.NodeSelector.
Field | Description | Validation Rule |
---|---|---|
nodeSelectorTerms | – |
istio.operator.v1alpha1.NodeSelectorRequirement #
See k8s.io.api.core.v1.NodeSelectorRequirement.
Field | Description | Validation Rule |
---|---|---|
key | – | |
operator | – | |
values | List of string | – |
istio.operator.v1alpha1.NodeSelectorTerm #
See k8s.io.api.core.v1.NodeSelectorTerm.
Field | Description | Validation Rule |
---|---|---|
matchExpressions | – | |
matchFields | – |
istio.operator.v1alpha1.ObjectFieldSelector #
See k8s.io.api.core.v1.ObjectFieldSelector.
Field | Description | Validation Rule |
---|---|---|
apiVersion | – | |
fieldPath | – |
istio.operator.v1alpha1.ObjectMeta #
From k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta.
Field | Description | Validation Rule |
---|---|---|
name | – | |
namespace | – |
istio.operator.v1alpha1.ObjectMetricSource #
See k8s.io.autoscaling.v2beta2.ObjectMetricSource.
Field | Description | Validation Rule |
---|---|---|
metricName | – | |
targetValue | – | |
selector | – | |
averageValue | – | |
target | google.protobuf.Value | – |
describedObject | – | |
metric | – |
istio.operator.v1alpha1.ObjectMetricStatus #
See k8s.io.autoscaling.v2beta2.ObjectMetricStatus.
Field | Description | Validation Rule |
---|---|---|
metric | – | |
current | – | |
describedObject | – |
istio.operator.v1alpha1.PodAffinity #
See k8s.io.api.core.v1.PodAffinity.
Field | Description | Validation Rule |
---|---|---|
requiredDuringSchedulingIgnoredDuringExecution | – | |
preferredDuringSchedulingIgnoredDuringExecution | – |
istio.operator.v1alpha1.PodAffinityTerm #
See k8s.io.api.core.v1.PodAntiAffinity.
Field | Description | Validation Rule |
---|---|---|
labelSelector | – | |
namespaces | List of string | – |
topologyKey | – |
istio.operator.v1alpha1.PodAntiAffinity #
See k8s.io.api.core.v1.PodAntiAffinity.
Field | Description | Validation Rule |
---|---|---|
requiredDuringSchedulingIgnoredDuringExecution | – | |
preferredDuringSchedulingIgnoredDuringExecution | – |
istio.operator.v1alpha1.PodDisruptionBudgetSpec #
See k8s.io.api.policy.v1beta1.PodDisruptionBudget.
Field | Description | Validation Rule |
---|---|---|
minAvailable | – | |
selector | – | |
maxUnavailable | – |
istio.operator.v1alpha1.PodSecurityContext #
See k8s.io.api.core.v1.PodSecurityContext.
Field | Description | Validation Rule |
---|---|---|
seLinuxOptions | – | |
runAsUser | – | |
runAsNonRoot | – | |
supplementalGroups | List of int64 | – |
fsGroup | – | |
runAsGroup | – | |
sysctls | List of istio.operator.v1alpha1.Sysctl | – |
windowsOptions | – | |
fsGroupChangePolicy | – | |
seccompProfile | – |
istio.operator.v1alpha1.PodsMetricSource #
See k8s.io.autoscaling.v2beta2.PodsMetricSource.
Field | Description | Validation Rule |
---|---|---|
metricName | – | |
targetAverageValue | – | |
selector | – | |
metric | istio.operator.v1alpha1.MetricIdentifier | – |
target | – |
istio.operator.v1alpha1.PodsMetricStatus #
See k8s.io.autoscaling.v2beta2.PodsMetricStatus.
Field | Description | Validation Rule |
---|---|---|
metric | – | |
current | – |
istio.operator.v1alpha1.PreferredSchedulingTerm #
See k8s.io.api.core.v1.PreferredSchedulingTerm.
Field | Description | Validation Rule |
---|---|---|
weight | – | |
preference | – |
istio.operator.v1alpha1.ReadinessProbe #
See k8s.io.api.core.v1.ReadinessProbe.
Field | Description | Validation Rule |
---|---|---|
exec | – | |
httpGet | – | |
tcpSocket | – | |
initialDelaySeconds | – | |
timeoutSeconds | – | |
periodSeconds | – | |
successThreshold | – | |
failureThreshold | – |
istio.operator.v1alpha1.ResourceFieldSelector #
See k8s.io.api.core.v1..
Field | Description | Validation Rule |
---|---|---|
containerName | – | |
resource | – | |
divisor | – |
istio.operator.v1alpha1.ResourceMetricSource #
See k8s.io.autoscaling.v2beta2.ResourceMetricSource.
Field | Description | Validation Rule |
---|---|---|
name | – | |
targetAverageUtilization | – | |
targetAverageValue | – | |
target | – |
istio.operator.v1alpha1.ResourceMetricStatus #
See k8s.io.autoscaling.v2beta2.ResourceMetricStatus.
Field | Description | Validation Rule |
---|---|---|
name | – | |
current | – |
istio.operator.v1alpha1.Resources #
See k8s.io.api.core.v1.ResourceRequirements.
Field | Description | Validation Rule |
---|---|---|
limits | – | |
requests | – |
istio.operator.v1alpha1.RollingUpdateDeployment #
See k8s.io.api.apps.v1.RollingUpdateDeployment.
Field | Description | Validation Rule |
---|---|---|
maxUnavailable | – | |
maxSurge | – |
istio.operator.v1alpha1.SELinuxOptions #
See k8s.io.api.core.v1.SELinuxOptions.
Field | Description | Validation Rule |
---|---|---|
user | – | |
role | – | |
type | – | |
level | – |
istio.operator.v1alpha1.SeccompProfile #
See k8s.io.api.core.v1.SeccompProfile.
Field | Description | Validation Rule |
---|---|---|
type | – | |
localhostProfile | – |
istio.operator.v1alpha1.SecretKeySelector #
See k8s.io.api.core.v1.SecretKeySelector.
Field | Description | Validation Rule |
---|---|---|
localObjectReference | – | |
key | – | |
optional | – |
istio.operator.v1alpha1.ServicePort #
See k8s.io.api.core.v1..
Field | Description | Validation Rule |
---|---|---|
name | – | |
protocol | – | |
port | – | |
targetPort | – | |
nodePort | – |
istio.operator.v1alpha1.ServiceSpec #
See k8s.io.api.core.v1.ServiceSpec.
Field | Description | Validation Rule |
---|---|---|
ports | – | |
selector | – | |
clusterIP | – | |
type | – | |
externalIPs | List of string | – |
sessionAffinity | – | |
loadBalancerIP | – | |
loadBalancerSourceRanges | List of string | – |
externalName | – | |
externalTrafficPolicy | – | |
healthCheckNodePort | – | |
publishNotReadyAddresses | – | |
sessionAffinityConfig | – |
istio.operator.v1alpha1.SessionAffinityConfig #
See k8s.io.api.core.v1.SessionAffinityConfig.
Field | Description | Validation Rule |
---|---|---|
clientIP | – |
istio.operator.v1alpha1.Sysctl #
See k8s.io.api.core.v1.Sysctl.
Field | Description | Validation Rule |
---|---|---|
name | – | |
value | – |
istio.operator.v1alpha1.TCPSocketAction #
See k8s.io.api.core.v1.TCPSocketAction.
Field | Description | Validation Rule |
---|---|---|
port | – | |
host | – |
istio.operator.v1alpha1.Toleration #
See k8s.io.api.core.v1.Toleration.
Field | Description | Validation Rule |
---|---|---|
key | – | |
operator | – | |
value | – | |
effect | – | |
tolerationSeconds | – |
istio.operator.v1alpha1.WeightedPodAffinityTerm #
See k8s.io.api.core.v1.WeightedPodAffinityTerm.
Field | Description | Validation Rule |
---|---|---|
weight | – | |
podAffinityTerm | – |
istio.operator.v1alpha1.WindowsSecurityContextOptions #
See k8s.io.api.core.v1.WindowsSecurityContextOptions.
Field | Description | Validation Rule |
---|---|---|
gmsaCredentialSpecName | – | |
gmsaCredentialSpec | – | |
runAsUserName | – |
istio.operator.v1alpha1.InstallStatus.Status #
Status describes the current state of a component.
Field | Number | Description |
---|---|---|
NONE | 0 | Component is not present. |
UPDATING | 1 | Component is being updated to a different version. |
RECONCILING | 2 | Controller has started but not yet completed reconciliation loop for the component. |
HEALTHY | 3 | Component is healthy. |
ERROR | 4 | Component is in an error state. |
ACTION_REQUIRED | 5 | Overall status only and would not be set as a component status.
Action is needed from the user for reconciliation to proceed
e.g. There are proxies still pointing to the control plane revision when try to remove an |