IstioOperator Options
Configuration affecting Istio control plane installation version and shape.
Affinity
Mirrors k8s.io.api.core.v1.
BaseComponentSpec
Configuration for base component.
ClientIPConfig
ComponentSpec
Configuration for internal components.
ConfigMapKeySelector
CrossVersionObjectReference
DeploymentStrategy
Mirrors k8s.io.api.apps.v1.DeploymentStrategy for unmarshaling.
EnvVar
EnvVarSource
ExecAction
Mirrors k8s.io.api.core.v1.ExecAction for unmarshaling.
ExternalComponentSpec
Configuration for external components.
ExternalMetricSource
GatewaySpec
Configuration for gateways.
HTTPGetAction
Mirrors k8s.io.api.core.v1.HTTPGetAction for unmarshaling.
HTTPHeader
Mirrors k8s.io.api.core.v1.HTTPHeader for unmarshaling.
HorizontalPodAutoscalerSpec
InstallStatus
Observed state of IstioOperator
InstallStatus.Status
Status describes the current state of a component.
Name | Description |
---|---|
NONE | Component is not present. |
UPDATING | Component is being updated to a different version. |
RECONCILING | Controller has started but not yet completed reconciliation loop for the component. |
HEALTHY | Component is healthy. |
ERROR | Component is in an error state. |
InstallStatus.VersionStatus
VersionStatus is the status and version of a component.
IstioComponentSetSpec
IstioComponentSpec defines the desired installed state of Istio components.
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.
K8sObjectOverlay
Patch for an existing k8s resource.
K8sObjectOverlay.PathValue
KubernetesResourcesSpec
KubernetesResourcesConfig is a common set of k8s resource configs for components.
LocalObjectReference
MetricSpec
NodeAffinity
NodeSelector
NodeSelectorRequirement
NodeSelectorTerm
ObjectFieldSelector
ObjectMeta
ObjectMetricSource
PodAffinity
PodAffinityTerm
PodAntiAffinity
PodDisruptionBudgetSpec
Mirrors k8s.io.api.policy.v1beta1.PodDisruptionBudget for unmarshaling.
PodsMetricSource
PreferredSchedulingTerm
ReadinessProbe
Mirrors k8s.io.api.core.v1.Probe for unmarshaling.
ResourceFieldSelector
ResourceMetricSource
Resources
Mirrors k8s.io.api.core.v1.ResourceRequirements for unmarshaling.
RollingUpdateDeployment
Mirrors k8s.io.api.apps.v1.RollingUpdateDeployment for unmarshaling.
SecretKeySelector
ServicePort
ServiceSpec
SessionAffinityConfig
TCPSocketAction
Mirrors k8s.io.api.core.v1.TCPSocketAction for unmarshaling.
TypeBoolValueForPB
GOTYPE: *BoolValueForPB
TypeIntOrStringForPB
GOTYPE: *IntOrStringForPB
TypeInterface
GOTYPE: interface{}
TypeInterface2
GOTYPE: interface{}
TypeInterface_kubernetes
GOTYPE: interface{}
TypeMapStringInterface
GOTYPE: map[string]interface{}
TypeMapStringInterface2
This is required because synthetic type definition has file rather than package scope. GOTYPE: map[string]interface{}
WeightedPodAffinityTerm
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>.
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:
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
k8s.io.apimachinery.pkg.apis.meta.v1.LabelSelector
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.