diff --git a/content/en/docs/reference/commands/istioctl/index.html b/content/en/docs/reference/commands/istioctl/index.html
index c74d61a58f..12dc95a68a 100644
--- a/content/en/docs/reference/commands/istioctl/index.html
+++ b/content/en/docs/reference/commands/istioctl/index.html
@@ -3911,6 +3911,11 @@ istioctl proxy-config l [<pod-name[.namespace]>] [flags]
|
Filter listeners by type field (default ``) |
+
+--verbose |
+ |
+Output filter chain information |
+
Examples
diff --git a/content/en/docs/reference/config/istio.operator.v1alpha1/index.html b/content/en/docs/reference/config/istio.operator.v1alpha1/index.html
index 31861d13ea..fc6369c155 100644
--- a/content/en/docs/reference/config/istio.operator.v1alpha1/index.html
+++ b/content/en/docs/reference/config/istio.operator.v1alpha1/index.html
@@ -7,13 +7,16 @@ location: https://istio.io/docs/reference/config/istio.operator.v1alpha1.html
layout: protoc-gen-docs
generator: protoc-gen-docs
weight: 20
-number_of_entries: 60
+number_of_entries: 57
---
Configuration affecting Istio control plane installation version and shape.
-Resources
+IstioOperatorSpec
-Mirrors k8s.io.api.core.v1.ResourceRequirements for unmarshaling.
+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.
@@ -25,1652 +28,143 @@ number_of_entries: 60
-
-limits |
-map<string, string> |
-
- |
-
-No
- |
-
-
-requests |
-map<string, string> |
-
- |
-
-No
- |
-
-
-
-
-Affinity
-
-Mirrors k8s.io.api.core.v1.
-
-
-
-NodeAffinity
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-requiredDuringSchedulingIgnoredDuringExecution |
-NodeSelector |
-
- |
-
-No
- |
-
-
-preferredDuringSchedulingIgnoredDuringExecution |
-PreferredSchedulingTerm[] |
-
- |
-
-No
- |
-
-
-
-
-NodeSelector
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-nodeSelectorTerms |
-NodeSelectorTerm[] |
-
- |
-
-No
- |
-
-
-
-
-NodeSelectorTerm
-
-NodeSelectorRequirement
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-key |
+
+profile |
string |
- |
-
-No
- |
-
-
-operator |
-string |
-
- |
-
-No
- |
-
-
-values |
-string[] |
-
- |
-
-No
- |
-
-
-
-
-PodAffinity
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-requiredDuringSchedulingIgnoredDuringExecution |
-PodAffinityTerm[] |
-
- |
-
-No
- |
-
-
-preferredDuringSchedulingIgnoredDuringExecution |
-WeightedPodAffinityTerm[] |
-
- |
-
-No
- |
-
-
-
-
-PodAntiAffinity
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-requiredDuringSchedulingIgnoredDuringExecution |
-PodAffinityTerm[] |
-
- |
-
-No
- |
-
-
-preferredDuringSchedulingIgnoredDuringExecution |
-WeightedPodAffinityTerm[] |
-
- |
-
-No
- |
-
-
-
-
-PodAffinityTerm
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-labelSelector |
-LabelSelector |
-
- |
-
-No
- |
-
-
-namespaces |
-string[] |
-
- |
-
-No
- |
-
-
-topologyKey |
-string |
-
- |
-
-No
- |
-
-
-
-
-WeightedPodAffinityTerm
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-weight |
-int32 |
-
- |
-
-No
- |
-
-
-podAffinityTerm |
-PodAffinityTerm |
-
- |
-
-No
- |
-
-
-
-
-PreferredSchedulingTerm
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-weight |
-int32 |
-
- |
-
-No
- |
-
-
-preference |
-NodeSelectorTerm |
-
- |
-
-No
- |
-
-
-
-
-ReadinessProbe
-
-Mirrors k8s.io.api.core.v1.Probe for unmarshaling.
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-exec |
-ExecAction |
-
- |
-
-No
- |
-
-
-httpGet |
-HTTPGetAction |
-
- |
-
-No
- |
-
-
-tcpSocket |
-TCPSocketAction |
-
- |
-
-No
- |
-
-
-initialDelaySeconds |
-int32 |
-
- |
-
-No
- |
-
-
-timeoutSeconds |
-int32 |
-
- |
-
-No
- |
-
-
-periodSeconds |
-int32 |
-
- |
-
-No
- |
-
-
-successThreshold |
-int32 |
-
- |
-
-No
- |
-
-
-failureThreshold |
-int32 |
-
- |
-
-No
- |
-
-
-
-
-ExecAction
-
-Mirrors k8s.io.api.core.v1.ExecAction for unmarshaling.
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-command |
-string[] |
-
- |
-
-No
- |
-
-
-
-
-HTTPGetAction
-
-Mirrors k8s.io.api.core.v1.HTTPGetAction for unmarshaling.
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-path |
-string |
-
- |
-
-No
- |
-
-
-port |
-TypeInterface_kubernetes |
-
- |
-
-No
- |
-
-
-host |
-string |
-
- |
-
-No
- |
-
-
-scheme |
-string |
-
- |
-
-No
- |
-
-
-
-
-
-
-
-Mirrors k8s.io.api.core.v1.HTTPHeader for unmarshaling.
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-
-
-
-
-TCPSocketAction
-
-Mirrors k8s.io.api.core.v1.TCPSocketAction for unmarshaling.
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-port |
-TypeInterface_kubernetes |
-
- |
-
-No
- |
-
-
-host |
-string |
-
- |
-
-No
- |
-
-
-
-
-PodDisruptionBudgetSpec
-
-Mirrors k8s.io.api.policy.v1beta1.PodDisruptionBudget for unmarshaling.
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-minAvailable |
-uint32 |
-
- |
-
-No
- |
-
-
-selector |
-LabelSelector |
-
- |
-
-No
- |
-
-
-maxUnavailable |
-uint32 |
-
- |
-
-No
- |
-
-
-
-
-DeploymentStrategy
-
-Mirrors k8s.io.api.apps.v1.DeploymentStrategy for unmarshaling.
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-type |
-string |
-
- |
-
-No
- |
-
-
-rollingUpdate |
-RollingUpdateDeployment |
-
- |
-
-No
- |
-
-
-
-
-RollingUpdateDeployment
-
-Mirrors k8s.io.api.apps.v1.RollingUpdateDeployment for unmarshaling.
-
-
-
-
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-name |
-string |
-
- From k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta.
+Path or name for the profile e.g.
+ - minimal (looks in profiles dir for a file called minimal.yaml)
+ - /tmp/istio/install/values/custom/custom-install.yaml (local file path)
+default profile is used if this field is unset.
|
No
|
-
+
+installPackagePath |
+string |
+
+ Path for the install package. e.g.
+ - /tmp/istio-installer/nightly (local file path)
+
+ |
+
+No
+ |
+
+
+hub |
+string |
+
+ Root for docker image paths e.g. docker.io/istio
+
+ |
+
+No
+ |
+
+
+tag |
+TypeInterface |
+
+ Version tag for docker images e.g. 1.0.6
+
+ |
+
+No
+ |
+
+
namespace |
string |
- |
-
-No
- |
-
-
-
-
-EnvVar
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-name |
-string |
-
- |
-
-No
- |
-
-
-value |
-string |
-
- |
-
-No
- |
-
-
-valueFrom |
-EnvVarSource |
-
- |
-
-No
- |
-
-
-
-
-EnvVarSource
-
-ObjectFieldSelector
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-apiVersion |
-string |
-
- |
-
-No
- |
-
-
-fieldPath |
-string |
-
- |
-
-No
- |
-
-
-
-
-ResourceFieldSelector
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-containerName |
-string |
-
- |
-
-No
- |
-
-
-resource |
-string |
-
- |
-
-No
- |
-
-
-divisor |
-Quantity |
-
- |
-
-No
- |
-
-
-
-
-ConfigMapKeySelector
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-localObjectReference |
-LocalObjectReference |
-
- |
-
-No
- |
-
-
-key |
-string |
-
- |
-
-No
- |
-
-
-optional |
-bool |
-
- |
-
-No
- |
-
-
-
-
-SecretKeySelector
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-localObjectReference |
-LocalObjectReference |
-
- |
-
-No
- |
-
-
-key |
-string |
-
- |
-
-No
- |
-
-
-optional |
-bool |
-
- |
-
-No
- |
-
-
-
-
-LocalObjectReference
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-name |
-string |
-
- |
-
-No
- |
-
-
-
-
-ServiceSpec
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-ports |
-ServicePort[] |
-
- |
-
-No
- |
-
-
-selector |
-map<string, string> |
-
- |
-
-No
- |
-
-
-clusterIP |
-string |
-
- |
-
-No
- |
-
-
-type |
-string |
-
- |
-
-No
- |
-
-
-externalIPs |
-string[] |
-
- |
-
-No
- |
-
-
-sessionAffinity |
-string |
-
- |
-
-No
- |
-
-
-loadBalancerIP |
-string |
-
- |
-
-No
- |
-
-
-loadBalancerSourceRanges |
-string[] |
-
- |
-
-No
- |
-
-
-externalName |
-string |
-
- |
-
-No
- |
-
-
-externalTrafficPolicy |
-string |
-
- |
-
-No
- |
-
-
-healthCheckNodePort |
-int32 |
-
- |
-
-No
- |
-
-
-publishNotReadyAddresses |
-bool |
-
- |
-
-No
- |
-
-
-sessionAffinityConfig |
-SessionAffinityConfig |
-
- |
-
-No
- |
-
-
-
-
-ServicePort
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-name |
-string |
-
- |
-
-No
- |
-
-
-protocol |
-string |
-
- |
-
-No
- |
-
-
-port |
-int32 |
-
- |
-
-No
- |
-
-
-targetPort |
-TypeInterface_kubernetes |
-
- |
-
-No
- |
-
-
-nodePort |
-int32 |
-
- |
-
-No
- |
-
-
-
-
-SessionAffinityConfig
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-clientIP |
-ClientIPConfig |
-
- |
-
-No
- |
-
-
-
-
-ClientIPConfig
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-timeoutSeconds |
-int32 |
-
- |
-
-No
- |
-
-
-
-
-HorizontalPodAutoscalerSpec
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-scaleTargetRef |
-CrossVersionObjectReference |
-
- |
-
-No
- |
-
-
-minReplicas |
-int32 |
-
- |
-
-No
- |
-
-
-maxReplicas |
-int32 |
-
- |
-
-No
- |
-
-
-metrics |
-MetricSpec[] |
-
- |
-
-No
- |
-
-
-
-
-CrossVersionObjectReference
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-kind |
-string |
-
- |
-
-No
- |
-
-
-name |
-string |
-
- |
-
-No
- |
-
-
-apiVersion |
-string |
-
- |
-
-No
- |
-
-
-
-
-MetricSpec
-
-ObjectMetricSource
-
-PodsMetricSource
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-metricName |
-string |
-
- |
-
-No
- |
-
-
-targetAverageValue |
-Quantity |
-
- |
-
-No
- |
-
-
-selector |
-LabelSelector |
-
- |
-
-No
- |
-
-
-
-
-ResourceMetricSource
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-name |
-string |
-
- |
-
-No
- |
-
-
-targetAverageUtilization |
-TypeInterface_kubernetes |
-
- |
-
-No
- |
-
-
-targetAverageValue |
-Quantity |
-
- |
-
-No
- |
-
-
-
-
-ExternalMetricSource
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-metricName |
-string |
-
- |
-
-No
- |
-
-
-metricSelector |
-LabelSelector |
-
- |
-
-No
- |
-
-
-targetValue |
-Quantity |
-
- |
-
-No
- |
-
-
-targetAverageValue |
-Quantity |
-
- |
-
-No
- |
-
-
-
-
-TypeIntOrStringForPB
-
-GOTYPE: *IntOrStringForPB
+Namespace to install control plane resources into. If unset, Istio will be installed into the same namespace
+as the IstioOperator CR.
-
-TypeInterface_kubernetes
-
-GOTYPE: interface{}
+
+
+No
+ |
+
+
+revision |
+string |
+
+ Identify the revision this installation is associated with.
+This option is currently experimental.
+ |
+
+No
+ |
+
+
+meshConfig |
+TypeMapStringInterface |
+
+ Config used by control plane components internally.
+
+ |
+
+No
+ |
+
+
+components |
+IstioComponentSetSpec |
+
+ Kubernetes resource settings, enablement and component-specific settings that are not internal to the
+component.
+
+ |
+
+No
+ |
+
+
+addonComponents |
+map<string, ExternalComponentSpec> |
+
+ Extra addon components which are not explicitly specified above.
+
+ |
+
+No
+ |
+
+
+values |
+TypeMapStringInterface |
+
+ Overrides for default values.yaml. This is a validated pass-through to Helm templates.
+See the Helm installation options for schema details: https://istio.io/docs/reference/config/installation-options/.
+Anything that is available in IstioOperatorSpec should be set above rather than using the passthrough. This
+includes Kubernetes resource settings for components in KubernetesResourcesSpec.
+
+ |
+
+No
+ |
+
+
+unvalidatedValues |
+TypeMapStringInterface |
+
+ Unvalidated overrides for default values.yaml. Used for custom templates where new parameters are added.
+
+ |
+
+No
+ |
+
+
+
-
+InstallStatus
-A label selector is a label query over a set of resources. The result of matchLabels and
-matchExpressions are ANDed. An empty label selector matches all objects. A null
-label selector matches no objects.
+Observed state of IstioOperator
@@ -1682,110 +176,29 @@ label selector matches no objects.
-
-matchLabels |
-map<string, string> |
+
+status |
+Status |
- matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
-map is equivalent to an element of matchExpressions, whose key field is “key”, the
-operator is “In”, and the values array contains only “value”. The requirements are ANDed.
-+optional
+Overall status of all components controlled by the operator.
+- If all components have status NONE, overall status is NONE.
+- If all components are HEALTHY, overall status is HEALTHY.
+- If one or more components are RECONCILING and others are HEALTHY, overall status is RECONCILING.
+- If one or more components are UPDATING and others are HEALTHY, overall status is UPDATING.
+- If components are a mix of RECONCILING, UPDATING and HEALTHY, overall status is UPDATING.
+- If any component is in ERROR state, overall status is ERROR.
|
No
|
-
-matchExpressions |
-LabelSelectorRequirement[] |
+
+componentStatus |
+map<string, VersionStatus> |
- matchExpressions is a list of label selector requirements. The requirements are ANDed.
-+optional
+Individual status of each component controlled by the operator. The map key is the name of the component.
- |
-
-No
- |
-
-
-
-
-k8s.io.apimachinery.pkg.api.resource.Quantity
-
-Quantity is a fixed-point representation of a number.
-It provides convenient marshaling/unmarshaling in JSON and YAML,
-in addition to String() and Int64() accessors.
-
-The serialization format is:
-
- ::=
- (Note that may be empty, from the “” case in .)
- ::= 0 | 1 | … | 9
- ::= |
- ::= | . | . | .
- ::= “+” | “-”
- ::= |
- ::= | |
- ::= Ki | Mi | Gi | Ti | Pi | Ei
- (International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)
- ::= m | “” | k | M | G | T | P | E
- (Note that 1024 = 1Ki but 1000 = 1k; I didn’t choose the capitalization.)
- ::= “e” | “E”
-
-No matter which of the three exponent forms is used, no quantity may represent
-a number greater than 2^63-1 in magnitude, nor may it have more than 3 decimal
-places. Numbers larger or more precise will be capped or rounded up.
-(E.g.: 0.1m will rounded up to 1m.)
-This may be extended in the future if we require larger or smaller quantities.
-
-When a Quantity is parsed from a string, it will remember the type of suffix
-it had, and will use the same type again when it is serialized.
-
-Before serializing, Quantity will be put in “canonical form”.
-This means that Exponent/suffix will be adjusted up or down (with a
-corresponding increase or decrease in Mantissa) such that:
- a. No precision is lost
- b. No fractional digits will be emitted
- c. The exponent (or suffix) is as large as possible.
-The sign will be omitted unless the number is negative.
-
-Examples:
- 1.5 will be serialized as “1500m”
- 1.5Gi will be serialized as “1536Mi”
-
-Note that the quantity will NEVER be internally represented by a
-floating point number. That is the whole point of this exercise.
-
-Non-canonical values will still parse as long as they are well formed,
-but will be re-emitted in their canonical form. (So always use canonical
-form, or don’t diff.)
-
-This format is intended to make it difficult to use these numbers without
-writing some sort of special handling code in the hopes that that will
-cause implementors to also use a fixed point implementation.
-
-+protobuf=true
-+protobuf.embed=string
-+protobuf.options.marshal=false
-+protobuf.options.(gogoproto.goproto_stringer)=false
-+k8s:deepcopy-gen=true
-+k8s:openapi-gen=true
-
-
-TypeMapStringInterface
+Affinity
-GOTYPE: map[string]interface{}
+See k8s.io.api.core.v1.Affinity.
+
+
+ConfigMapKeySelector
+
+See k8s.io.api.core.v1.ConfigMapKeySelector.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+localObjectReference |
+LocalObjectReference |
+
+ |
+
+No
+ |
+
+
+key |
+string |
+
+ |
+
+No
+ |
+
+
+optional |
+bool |
+
+ |
+
+No
+ |
+
+
+
+
+ClientIPConfig
+
+See k8s.io.api.core.v1.ClientIPConfig.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+timeoutSeconds |
+int32 |
+
+ |
+
+No
+ |
+
+
+
+
+CrossVersionObjectReference
+
+See k8s.io.api.autoscaling.v2beta2.CrossVersionObjectReference.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+kind |
+string |
+
+ |
+
+No
+ |
+
+
+name |
+string |
+
+ |
+
+No
+ |
+
+
+apiVersion |
+string |
+
+ |
+
+No
+ |
+
+
+
+
+DeploymentStrategy
+
+See k8s.io.api.apps.v1.DeploymentStrategy.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+type |
+string |
+
+ |
+
+No
+ |
+
+
+rollingUpdate |
+RollingUpdateDeployment |
+
+ |
+
+No
+ |
+
+
+
+
+EnvVar
+
+See k8s.io.api.core.v1.EnvVar.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+name |
+string |
+
+ |
+
+No
+ |
+
+
+value |
+string |
+
+ |
+
+No
+ |
+
+
+valueFrom |
+EnvVarSource |
+
+ |
+
+No
+ |
+
+
+
+
+EnvVarSource
+
+See k8s.io.api.core.v1.EnvVarSource.
+
+
+
+ExecAction
+
+See k8s.io.api.core.v1.ExecAction.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+command |
+string[] |
+
+ |
+
+No
+ |
+
+
+
+
+ExternalMetricSource
+
+See k8s.io.api.autoscaling.v2beta2.CrossVersionObjectReference.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+metricName |
+string |
+
+ |
+
+No
+ |
+
+
+metricSelector |
+LabelSelector |
+
+ |
+
+No
+ |
+
+
+targetValue |
+Quantity |
+
+ |
+
+No
+ |
+
+
+targetAverageValue |
+Quantity |
+
+ |
+
+No
+ |
+
+
+
+
+HTTPGetAction
+
+See k8s.io.api.core.v1.HTTPGetAction.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+path |
+string |
+
+ |
+
+No
+ |
+
+
+port |
+TypeInterface |
+
+ |
+
+No
+ |
+
+
+host |
+string |
+
+ |
+
+No
+ |
+
+
+scheme |
+string |
+
+ |
+
+No
+ |
+
+
+
+
+
+
+
+See k8s.io.api.core.v1.HTTPHeader.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+
+
+
+
+HorizontalPodAutoscalerSpec
+
+See k8s.io.api.autoscaling.v2beta1.HorizontalPodAutoscalerSpec.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+scaleTargetRef |
+CrossVersionObjectReference |
+
+ |
+
+No
+ |
+
+
+minReplicas |
+int32 |
+
+ |
+
+No
+ |
+
+
+maxReplicas |
+int32 |
+
+ |
+
+No
+ |
+
+
+metrics |
+MetricSpec[] |
+
+ |
+
+No
+ |
+
+
+
+
+LocalObjectReference
+
+See k8s.io.api.core.v1.LocalObjectReference.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+name |
+string |
+
+ |
+
+No
+ |
+
+
+
+
+MetricSpec
+
+See k8s.io.autoscaling.v2beta1.MetricSpec.
+
+
+
+NodeAffinity
+
+See k8s.io.api.core.v1.NodeAffinity.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+requiredDuringSchedulingIgnoredDuringExecution |
+NodeSelector |
+
+ |
+
+No
+ |
+
+
+preferredDuringSchedulingIgnoredDuringExecution |
+PreferredSchedulingTerm[] |
+
+ |
+
+No
+ |
+
+
+
+
+NodeSelector
+
+See k8s.io.api.core.v1.NodeSelector.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+nodeSelectorTerms |
+NodeSelectorTerm[] |
+
+ |
+
+No
+ |
+
+
+
+
+NodeSelectorTerm
+
+See k8s.io.api.core.v1.NodeSelectorTerm.
+
+
+
+NodeSelectorRequirement
+
+See k8s.io.api.core.v1.NodeSelectorRequirement.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+key |
+string |
+
+ |
+
+No
+ |
+
+
+operator |
+string |
+
+ |
+
+No
+ |
+
+
+values |
+string[] |
+
+ |
+
+No
+ |
+
+
+
+
+ObjectFieldSelector
+
+See k8s.io.api.core.v1.ObjectFieldSelector.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+apiVersion |
+string |
+
+ |
+
+No
+ |
+
+
+fieldPath |
+string |
+
+ |
+
+No
+ |
+
+
+
+
+
+
+From k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+name |
+string |
+
+ |
+
+No
+ |
+
+
+namespace |
+string |
+
+ |
+
+No
+ |
+
+
+
+
+ObjectMetricSource
+
+See k8s.io.autoscaling.v2beta1.ObjectMetricSource.
+
+
+
+PodAffinity
+
+See k8s.io.api.core.v1.PodAffinity.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+requiredDuringSchedulingIgnoredDuringExecution |
+PodAffinityTerm[] |
+
+ |
+
+No
+ |
+
+
+preferredDuringSchedulingIgnoredDuringExecution |
+WeightedPodAffinityTerm[] |
+
+ |
+
+No
+ |
+
+
+
+
+PodAntiAffinity
+
+See k8s.io.api.core.v1.PodAntiAffinity.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+requiredDuringSchedulingIgnoredDuringExecution |
+PodAffinityTerm[] |
+
+ |
+
+No
+ |
+
+
+preferredDuringSchedulingIgnoredDuringExecution |
+WeightedPodAffinityTerm[] |
+
+ |
+
+No
+ |
+
+
+
+
+PodAffinityTerm
+
+See k8s.io.api.core.v1.PodAntiAffinity.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+labelSelector |
+LabelSelector |
+
+ |
+
+No
+ |
+
+
+namespaces |
+string[] |
+
+ |
+
+No
+ |
+
+
+topologyKey |
+string |
+
+ |
+
+No
+ |
+
+
+
+
+PodDisruptionBudgetSpec
+
+See k8s.io.api.policy.v1beta1.PodDisruptionBudget.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+minAvailable |
+uint32 |
+
+ |
+
+No
+ |
+
+
+selector |
+LabelSelector |
+
+ |
+
+No
+ |
+
+
+maxUnavailable |
+uint32 |
+
+ |
+
+No
+ |
+
+
+
+
+PodsMetricSource
+
+See k8s.io.api.core.v1.PodsMetricSource.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+metricName |
+string |
+
+ |
+
+No
+ |
+
+
+targetAverageValue |
+Quantity |
+
+ |
+
+No
+ |
+
+
+selector |
+LabelSelector |
+
+ |
+
+No
+ |
+
+
+
+
+PreferredSchedulingTerm
+
+See k8s.io.api.core.v1.PreferredSchedulingTerm.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+weight |
+int32 |
+
+ |
+
+No
+ |
+
+
+preference |
+NodeSelectorTerm |
+
+ |
+
+No
+ |
+
+
+
+
+ReadinessProbe
+
+See k8s.io.api.core.v1.ReadinessProbe.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+exec |
+ExecAction |
+
+ |
+
+No
+ |
+
+
+httpGet |
+HTTPGetAction |
+
+ |
+
+No
+ |
+
+
+tcpSocket |
+TCPSocketAction |
+
+ |
+
+No
+ |
+
+
+initialDelaySeconds |
+int32 |
+
+ |
+
+No
+ |
+
+
+timeoutSeconds |
+int32 |
+
+ |
+
+No
+ |
+
+
+periodSeconds |
+int32 |
+
+ |
+
+No
+ |
+
+
+successThreshold |
+int32 |
+
+ |
+
+No
+ |
+
+
+failureThreshold |
+int32 |
+
+ |
+
+No
+ |
+
+
+
+
+ResourceFieldSelector
+
+See k8s.io.api.core.v1..
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+containerName |
+string |
+
+ |
+
+No
+ |
+
+
+resource |
+string |
+
+ |
+
+No
+ |
+
+
+divisor |
+Quantity |
+
+ |
+
+No
+ |
+
+
+
+
+ResourceMetricSource
+
+See k8s.io.api.core.v1.ResourceMetricSource.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+name |
+string |
+
+ |
+
+No
+ |
+
+
+targetAverageUtilization |
+TypeInterface |
+
+ |
+
+No
+ |
+
+
+targetAverageValue |
+Quantity |
+
+ |
+
+No
+ |
+
+
+
+
+Resources
+
+See k8s.io.api.core.v1.ResourceRequirements.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+limits |
+map<string, string> |
+
+ |
+
+No
+ |
+
+
+requests |
+map<string, string> |
+
+ |
+
+No
+ |
+
+
+
+
+RollingUpdateDeployment
+
+See k8s.io.api.apps.v1.RollingUpdateDeployment.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+maxUnavailable |
+TypeInterface |
+
+ |
+
+No
+ |
+
+
+maxSurge |
+TypeInterface |
+
+ |
+
+No
+ |
+
+
+
+
+SecretKeySelector
+
+See k8s.io.api.core.v1.SecretKeySelector.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+localObjectReference |
+LocalObjectReference |
+
+ |
+
+No
+ |
+
+
+key |
+string |
+
+ |
+
+No
+ |
+
+
+optional |
+bool |
+
+ |
+
+No
+ |
+
+
+
+
+ServiceSpec
+
+See k8s.io.api.core.v1.ServiceSpec.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+ports |
+ServicePort[] |
+
+ |
+
+No
+ |
+
+
+selector |
+map<string, string> |
+
+ |
+
+No
+ |
+
+
+clusterIP |
+string |
+
+ |
+
+No
+ |
+
+
+type |
+string |
+
+ |
+
+No
+ |
+
+
+externalIPs |
+string[] |
+
+ |
+
+No
+ |
+
+
+sessionAffinity |
+string |
+
+ |
+
+No
+ |
+
+
+loadBalancerIP |
+string |
+
+ |
+
+No
+ |
+
+
+loadBalancerSourceRanges |
+string[] |
+
+ |
+
+No
+ |
+
+
+externalName |
+string |
+
+ |
+
+No
+ |
+
+
+externalTrafficPolicy |
+string |
+
+ |
+
+No
+ |
+
+
+healthCheckNodePort |
+int32 |
+
+ |
+
+No
+ |
+
+
+publishNotReadyAddresses |
+bool |
+
+ |
+
+No
+ |
+
+
+sessionAffinityConfig |
+SessionAffinityConfig |
+
+ |
+
+No
+ |
+
+
+
+
+ServicePort
+
+See k8s.io.api.core.v1..
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+name |
+string |
+
+ |
+
+No
+ |
+
+
+protocol |
+string |
+
+ |
+
+No
+ |
+
+
+port |
+int32 |
+
+ |
+
+No
+ |
+
+
+targetPort |
+TypeInterface |
+
+ |
+
+No
+ |
+
+
+nodePort |
+int32 |
+
+ |
+
+No
+ |
+
+
+
+
+SessionAffinityConfig
+
+See k8s.io.api.core.v1.SessionAffinityConfig.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+clientIP |
+ClientIPConfig |
+
+ |
+
+No
+ |
+
+
+
+
+TCPSocketAction
+
+See k8s.io.api.core.v1.TCPSocketAction.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+port |
+TypeInterface |
+
+ |
+
+No
+ |
+
+
+host |
+string |
+
+ |
+
+No
+ |
+
+
+
+
+Toleration
+
+See k8s.io.api.core.v1.Toleration.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+key |
+string |
+
+ |
+
+No
+ |
+
+
+operator |
+string |
+
+ |
+
+No
+ |
+
+
+value |
+string |
+
+ |
+
+No
+ |
+
+
+effect |
+string |
+
+ |
+
+No
+ |
+
+
+tolerationSeconds |
+int64 |
+
+ |
+
+No
+ |
+
+
+
+
+WeightedPodAffinityTerm
+
+See k8s.io.api.core.v1.WeightedPodAffinityTerm.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+weight |
+int32 |
+
+ |
+
+No
+ |
+
+
+podAffinityTerm |
+PodAffinityTerm |
+
+ |
+
+No
+ |
+
+
+
TypeInterface
-GOTYPE: interface{}
+Synthetic type for generating Go structs.
+GOTYPE: interface{}
+
+
+TypeMapStringInterface
+
+Synthetic type for generating Go structs.
+GOTYPE: map[string]interface{}
+
+
+TypeIntOrStringForPB
+
+Synthetic type for generating Go structs.
+GOTYPE: *IntOrStringForPB
TypeBoolValueForPB
-GOTYPE: *BoolValueForPB
+Synthetic type for generating Go structs.
+GOTYPE: *BoolValueForPB
+
+InstallStatus.VersionStatus
+
+VersionStatus is the status and version of a component.
+
+
+
+
+Field |
+Type |
+Description |
+Required |
+
+
+
+
+version |
+string |
+
+ |
+
+No
+ |
+
+
+status |
+Status |
+
+ |
+
+No
+ |
+
+
+error |
+string |
+
+ |
+
+No
+ |
+
+
+
K8sObjectOverlay.PathValue
@@ -2501,10 +2739,11 @@ No
-k8s.io.api.core.v1.Toleration
+
-The pod this Toleration is attached to tolerates any taint that matches
-the triple <key,value,effect> using the matching operator <operator>.
+A label selector is a label query over a set of resources. The result of matchLabels and
+matchExpressions are ANDed. An empty label selector matches all objects. A null
+label selector matches no objects.
@@ -2516,12 +2755,13 @@ the triple <key,value,effect> using the matching operator <operator>
-
-key |
-string |
+
+matchLabels |
+map<string, string> |
- Key is the taint key that the toleration applies to. Empty means match all taint keys.
-If the key is empty, operator must be Exists; this combination means to match all values and all keys.
+ matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
+map is equivalent to an element of matchExpressions, whose key field is “key”, the
+operator is “In”, and the values array contains only “value”. The requirements are ANDed.
+optional
|
@@ -2529,55 +2769,11 @@ If the key is empty, operator must be Exists; this combination means to match al
No
-
-operator |
-string |
+
+matchExpressions |
+LabelSelectorRequirement[] |
- Operator represents a key’s relationship to the value.
-Valid operators are Exists and Equal. Defaults to Equal.
-Exists is equivalent to wildcard for value, so that a pod can
-tolerate all taints of a particular category.
-+optional
-
- |
-
-No
- |
-
-
-value |
-string |
-
- Value is the taint value the toleration matches to.
-If the operator is Exists, the value should be empty, otherwise just a regular string.
-+optional
-
- |
-
-No
- |
-
-
-effect |
-string |
-
- Effect indicates the taint effect to match. Empty means match all taint effects.
-When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
-+optional
-
- |
-
-No
- |
-
-
-tolerationSeconds |
-int64 |
-
- TolerationSeconds represents the period of time the toleration (which must be
-of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
-it is not set, which means tolerate the taint forever (do not evict). Zero and
-negative values will be treated as 0 (evict immediately) by the system.
+ matchExpressions is a list of label selector requirements. The requirements are ANDed.
+optional
|
@@ -2588,12 +2784,66 @@ No
-IstioOperatorSpec
+k8s.io.apimachinery.pkg.api.resource.Quantity
-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.
+Quantity is a fixed-point representation of a number.
+It provides convenient marshaling/unmarshaling in JSON and YAML,
+in addition to String() and Int64() accessors.
+
+The serialization format is:
+
+ ::=
+ (Note that may be empty, from the “” case in .)
+ ::= 0 | 1 | … | 9
+ ::= |
+ ::= | . | . | .
+ ::= “+” | “-”
+ ::= |
+ ::= | |
+ ::= Ki | Mi | Gi | Ti | Pi | Ei
+ (International System of units; See: http://physics.nist.gov/cuu/Units/binary.html)
+ ::= m | “” | k | M | G | T | P | E
+ (Note that 1024 = 1Ki but 1000 = 1k; I didn’t choose the capitalization.)
+ ::= “e” | “E”
+
+No matter which of the three exponent forms is used, no quantity may represent
+a number greater than 2^63-1 in magnitude, nor may it have more than 3 decimal
+places. Numbers larger or more precise will be capped or rounded up.
+(E.g.: 0.1m will rounded up to 1m.)
+This may be extended in the future if we require larger or smaller quantities.
+
+When a Quantity is parsed from a string, it will remember the type of suffix
+it had, and will use the same type again when it is serialized.
+
+Before serializing, Quantity will be put in “canonical form”.
+This means that Exponent/suffix will be adjusted up or down (with a
+corresponding increase or decrease in Mantissa) such that:
+ a. No precision is lost
+ b. No fractional digits will be emitted
+ c. The exponent (or suffix) is as large as possible.
+The sign will be omitted unless the number is negative.
+
+Examples:
+ 1.5 will be serialized as “1500m”
+ 1.5Gi will be serialized as “1536Mi”
+
+Note that the quantity will NEVER be internally represented by a
+floating point number. That is the whole point of this exercise.
+
+Non-canonical values will still parse as long as they are well formed,
+but will be re-emitted in their canonical form. (So always use canonical
+form, or don’t diff.)
+
+This format is intended to make it difficult to use these numbers without
+writing some sort of special handling code in the hopes that that will
+cause implementors to also use a fixed point implementation.
+
++protobuf=true
++protobuf.embed=string
++protobuf.options.marshal=false
++protobuf.options.(gogoproto.goproto_stringer)=false
++k8s:deepcopy-gen=true
++k8s:openapi-gen=true
@@ -2605,230 +2855,8 @@ component values.
-
-profile |
+
string |
-
- Path or name for the profile e.g.
- - minimal (looks in profiles dir for a file called minimal.yaml)
- - /tmp/istio/install/values/custom/custom-install.yaml (local file path)
-default profile is used if this field is unset.
-
- |
-
-No
- |
-
-
-installPackagePath |
-string |
-
- Path for the install package. e.g.
- - /tmp/istio-installer/nightly (local file path)
-
- |
-
-No
- |
-
-
-hub |
-string |
-
- Root for docker image paths e.g. docker.io/istio
-
- |
-
-No
- |
-
-
-tag |
-TypeInterface2 |
-
- Version tag for docker images e.g. 1.0.6
-
- |
-
-No
- |
-
-
-namespace |
-string |
-
- Namespace to install control plane resources into. If unset, Istio will be installed into the same namespace
-as the IstioOperator CR.
-
- |
-
-No
- |
-
-
-revision |
-string |
-
- Identify the revision this installation is associated with.
-This option is currently experimental.
-
- |
-
-No
- |
-
-
-meshConfig |
-TypeMapStringInterface2 |
-
- Config used by control plane components internally.
-
- |
-
-No
- |
-
-
-components |
-IstioComponentSetSpec |
-
- Kubernetes resource settings, enablement and component-specific settings that are not internal to the
-component.
-
- |
-
-No
- |
-
-
-addonComponents |
-map<string, ExternalComponentSpec> |
-
- Extra addon components which are not explicitly specified above.
-
- |
-
-No
- |
-
-
-values |
-TypeMapStringInterface2 |
-
- Overrides for default values.yaml. This is a validated pass-through to Helm templates.
-See the Helm installation options for schema details: https://istio.io/docs/reference/config/installation-options/.
-Anything that is available in IstioOperatorSpec should be set above rather than using the passthrough. This
-includes Kubernetes resource settings for components in KubernetesResourcesSpec.
-
- |
-
-No
- |
-
-
-unvalidatedValues |
-TypeMapStringInterface2 |
-
- Unvalidated overrides for default values.yaml. Used for custom templates where new parameters are added.
-
- |
-
-No
- |
-
-
-
-
-InstallStatus
-
-Observed state of IstioOperator
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-status |
-Status |
-
- Overall status of all components controlled by the operator.
-- If all components have status NONE, overall status is NONE.
-- If all components are HEALTHY, overall status is HEALTHY.
-- If one or more components are RECONCILING and others are HEALTHY, overall status is RECONCILING.
-- If one or more components are UPDATING and others are HEALTHY, overall status is UPDATING.
-- If components are a mix of RECONCILING, UPDATING and HEALTHY, overall status is UPDATING.
-- If any component is in ERROR state, overall status is ERROR.
-
- |
-
-No
- |
-
-
-componentStatus |
-map<string, VersionStatus> |
-
- Individual status of each component controlled by the operator. The map key is the name of the component.
-
- |
-
-No
- |
-
-
-
-
-TypeMapStringInterface2
-
-This is required because synthetic type definition has file rather than package scope.
-GOTYPE: map[string]interface{}
-
-
-TypeInterface2
-
-InstallStatus.VersionStatus
-
-VersionStatus is the status and version of a component.
-
-
-
-
-Field |
-Type |
-Description |
-Required |
-
-
-
-
-version |
-string |
-
- |
-
-No
- |
-
-
-status |
-Status |
-
- |
-
-No
- |
-
-
-error |
string |
|