1# "_internal_defaults_do_not_set" is a workaround for Helm limitations. Users should NOT set "._internal_defaults_do_not_set" explicitly, but rather directly set the fields internally.
2# For instance, instead of `--set _internal_defaults_do_not_set.foo=bar``, just set `--set foo=bar`.
3image: chainreg.biz/chainguard-private/ztunnel:latest@sha256:f8ec40af509df8dd1ac744f9b426108c368d97f936e35a87de75ccd1c9348599
4_internal_defaults_do_not_set:
5 # Hub to pull from. Image will be `Hub/Image:Tag-Variant`
6 hub: gcr.io/istio-testing
7 # Tag to pull from. Image will be `Hub/Image:Tag-Variant`
9 # Variant to pull. Options are "debug" or "distroless". Unset will use the default for the given version.
11 # Image name to pull from. Image will be `Hub/Image:Tag-Variant`
12 # If Image contains a "/", it will replace the entire `image` in the pod.
14 # Same as `global.network`, but will override it if set.
15 # Network defines the network this cluster belong to. This name
16 # corresponds to the networks in the map of mesh networks.
18 # resourceName, if set, will override the naming of resources. If not set, will default to 'ztunnel'.
19 # If you set this, you MUST also set `trustedZtunnelName` in the `istiod` chart.
21 # Labels to apply to all top level resources
23 # Annotations to apply to all top level resources
25 # Additional volumeMounts to the ztunnel container
27 # Additional volumes to the ztunnel pod
29 # Tolerations for the ztunnel pod
33 - key: CriticalAddonsOnly
37 # Annotations added to each pod. The default annotations are required for scraping prometheus (in most environments).
39 prometheus.io/port: "15020"
40 prometheus.io/scrape: "true"
41 # Additional labels to apply on the pod level
43 # Pod resource configuration
47 # Ztunnel memory scales with the size of the cluster and traffic load
48 # While there are many factors, this is enough for ~200k pod cluster or 100k concurrently open connections.
53 # List of secret names to add to the service account as image pull secrets
55 # A `key: value` mapping of environment variables to add to the pod
57 # Override for the pod imagePullPolicy
59 # Settings for multicluster
61 # The name of the cluster we are installing in. Note this is a user-defined name, which must be consistent
62 # with Istiod configuration.
64 # meshConfig defines runtime configuration of components.
65 # For ztunnel, only defaultConfig is used, but this is nested under `meshConfig` for consistency with other
67 # TODO: https://github.com/istio/istio/issues/43248
72 # 1. how many seconds kube waits for ztunnel pod to gracefully exit before forcibly terminating it (this value)
73 # 2. how many seconds ztunnel waits to drain its own connections (this value - 1 sec)
74 # Default K8S value is 30 seconds
75 terminationGracePeriodSeconds: 30
76 # Revision is set as 'version' label and part of the resource names when installing multiple control planes.
77 # Used to locate the XDS and CA, if caAddress or xdsAddress are not set explicitly.
79 # The customized CA address to retrieve certificates for the pods in the cluster.
80 # CSR clients such as the Istio Agent and ingress gateways can use this to specify the CA endpoint.
82 # The customized XDS address to retrieve configuration.
83 # This should include the port - 15012 for Istiod. TLS will be used with the certificates in "istiod-ca-cert" secret.
84 # By default, it is istiod.istio-system.svc:15012 if revision is not set, or istiod-<revision>.<istioNamespace>.svc:15012
86 # Used to locate the XDS and CA, if caAddress or xdsAddress are not set.
87 istioNamespace: istio-system
88 # Configuration log level of ztunnel binary, default is info.
89 # Valid values are: trace, debug, info, warn, error
91 # To output all logs in json format
93 # Set to `type: RuntimeDefault` to use the default profile if available.
95 # TODO Ambient inpod - for OpenShift, set to the following to get writable sockets in hostmounts to work, eventually consider CSI driver instead
99 # resourceScope controls what resources will be processed by helm.
100 # This is useful when installing Istio on a cluster where some resources need to be owned by a cluster administrator and some can be owned by the mesh administrator.
102 # - all: all resources are processed
103 # - cluster: only cluster-scoped resources are processed
104 # - namespace: only namespace-scoped resources are processed
106 # K8s DaemonSet update strategy.
107 # https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/daemon-set-v1/#DaemonSetSpec).