From 60271b8a212d0591c1244fea884adc98175fcda8 Mon Sep 17 00:00:00 2001 From: Xinnan Wen Date: Thu, 27 Feb 2020 11:25:05 -0800 Subject: [PATCH] update operator ref doc (#6600) * update operator ref doc * fix broken link * Update url to archive link Co-Authored-By: Frank Budinsky Co-authored-by: Frank Budinsky --- .../2019/introducing-istio-operator/index.md | 2 +- .../config/istio.operator.v1alpha1/index.html | 2922 +++++++++++++++ .../istio.operator.v1alpha12.pb/index.html | 3205 ----------------- .../additional-setup/config-profiles/index.md | 2 +- .../en/docs/setup/install/istioctl/index.md | 4 +- 5 files changed, 2926 insertions(+), 3209 deletions(-) create mode 100644 content/en/docs/reference/config/istio.operator.v1alpha1/index.html delete mode 100644 content/en/docs/reference/config/istio.operator.v1alpha12.pb/index.html diff --git a/content/en/blog/2019/introducing-istio-operator/index.md b/content/en/blog/2019/introducing-istio-operator/index.md index 4126903bf7..ab733f50e7 100644 --- a/content/en/blog/2019/introducing-istio-operator/index.md +++ b/content/en/blog/2019/introducing-istio-operator/index.md @@ -39,7 +39,7 @@ is tightly integrated with the tools to prevent common errors and simplify troub Every operator implementation requires a [custom resource definition (CRD)](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/#customresourcedefinitions) to define its custom resource, that is, its API. Istio's operator API is defined by the -[`IstioControlPlane` CRD](/docs/reference/config/istio.operator.v1alpha12.pb/), +[`IstioControlPlane` CRD](https://archive.istio.io/v1.4/docs/reference/config/istio.operator.v1alpha12.pb/), which is generated from an [`IstioControlPlane` proto](https://github.com/istio/operator/blob/release-1.4/pkg/apis/istio/v1alpha2/istiocontrolplane_types.proto). The API supports all of Istio's current [configuration profiles](/docs/setup/additional-setup/config-profiles/) diff --git a/content/en/docs/reference/config/istio.operator.v1alpha1/index.html b/content/en/docs/reference/config/istio.operator.v1alpha1/index.html new file mode 100644 index 0000000000..d53349c418 --- /dev/null +++ b/content/en/docs/reference/config/istio.operator.v1alpha1/index.html @@ -0,0 +1,2922 @@ +--- +WARNING: THIS IS AN AUTO-GENERATED FILE, DO NOT EDIT. PLEASE MODIFY THE ORIGINAL SOURCE IN THE 'https://github.com/istio/api' REPO +source_repo: https://github.com/istio/api +title: IstioOperator Options +description: Configuration affecting Istio control plane installation version and shape. +location: https://istio.io/docs/reference/config/istio.operator.v1alpha1.html +layout: protoc-gen-docs +generator: protoc-gen-docs +weight: 20 +number_of_entries: 59 +--- +

Configuration affecting Istio control plane installation version and shape.

+ +

Affinity

+
+

Mirrors k8s.io.api.core.v1.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
nodeAffinityNodeAffinity + +No +
podAffinityPodAffinity + +No +
podAntiAffinityPodAntiAffinity + +No +
+
+

BaseComponentSpec

+
+

Configuration for base component.

+ + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB +

Selects whether this component is installed.

+ +
+No +
+
+

ClientIPConfig

+
+ + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
timeoutSecondsint32 + +No +
+
+

ComponentSpec

+
+

Configuration for internal components.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB +

Selects whether this component is installed.

+ +
+No +
namespacestring +

Namespace for the component.

+ +
+No +
hubstring +

Hub for the component (overrides top level hub setting).

+ +
+No +
tagTypeInterface +

Tag for the component (overrides top level tag setting).

+ +
+No +
specTypeInterface +

Arbitrary install time configuration for the component.

+ +
+No +
k8sKubernetesResourcesSpec +

Kubernetes resource spec.

+ +
+No +
+
+

ConfigMapKeySelector

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
localObjectReferenceLocalObjectReference + +No +
keystring + +No +
optionalbool + +No +
+
+

CrossVersionObjectReference

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
kindstring + +No +
namestring + +No +
apiVersionstring + +No +
+
+

DeploymentStrategy

+
+

Mirrors k8s.io.api.apps.v1.DeploymentStrategy for unmarshaling.

+ + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
typestring + +No +
rollingUpdateRollingUpdateDeployment + +No +
+
+

EnvVar

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
namestring + +No +
valuestring + +No +
valueFromEnvVarSource + +No +
+
+

EnvVarSource

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
fieldRefObjectFieldSelector + +No +
resourceFieldRefResourceFieldSelector + +No +
configMapKeyRefConfigMapKeySelector + +No +
secretKeyRefSecretKeySelector + +No +
+
+

ExecAction

+
+

Mirrors k8s.io.api.core.v1.ExecAction for unmarshaling.

+ + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
commandstring[] + +No +
+
+

ExternalComponentSpec

+
+

Configuration for external components.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB +

Selects whether this component is installed.

+ +
+No +
namespacestring +

Namespace for the component.

+ +
+No +
specTypeInterface +

Arbitrary install time configuration for the component.

+ +
+No +
chartPathstring +

Chart path for addon components.

+ +
+No +
schemaAny +

Optional schema to validate spec against.

+ +
+No +
k8sKubernetesResourcesSpec +

Kubernetes resource spec.

+ +
+No +
+
+

ExternalMetricSource

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
metricNamestring + +No +
metricSelectorLabelSelector + +No +
targetValueQuantity + +No +
targetAverageValueQuantity + +No +
+
+

GatewaySpec

+
+

Configuration for gateways.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB +

Selects whether this gateway is installed.

+ +
+No +
namespacestring +

Namespace for the gateway.

+ +
+No +
namestring +

Name for the gateway.

+ +
+No +
labelmap<string, string> +

Labels for the gateway.

+ +
+No +
hubstring +

Hub for the component (overrides top level hub setting).

+ +
+No +
tagTypeInterface +

Tag for the component (overrides top level tag setting).

+ +
+No +
k8sKubernetesResourcesSpec +

Kubernetes resource spec.

+ +
+No +
+
+

HTTPGetAction

+
+

Mirrors k8s.io.api.core.v1.HTTPGetAction for unmarshaling.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
pathstring + +No +
portTypeIntOrStringForPB + +No +
hoststring + +No +
schemestring + +No +
httpHeadersHTTPHeader[] + +No +
+
+

HTTPHeader

+
+

Mirrors k8s.io.api.core.v1.HTTPHeader for unmarshaling.

+ + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
namestring + +No +
valuestring + +No +
+
+

HorizontalPodAutoscalerSpec

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
scaleTargetRefCrossVersionObjectReference + +No +
minReplicasint32 + +No +
maxReplicasint32 + +No +
metricsMetricSpec[] + +No +
+
+

InstallStatus

+
+

Observed state of IstioOperator

+ + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
statusStatus +

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 +
componentStatusmap<string, VersionStatus> +

Individual status of each component controlled by the operator. The map key is the name of the component.

+ +
+No +
+
+

InstallStatus.Status

+
+

Status describes the current state of a component.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescription
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.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
versionstring + +No +
statusStatus + +No +
errorstring + +No +
+
+

IstioComponentSetSpec

+
+

IstioComponentSpec defines the desired installed state of Istio components.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
baseBaseComponentSpec + +No +
pilotComponentSpec + +No +
proxyComponentSpec + +No +
sidecarInjectorComponentSpec + +No +
policyComponentSpec + +No +
telemetryComponentSpec + +No +
citadelComponentSpec + +No +
nodeAgentComponentSpec + +No +
galleyComponentSpec + +No +
cniComponentSpec + +No +
ingressGatewaysGatewaySpec[] + +No +
egressGatewaysGatewaySpec[] + +No +
+
+

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.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
profilestring +

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 +
installPackagePathstring +

Path for the install package. e.g. + - /tmp/istio-installer/nightly (local file path)

+ +
+No +
hubstring +

Root for docker image paths e.g. docker.io/istio

+ +
+No +
tagTypeInterface2 +

Version tag for docker images e.g. 1.0.6

+ +
+No +
namespacestring +

Namespace to install control plane resources into. If unset, Istio will be installed into the same namespace +as the IstioOperator CR.

+ +
+No +
revisionstring +

Identify the revision this installation is associated with. +This option is currently experimental.

+ +
+No +
meshConfigMeshConfig +

Config used by control plane components internally.

+ +
+No +
componentsIstioComponentSetSpec +

Kubernetes resource settings, enablement and component-specific settings that are not internal to the +component.

+ +
+No +
addonComponentsmap<string, ExternalComponentSpec> +

Extra addon components which are not explicitly specified above.

+ +
+No +
valuesTypeMapStringInterface2 +

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 +
unvalidatedValuesTypeMapStringInterface2 +

Unvalidated overrides for default values.yaml. Used for custom templates where new parameters are added.

+ +
+No +
+
+

K8sObjectOverlay

+
+

Patch for an existing k8s resource.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
apiVersionstring +

Resource API version.

+ +
+No +
kindstring +

Resource kind.

+ +
+No +
namestring +

Name of resource. +Namespace is always the component namespace.

+ +
+No +
patchesPathValue[] +

List of patches to apply to resource.

+ +
+No +
+
+

K8sObjectOverlay.PathValue

+
+ + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
pathstring +

Path of the form a.[key1:value1].b.[:value2] +Where [key1:value1] is a selector for a key-value pair to identify a list element and [:value] is a value +selector to identify a list element in a leaf list. +All path intermediate nodes must exist.

+ +
+No +
valueTypeInterface +

Value to add, delete or replace. +For add, the path should be a new leaf. +For delete, value should be unset. +For replace, path should reference an existing node. +All values are strings but are converted into appropriate type based on schema.

+ +
+No +
+
+

KubernetesResourcesSpec

+
+

KubernetesResourcesConfig is a common set of k8s resource configs for components.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
affinityAffinity +

k8s affinity. +https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity

+ +
+No +
envEnvVar[] +

Deployment environment variables. +https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/

+ +
+No +
hpaSpecHorizontalPodAutoscalerSpec +

k8s HorizontalPodAutoscaler settings. +https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/

+ +
+No +
imagePullPolicystring +

k8s imagePullPolicy. +https://kubernetes.io/docs/concepts/containers/images/

+ +
+No +
nodeSelectormap<string, string> +

k8s nodeSelector. +https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector

+ +
+No +
podDisruptionBudgetPodDisruptionBudgetSpec +

k8s PodDisruptionBudget settings. +https://kubernetes.io/docs/concepts/workloads/pods/disruptions/#how-disruption-budgets-work

+ +
+No +
podAnnotationsmap<string, string> +

k8s pod annotations. +https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/

+ +
+No +
priorityClassNamestring +

k8s priorityclassname. Default for all resources unless overridden. +https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/#priorityclass

+ +
+No +
readinessProbeReadinessProbe +

k8s readinessProbe settings. +https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/ +k8s.io.api.core.v1.Probe readiness_probe = 9;

+ +
+No +
replicaCountuint32 +

k8s Deployment replicas setting. +https://kubernetes.io/docs/concepts/workloads/controllers/deployment/

+ +
+No +
resourcesResources +

k8s resources settings. +https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#resource-requests-and-limits-of-pod-and-container

+ +
+No +
serviceServiceSpec +

k8s Service settings. +https://kubernetes.io/docs/concepts/services-networking/service/

+ +
+No +
strategyDeploymentStrategy +

k8s deployment strategy. +https://kubernetes.io/docs/concepts/workloads/controllers/deployment/

+ +
+No +
tolerationsToleration[] +

k8s toleration +https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/

+ +
+No +
serviceAnnotationsmap<string, string> +

k8s service annotations. +https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/

+ +
+No +
overlaysK8sObjectOverlay[] +

Overlays for k8s resources in rendered manifests.

+ +
+No +
+
+

LocalObjectReference

+
+ + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
namestring + +No +
+
+

MetricSpec

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
typestring + +No +
objectObjectMetricSource + +No +
podsPodsMetricSource + +No +
resourceResourceMetricSource + +No +
externalExternalMetricSource + +No +
+
+

NodeAffinity

+
+ + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
requiredDuringSchedulingIgnoredDuringExecutionNodeSelector + +No +
preferredDuringSchedulingIgnoredDuringExecutionPreferredSchedulingTerm[] + +No +
+
+

NodeSelector

+
+ + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
nodeSelectorTermsNodeSelectorTerm[] + +No +
+
+

NodeSelectorRequirement

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
keystring + +No +
operatorstring + +No +
valuesstring[] + +No +
+
+

NodeSelectorTerm

+
+ + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
matchExpressionsNodeSelectorRequirement[] + +No +
matchFieldsNodeSelectorRequirement[] + +No +
+
+

ObjectFieldSelector

+
+ + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
apiVersionstring + +No +
fieldPathstring + +No +
+
+

ObjectMeta

+
+ + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
namestring +

From k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta.

+ +
+No +
namespacestring + +No +
+
+

ObjectMetricSource

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
targetCrossVersionObjectReference + +No +
metricNamestring + +No +
targetValueQuantity + +No +
selectorLabelSelector + +No +
averageValueQuantity + +No +
+
+

PodAffinity

+
+ + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
requiredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm[] + +No +
preferredDuringSchedulingIgnoredDuringExecutionWeightedPodAffinityTerm[] + +No +
+
+

PodAffinityTerm

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
labelSelectorLabelSelector + +No +
namespacesstring[] + +No +
topologyKeystring + +No +
+
+

PodAntiAffinity

+
+ + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
requiredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm[] + +No +
preferredDuringSchedulingIgnoredDuringExecutionWeightedPodAffinityTerm[] + +No +
+
+

PodDisruptionBudgetSpec

+
+

Mirrors k8s.io.api.policy.v1beta1.PodDisruptionBudget for unmarshaling.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
minAvailableuint32 + +No +
selectorLabelSelector + +No +
maxUnavailableuint32 + +No +
+
+

PodsMetricSource

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
metricNamestring + +No +
targetAverageValueQuantity + +No +
selectorLabelSelector + +No +
+
+

PreferredSchedulingTerm

+
+ + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
weightint32 + +No +
preferenceNodeSelectorTerm + +No +
+
+

ReadinessProbe

+
+

Mirrors k8s.io.api.core.v1.Probe for unmarshaling.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
execExecAction + +No +
httpGetHTTPGetAction + +No +
tcpSocketTCPSocketAction + +No +
initialDelaySecondsint32 + +No +
timeoutSecondsint32 + +No +
periodSecondsint32 + +No +
successThresholdint32 + +No +
failureThresholdint32 + +No +
+
+

ResourceFieldSelector

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
containerNamestring + +No +
resourcestring + +No +
divisorQuantity + +No +
+
+

ResourceMetricSource

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
namestring + +No +
targetAverageUtilizationint32 + +No +
targetAverageValueQuantity + +No +
+
+

Resources

+
+

Mirrors k8s.io.api.core.v1.ResourceRequirements for unmarshaling.

+ + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
limitsmap<string, string> + +No +
requestsmap<string, string> + +No +
+
+

RollingUpdateDeployment

+
+

Mirrors k8s.io.api.apps.v1.RollingUpdateDeployment for unmarshaling.

+ + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
maxUnavailableTypeIntOrStringForPB + +No +
maxSurgeTypeIntOrStringForPB + +No +
+
+

SecretKeySelector

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
localObjectReferenceLocalObjectReference + +No +
keystring + +No +
optionalbool + +No +
+
+

ServicePort

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
namestring + +No +
protocolstring + +No +
portint32 + +No +
targetPortTypeIntOrStringForPB + +No +
nodePortint32 + +No +
+
+

ServiceSpec

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
portsServicePort[] + +No +
selectormap<string, string> + +No +
clusterIPstring + +No +
typestring + +No +
externalIPsstring[] + +No +
sessionAffinitystring + +No +
loadBalancerIPstring + +No +
loadBalancerSourceRangesstring[] + +No +
externalNamestring + +No +
externalTrafficPolicystring + +No +
healthCheckNodePortint32 + +No +
publishNotReadyAddressesbool + +No +
sessionAffinityConfigSessionAffinityConfig + +No +
+
+

SessionAffinityConfig

+
+ + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
clientIPClientIPConfig + +No +
+
+

TCPSocketAction

+
+

Mirrors k8s.io.api.core.v1.TCPSocketAction for unmarshaling.

+ + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
portTypeIntOrStringForPB + +No +
hoststring + +No +
+
+

TypeBoolValueForPB

+
+

GOTYPE: *BoolValueForPB

+ +
+

TypeIntOrStringForPB

+
+

GOTYPE: *IntOrStringForPB

+ +
+

TypeInterface

+
+

GOTYPE: interface{}

+ +
+

TypeInterface2

+
+

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

+
+ + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
weightint32 + +No +
podAffinityTermPodAffinityTerm + +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>.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
keystring +

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. ++optional

+ +
+No +
operatorstring +

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 +
valuestring +

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 +
effectstring +

Effect indicates the taint effect to match. Empty means match all taint effects. +When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. ++optional

+ +
+No +
tolerationSecondsint64 +

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. ++optional

+ +
+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

+ + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
stringstring + +No +
+
+

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.

+ + + + + + + + + + + + + + + + + + + + + + + + +
FieldTypeDescriptionRequired
matchLabelsmap<string, string> +

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

+ +
+No +
matchExpressionsLabelSelectorRequirement[] +

matchExpressions is a list of label selector requirements. The requirements are ANDed. ++optional

+ +
+No +
+
diff --git a/content/en/docs/reference/config/istio.operator.v1alpha12.pb/index.html b/content/en/docs/reference/config/istio.operator.v1alpha12.pb/index.html deleted file mode 100644 index bcca66c9bc..0000000000 --- a/content/en/docs/reference/config/istio.operator.v1alpha12.pb/index.html +++ /dev/null @@ -1,3205 +0,0 @@ ---- -WARNING: THIS IS AN AUTO-GENERATED FILE, DO NOT EDIT. PLEASE MODIFY THE ORIGINAL SOURCE IN THE 'https://github.com/istio/istio' REPO -source_repo: https://github.com/istio/istio -title: Installation Options (istioctl) -description: Configuration options for Istio control plane installation using istioctl. -location: https://istio.io/docs/reference/config/istio.operator.v1alpha12.pb.html -layout: protoc-gen-docs -generator: protoc-gen-docs -weight: 10 -number_of_entries: 62 ---- -

IstioControlPlane is a schema for both defining and customizing Istio control plane installations. -Running the operator with an empty user defined InstallSpec results in an control plane with default values, using the -default charts.

- -

The simplest install specialization is to point the user InstallSpec profile to a different values file, for -example an Istio minimal control plane, which will use the values associated with the minimal control plane profile for -Istio.

- -

Deeper customization is possible at three levels:

- -
    -
  1. New APIs defined in this file

    - -

    Feature API: this API groups an Istio install by features and allows enabling/disabling the features, selecting base -control plane profiles, as well as some additional high level settings that are feature specific. Each feature contains -one or more components, which correspond to Istio components (Pods) in the cluster.

    - -

    k8s API: this API is a pass through to k8s resource settings for Istio k8s resources. It allows customizing Istio k8s -resources like Affinity, Resource requests/limits, PodDisruptionBudgetSpec, Selectors etc. in a more consistent and -k8s specific way compared to values.yaml. See KubernetesResourcesSpec in this file for details.

  2. - -
  3. values.yaml

    - -

    The entirety of values.yaml settings is accessible through InstallSpec (see CommonComponentSpec/Values). -This API will gradually be deprecated and values there will be moved either into CRDs that are used to directly -configure components or, in the case of k8s settings, will be replaced by the new API above.

  4. - -
  5. k8s resource overlays

    - -

    Once a manifest is rendered from InstallSpec, a further customization can be applied by specifying k8s resource -overlays. The concept is similar to kustomize, where JSON patches are applied for object paths. This allows -customization at the lowest level and eliminates the need to create ad-hoc template parameters, or edit templates.

  6. -
- -

Here are a few example uses:

- -
    -
  1. Default Istio install

    - -
    spec:
    -
  2. - -
  3. Default minimal profile install

    - -
    spec:
    -  profile: minimal
    -
  4. - -
  5. Default install with telemetry disabled

    - -
    spec:
    -  telemetry:
    -    enabled: false
    -
  6. - -
  7. Default install with each feature installed to different namespace and security components in separate namespaces

    - -
    spec:
    -  traffic_management:
    -    components:
    -      namespace: istio-traffic-management
    -  policy:
    -    components:
    -      namespace: istio-policy
    -  telemetry:
    -    components:
    -      namespace: istio-telemetry
    -  config_management:
    -    components:
    -      namespace: istio-config-management
    -  security:
    -    components:
    -      citadel:
    -        namespace: istio-citadel
    -      cert_manager:
    -        namespace: istio-cert-manager
    -      node_agent:
    -        namespace: istio-node-agent
    -
  8. - -
  9. Default install with specialized k8s settings for pilot

    - -
    spec:
    -  traffic_management:
    -    components:
    -      pilot:
    -        k8s:
    -          resources:
    -            limits:
    -              cpu: 444m
    -              memory: 333Mi
    -            requests:
    -              cpu: 222m
    -              memory: 111Mi
    -          readinessProbe:
    -            failureThreshold: 44
    -            initialDelaySeconds: 11
    -            periodSeconds: 22
    -            successThreshold: 33
    -
  10. - -
  11. Default install with values.yaml customizations for proxy

    - -
    spec:
    -  traffic_management:
    -    components:
    -      proxy:
    -        values:
    -        - global.proxy.enableCoreDump: true
    -        - global.proxy.dnsRefreshRate: 10s
    -
  12. - -
  13. Default install with modification to container flag in galley

    - -
    spec:
    -  configuration_management:
    -    components:
    -      galley:
    -        k8s:
    -          overlays:
    -          - apiVersion: extensions/v1beta1
    -            kind: Deployment
    -            name: istio-galley
    -            patches:
    -            - path: spec.template.spec.containers.[name:galley].command.[--livenessProbeInterval]
    -              value: --livenessProbeInterval=123s
    -
  14. -
- -

AutoInjectionFeatureSpec

-
-

Configuration options for auto injection feature.

- - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB -

Selects whether auto injection feature is installed. Must be set for any sub-component to be installed.

- -
-No -
componentsComponents - -No -
-
-

AutoInjectionFeatureSpec.Components

-
- - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
namespacestring -

Namespace that auto injections components are installed into.

- -
-No -
injectorSidecarInjectorComponentSpec - -No -
-
-

BaseComponentSpec

-
-

Configuration options for the base component.

- - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB - -No -
-
-

BaseFeatureSpec

-
-

Base feature settings.

- - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB -

Selects whether base feature is installed. Required for all Istio installs. -Should only be disabled when generating partial Istio installation YAMLs.

- -
-No -
componentsComponents - -No -
-
-

BaseFeatureSpec.Components

-
-

Component specific config.

- - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
baseBaseComponentSpec - -No -
-
-

CNIComponentSpec

-
-

Configuration options for cni component.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB - -No -
namespacestring - -No -
k8sKubernetesResourcesSpec - -No -
-
-

CNIFeatureSpec

-
-

Configuration options for cni feature.

- - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB -

Selects whether CNI feature is installed. Must be set for any sub-component to be installed.

- -
-No -
componentsComponents - -No -
-
-

CNIFeatureSpec.Components

-
- - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
namespacestring -

Namespace that cni components are installed into.

- -
-No -
cniCNIComponentSpec - -No -
-
-

CertManagerComponentSpec

-
-

Configuration options for certificate manager component.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB - -No -
namespacestring - -No -
k8sKubernetesResourcesSpec - -No -
-
-

CitadelComponentSpec

-
-

Configuration options for Citadel component.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB - -No -
namespacestring - -No -
k8sKubernetesResourcesSpec - -No -
-
-

ConfigManagementFeatureSpec

-
-

Configuration options for configuration management feature.

- - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB -

Selects whether config management feature is installed. Must be set for any sub-component to be installed.

- -
-No -
componentsComponents - -No -
-
-

ConfigManagementFeatureSpec.Components

-
- - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
namespacestring -

Namespace that security components are installed into.

- -
-No -
galleyGalleyComponentSpec - -No -
-
-

CoreDNSComponentSpec

-
-

Configuration options for CoreDNS component.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB - -No -
namespacestring - -No -
k8sKubernetesResourcesSpec - -No -
-
-

CoreDNSFeatureSpec

-
-

Configuration options for CoreDNS feature.

- - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB -

Selects whether CoreDNS feature is installed. Must be set for any sub-component to be installed.

- -
-No -
componentsComponents - -No -
-
-

CoreDNSFeatureSpec.Components

-
- - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
namespacestring -

Namespace that CoreDNS components are installed into.

- -
-No -
coreDNSCoreDNSComponentSpec - -No -
-
-

DeploymentStrategy

-
-

Mirrors k8s.io.api.apps.v1.DeploymentStrategy for unmarshaling.

- - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
typestring - -No -
rollingUpdateRollingUpdateDeployment - -No -
-
-

EgressGatewayComponentSpec

-
-

Configuration options for egress gateways.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB - -No -
namespacestring - -No -
k8sKubernetesResourcesSpec - -No -
-
-

ExecAction

-
-

Mirrors k8s.io.api.core.v1.ExecAction for unmarshaling

- - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
commandstring[] - -No -
-
-

GalleyComponentSpec

-
-

Configuration options for galley component.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB - -No -
namespacestring - -No -
k8sKubernetesResourcesSpec - -No -
-
-

GatewayFeatureSpec

-
-

Configuration options for gateway feature.

- - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB -

Selects whether gateway feature is installed. Must be set for any sub-component to be installed.

- -
-No -
componentsComponents - -No -
-
-

GatewayFeatureSpec.Components

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
namespacestring -

Namespace that auto injections components are installed into.

- -
-No -
ingressGatewayIngressGatewayComponentSpec -

Ingress/egress gateway configuration.

- -
-No -
egressGatewayEgressGatewayComponentSpec - -No -
-
-

HTTPGetAction

-
-

Mirrors k8s.io.api.core.v1.HTTPGetAction for unmarshaling

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
pathstring - -No -
portTypeIntOrStringForPB - -No -
hoststring - -No -
schemestring - -No -
httpHeadersHTTPHeader[] - -No -
-
-

HTTPHeader

-
-

Mirrors k8s.io.api.core.v1.HTTPHeader for unmarshaling

- - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
namestring - -No -
valuestring - -No -
-
-

IngressGatewayComponentSpec

-
-

Configuration options for ingress gateways.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB - -No -
namespacestring - -No -
k8sKubernetesResourcesSpec - -No -
-
-

InstallStatus

-
-

Observed state of IstioControlPlane.

- - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
statusmap<string, VersionStatus> - -No -
-
-

InstallStatus.Status

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDescription
NONE -
UPDATING -
HEALTHY -
ERROR -
RECONCILING -
-
-

InstallStatus.VersionStatus

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
versionstring - -No -
statusStatus - -No -
statusStringstring - -No -
errorstring - -No -
-
-

IstioControlPlane

-
-

IstioControlPlane is a CustomResourceDefinition (CRD) describing an Istio control plane.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
specIstioControlPlaneSpec -

Spec defines the desired state of IstioControlPlane.

- -
-No -
statusInstallStatus -

Status reports the status of the Istio control plane.

- -
-No -
kindstring - -No -
apiVersionstring - -No -
placeholderstring -

GOFIELD:v11.ObjectMeta json:"metadata,omitempty" protobuf:"bytes,7,opt,name=metadata" -GOFIELD:v11.TypeMeta json:",inline"

- -
-No -
-
-

IstioControlPlaneSpec

-
-

IstioControlPlaneSpec defines the desired state of IstioControlPlane. -The spec is a used to define a customization of the default profile values that are supplied with each Istio release. -It is grouped at the top level by feature, where behavior of Istio functional areas is specified. -Each feature contains components, where k8s resource level defaults can be overridden. -Because the spec is a customization API, specifying an empty InstallSpec results in a default Istio control plane.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
defaultNamespacestring -

Default namespace if feature or component namespaces are not set.

- -
-No -
baseBaseFeatureSpec -

Base feature containing resources like CRDs, namespaces etc.

- -
-No -
trafficManagementTrafficManagementFeatureSpec -

Selection and configuration of core Istio features.

- -
-No -
policyPolicyFeatureSpec - -No -
telemetryTelemetryFeatureSpec - -No -
securitySecurityFeatureSpec - -No -
configManagementConfigManagementFeatureSpec - -No -
autoInjectionAutoInjectionFeatureSpec - -No -
gatewaysGatewayFeatureSpec - -No -
cniCNIFeatureSpec - -No -
coreDNSCoreDNSFeatureSpec - -No -
valuesTypeMapStringInterface -

Overrides for default global values.yaml.

- -
-No -
unvalidatedValuesTypeMapStringInterface -

Unvalidated overrides for default global values.yaml.

- -
-No -
profilestring -

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 -
installPackagePathstring -

Path for the install package. e.g. - - /tmp/istio-installer/nightly (local file path)

- -
-No -
hubstring -

Root for docker image paths e.g. docker.io/istio-release. -Releases are published to docker hub under ‘istio’ project. -Daily builds from prow are on gcr.io, and nightly builds from circle on docker.io/istionightly

- -
-No -
tagstring -

Version tag for docker images e.g. 1.0.6

- -
-No -
-
-

KubernetesResourcesSpec

-
-

KubernetesResourcesConfig is a common set of k8s resource configs for components.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
affinityAffinity -

k8s affinity. -https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity

- -
-No -
envEnvVar[] -

Deployment environment variables. -https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/

- -
-No -
hpaSpecHorizontalPodAutoscalerSpec -

k8s HorizontalPodAutoscaler settings. -https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/

- -
-No -
imagePullPolicystring -

k8s imagePullPolicy. -https://kubernetes.io/docs/concepts/containers/images/

- -
-No -
nodeSelectormap<string, string> -

k8s nodeSelector. -https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector

- -
-No -
podDisruptionBudgetPodDisruptionBudgetSpec -

k8s PodDisruptionBudget settings. -https://kubernetes.io/docs/concepts/workloads/pods/disruptions/#how-disruption-budgets-work

- -
-No -
podAnnotationsmap<string, string> -

k8s pod annotations. -https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/

- -
-No -
priorityClassNamestring -

k8s priorityclassname. Default for all resources unless overridden. -https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/#priorityclass

- -
-No -
readinessProbeReadinessProbe -

k8s readinessProbe settings. -https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/ -k8s.io.api.core.v1.Probe readiness_probe = 9;

- -
-No -
replicaCountuint32 -

k8s Deployment replicas setting. -https://kubernetes.io/docs/concepts/workloads/controllers/deployment/

- -
-No -
resourcesResources -

k8s resources settings. -https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#resource-requests-and-limits-of-pod-and-container

- -
-No -
serviceServiceSpec -

k8s Service settings. -https://kubernetes.io/docs/concepts/services-networking/service/

- -
-No -
strategyDeploymentStrategy -

k8s deployment strategy. -https://kubernetes.io/docs/concepts/workloads/controllers/deployment/

- -
-No -
tolerationsToleration[] -

k8s toleration -https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/

- -
-No -
overlaysk8sObjectOverlay[] -

Overlays for k8s resources in rendered manifests.

- -
-No -
-
-

NodeAgentComponentSpec

-
-

Configuration options for node agent component.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB - -No -
namespacestring - -No -
k8sKubernetesResourcesSpec - -No -
-
-

ObjectMeta

-
- - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
namestring -

From k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta

- -
-No -
namespacestring - -No -
-
-

PilotComponentSpec

-
-

Configuration options for the pilot component.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB - -No -
namespacestring - -No -
k8sKubernetesResourcesSpec - -No -
-
-

PodDisruptionBudgetSpec

-
-

Mirrors k8s.io.api.policy.v1beta1.PodDisruptionBudget for unmarshaling.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
minAvailableuint32 - -No -
selectorLabelSelector - -No -
maxUnavailableuint32 - -No -
-
-

PolicyComponentSpec

-
-

Configuration options for the policy enforcement component.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB - -No -
namespacestring - -No -
k8sKubernetesResourcesSpec - -No -
-
-

PolicyFeatureSpec

-
-

Configuration options for the policy feature.

- - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB -

Selects whether policy is installed. -Must be enabled to enable any sub-component.

- -
-No -
componentsComponents - -No -
-
-

PolicyFeatureSpec.Components

-
-

Component specific config.

- - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
namespacestring -

Namespace that all policy components are installed into.

- -
-No -
policyPolicyComponentSpec - -No -
-
-

ProxyComponentSpec

-
-

Configuration options for the proxy.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB - -No -
namespacestring - -No -
k8sKubernetesResourcesSpec - -No -
-
-

ReadinessProbe

-
-

Mirrors k8s.io.api.core.v1.Probe for unmarshaling

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
execExecAction - -No -
httpGetHTTPGetAction - -No -
tcpSocketTCPSocketAction - -No -
initialDelaySecondsint32 - -No -
timeoutSecondsint32 - -No -
periodSecondsint32 - -No -
successThresholdint32 - -No -
failureThresholdint32 - -No -
-
-

Resources

-
-

Mirrors k8s.io.api.core.v1.ResourceRequirements for unmarshaling.

- - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
limitsmap<string, string> - -No -
requestsmap<string, string> - -No -
-
-

RollingUpdateDeployment

-
-

Mirrors k8s.io.api.apps.v1.RollingUpdateDeployment for unmarshaling.

- - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
maxUnavailableTypeIntOrStringForPB - -No -
maxSurgeTypeIntOrStringForPB - -No -
-
-

SecurityFeatureSpec

-
-

Configuration options for security feature.

- - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB -

Selects whether security feature is installed. Must be set for any sub-component to be installed.

- -
-No -
componentsComponents - -No -
-
-

SecurityFeatureSpec.Components

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
namespacestring -

Namespace that security components are installed into.

- -
-No -
citadelCitadelComponentSpec - -No -
certManagerCertManagerComponentSpec - -No -
nodeAgentNodeAgentComponentSpec - -No -
-
-

SidecarInjectorComponentSpec

-
-

Configuration options for the sidecar injector component.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB - -No -
namespacestring - -No -
k8sKubernetesResourcesSpec - -No -
-
-

TCPSocketAction

-
-

Mirrors k8s.io.api.core.v1.TCPSocketAction for unmarshaling

- - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
portTypeIntOrStringForPB - -No -
hoststring - -No -
-
-

TelemetryComponentSpec

-
-

Configuration options for the telemetry component.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB - -No -
namespacestring - -No -
k8sKubernetesResourcesSpec - -No -
-
-

TelemetryFeatureSpec

-
-

Configuration options for the telemetry feature.

- - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB -

Selects whether telemetry is installed. -Must be enabled to enable any sub-component.

- -
-No -
componentsComponents - -No -
-
-

TelemetryFeatureSpec.Components

-
-

Component specific config.

- - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
namespacestring -

Namespace that all telemetry components are installed into.

- -
-No -
telemetryTelemetryComponentSpec - -No -
-
-

TrafficManagementFeatureSpec

-
-

Configuration options for traffic management.

- - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
enabledTypeBoolValueForPB -

Selects whether traffic management is installed. -Must be enabled to enable any sub-component.

- -
-No -
componentsComponents - -No -
-
-

TrafficManagementFeatureSpec.Components

-
-

Component specific config.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
namespacestring -

Namespace that all traffic management components are installed into.

- -
-No -
pilotPilotComponentSpec - -No -
proxyProxyComponentSpec - -No -
-
-

TypeBoolValueForPB

-
-

GOTYPE: *BoolValueForPB

- -
-

TypeIntOrStringForPB

-
-

GOTYPE: *IntOrStringForPB

- -
-

TypeInterface

-
-

GOTYPE: interface{}

- -
-

TypeMapStringInterface

-
-

GOTYPE: map[string]interface{}

- -
-

k8s.io.api.autoscaling.v2beta1.HorizontalPodAutoscalerSpec

-
-

HorizontalPodAutoscalerSpec describes the desired functionality of the HorizontalPodAutoscaler.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
scaleTargetRefCrossVersionObjectReference -

scaleTargetRef points to the target resource to scale, and is used to the pods for which metrics -should be collected, as well as to actually change the replica count.

- -
-No -
minReplicasint32 -

minReplicas is the lower limit for the number of replicas to which the autoscaler -can scale down. It defaults to 1 pod. minReplicas is allowed to be 0 if the -alpha feature gate HPAScaleToZero is enabled and at least one Object or External -metric is configured. Scaling is active as long as at least one metric value is -available. -+optional

- -
-No -
maxReplicasint32 -

maxReplicas is the upper limit for the number of replicas to which the autoscaler can scale up. -It cannot be less that minReplicas.

- -
-No -
metricsMetricSpec[] -

metrics contains the specifications for which to use to calculate the -desired replica count (the maximum replica count across all metrics will -be used). The desired replica count is calculated multiplying the -ratio between the target value and the current value by the current -number of pods. Ergo, metrics used must decrease as the pod count is -increased, and vice-versa. See the individual metric source types for -more information about how each type of metric must respond. -+optional

- -
-No -
-
-

k8s.io.api.core.v1.Affinity

-
-

Affinity is a group of affinity scheduling rules.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
nodeAffinityNodeAffinity -

Describes node affinity scheduling rules for the pod. -+optional

- -
-No -
podAffinityPodAffinity -

Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). -+optional

- -
-No -
podAntiAffinityPodAntiAffinity -

Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). -+optional

- -
-No -
-
-

k8s.io.api.core.v1.EnvVar

-
-

EnvVar represents an environment variable present in a Container.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
namestring -

Name of the environment variable. Must be a C_IDENTIFIER.

- -
-No -
valuestring -

Variable references $(VARNAME) are expanded -using the previous defined environment variables in the container and -any service environment variables. If a variable cannot be resolved, -the reference in the input string will be unchanged. The $(VARNAME) -syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped -references will never be expanded, regardless of whether the variable -exists or not. -Defaults to “”. -+optional

- -
-No -
valueFromEnvVarSource -

Source for the environment variable’s value. Cannot be used if value is not empty. -+optional

- -
-No -
-
-

k8s.io.api.core.v1.ServiceSpec

-
-

ServiceSpec describes the attributes that a user creates on a service.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
portsServicePort[] -

The list of ports that are exposed by this service. -More info: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies -+patchMergeKey=port -+patchStrategy=merge -+listType=map -+listMapKey=port -+listMapKey=protocol

- -
-No -
selectormap<string, string> -

Route service traffic to pods with label keys and values matching this -selector. If empty or not present, the service is assumed to have an -external process managing its endpoints, which Kubernetes will not -modify. Only applies to types ClusterIP, NodePort, and LoadBalancer. -Ignored if type is ExternalName. -More info: https://kubernetes.io/docs/concepts/services-networking/service/ -+optional

- -
-No -
clusterIPstring -

clusterIP is the IP address of the service and is usually assigned -randomly by the master. If an address is specified manually and is not in -use by others, it will be allocated to the service; otherwise, creation -of the service will fail. This field can not be changed through updates. -Valid values are “None”, empty string (“”), or a valid IP address. “None” -can be specified for headless services when proxying is not required. -Only applies to types ClusterIP, NodePort, and LoadBalancer. Ignored if -type is ExternalName. -More info: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies -+optional

- -
-No -
typestring -

type determines how the Service is exposed. Defaults to ClusterIP. Valid -options are ExternalName, ClusterIP, NodePort, and LoadBalancer. -“ExternalName” maps to the specified externalName. -“ClusterIP” allocates a cluster-internal IP address for load-balancing to -endpoints. Endpoints are determined by the selector or if that is not -specified, by manual construction of an Endpoints object. If clusterIP is -“None”, no virtual IP is allocated and the endpoints are published as a -set of endpoints rather than a stable IP. -“NodePort” builds on ClusterIP and allocates a port on every node which -routes to the clusterIP. -“LoadBalancer” builds on NodePort and creates an -external load-balancer (if supported in the current cloud) which routes -to the clusterIP. -More info: https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types -+optional

- -
-No -
externalIPsstring[] -

externalIPs is a list of IP addresses for which nodes in the cluster -will also accept traffic for this service. These IPs are not managed by -Kubernetes. The user is responsible for ensuring that traffic arrives -at a node with this IP. A common example is external load-balancers -that are not part of the Kubernetes system. -+optional

- -
-No -
sessionAffinitystring -

Supports “ClientIP” and “None”. Used to maintain session affinity. -Enable client IP based session affinity. -Must be ClientIP or None. -Defaults to None. -More info: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies -+optional

- -
-No -
loadBalancerIPstring -

Only applies to Service Type: LoadBalancer -LoadBalancer will get created with the IP specified in this field. -This feature depends on whether the underlying cloud-provider supports specifying -the loadBalancerIP when a load balancer is created. -This field will be ignored if the cloud-provider does not support the feature. -+optional

- -
-No -
loadBalancerSourceRangesstring[] -

If specified and supported by the platform, this will restrict traffic through the cloud-provider -load-balancer will be restricted to the specified client IPs. This field will be ignored if the -cloud-provider does not support the feature.” -More info: https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/ -+optional

- -
-No -
externalNamestring -

externalName is the external reference that kubedns or equivalent will -return as a CNAME record for this service. No proxying will be involved. -Must be a valid RFC-1123 hostname (https://tools.ietf.org/html/rfc1123) -and requires Type to be ExternalName. -+optional

- -
-No -
externalTrafficPolicystring -

externalTrafficPolicy denotes if this Service desires to route external -traffic to node-local or cluster-wide endpoints. “Local” preserves the -client source IP and avoids a second hop for LoadBalancer and Nodeport -type services, but risks potentially imbalanced traffic spreading. -“Cluster” obscures the client source IP and may cause a second hop to -another node, but should have good overall load-spreading. -+optional

- -
-No -
healthCheckNodePortint32 -

healthCheckNodePort specifies the healthcheck nodePort for the service. -If not specified, HealthCheckNodePort is created by the service api -backend with the allocated nodePort. Will use user-specified nodePort value -if specified by the client. Only effects when Type is set to LoadBalancer -and ExternalTrafficPolicy is set to Local. -+optional

- -
-No -
publishNotReadyAddressesbool -

publishNotReadyAddresses, when set to true, indicates that DNS implementations -must publish the notReadyAddresses of subsets for the Endpoints associated with -the Service. The default value is false. -The primary use case for setting this field is to use a StatefulSet’s Headless Service -to propagate SRV records for its Pods without respect to their readiness for purpose -of peer discovery. -+optional

- -
-No -
sessionAffinityConfigSessionAffinityConfig -

sessionAffinityConfig contains the configurations of session affinity. -+optional

- -
-No -
ipFamilystring -

ipFamily specifies whether this Service has a preference for a particular IP family (e.g. IPv4 vs. -IPv6). If a specific IP family is requested, the clusterIP field will be allocated from that family, if it is -available in the cluster. If no IP family is requested, the cluster’s primary IP family will be used. -Other IP fields (loadBalancerIP, loadBalancerSourceRanges, externalIPs) and controllers which -allocate external load-balancers should use the same IP family. Endpoints for this Service will be of -this family. This field is immutable after creation. Assigning a ServiceIPFamily not available in the -cluster (e.g. IPv6 in IPv4 only cluster) is an error condition and will fail during clusterIP assignment. -+optional

- -
-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>.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
keystring -

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. -+optional

- -
-No -
operatorstring -

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 -
valuestring -

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 -
effectstring -

Effect indicates the taint effect to match. Empty means match all taint effects. -When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. -+optional

- -
-No -
tolerationSecondsint64 -

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. -+optional

- -
-No -
-
-

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.

- - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
matchLabelsmap<string, string> -

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

- -
-No -
matchExpressionsLabelSelectorRequirement[] -

matchExpressions is a list of label selector requirements. The requirements are ANDed. -+optional

- -
-No -
-
-

k8sObjectOverlay

-
-

Patch for an existing k8s resource.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
apiVersionstring -

Resource API version.

- -
-No -
kindstring -

Resource kind.

- -
-No -
namestring -

Name of resource. -Namespace is always the component namespace.

- -
-No -
patchesPathValue[] -

List of patches to apply to resource.

- -
-No -
-
-

k8sObjectOverlay.PathValue

-
- - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescriptionRequired
pathstring -

Path of the form a.b:c.e.:f -Where b:c is a list element selector of the form key:value and :f is a list selector of the form :value. -All path intermediate nodes must exist.

- -
-No -
valueTypeInterface -

Value to add, delete or replace. -For add, the path should be a new leaf. -For delete, value should be unset. -For replace, path should reference an existing node. -All values are strings but are converted into appropriate type based on schema.

- -
-No -
-
diff --git a/content/en/docs/setup/additional-setup/config-profiles/index.md b/content/en/docs/setup/additional-setup/config-profiles/index.md index 4a9f2632a0..93e61fc6fc 100644 --- a/content/en/docs/setup/additional-setup/config-profiles/index.md +++ b/content/en/docs/setup/additional-setup/config-profiles/index.md @@ -14,7 +14,7 @@ You can start with one of Istio’s built-in configuration profiles and then fur your specific needs. The following built-in configuration profiles are currently available: 1. **default**: enables components according to the default settings of the - [`IstioControlPlane` API](/docs/reference/config/istio.operator.v1alpha12.pb/) + [`IstioOperator` API](/docs/reference/config/istio.operator.v1alpha1/) (recommend for production deployments). You can display the default setting by running the command `istioctl profile dump`. diff --git a/content/en/docs/setup/install/istioctl/index.md b/content/en/docs/setup/install/istioctl/index.md index d9b007854a..a66ebd9c7e 100644 --- a/content/en/docs/setup/install/istioctl/index.md +++ b/content/en/docs/setup/install/istioctl/index.md @@ -252,7 +252,7 @@ In addition to installing any of Istio's built-in [configuration profiles](/docs/setup/additional-setup/config-profiles/), `istioctl manifest` provides a complete API for customizing the configuration. -- [The `IstioOperator` API](/docs/reference/config/istio.operator.v1alpha12.pb/) +- [The `IstioOperator` API](/docs/reference/config/istio.operator.v1alpha1/) The configuration parameters in this API can be set individually using `--set` options on the command line. For example, to enable the security feature in a default configuration profile, use this command: @@ -379,7 +379,7 @@ namespaces: The `IstioOperator` API allows each component's Kubernetes settings to be customized in a consistent way. -Each component has a [`KubernetesResourceSpec`](/docs/reference/config/istio.operator.v1alpha12.pb/#KubernetesResourcesSpec), +Each component has a [`KubernetesResourceSpec`](/docs/reference/config/istio.operator.v1alpha1/#KubernetesResourcesSpec), which allows the following settings to be changed. Use this list to identify the setting to customize: 1. [Resources](https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#resource-requests-and-limits-of-pod-and-container)