Skip to main content
Add annotations and labels to the values file for each Expanse Helm chart. Use the keys recognised by your certificate injector, DNS controller or admission policy. Merge the examples into your existing values for the matching chart, keeping its component enablement and other installation settings. The coverage below is available from these chart versions:

Choose the component

Metadata settings apply to the named component. A setting on one component does not apply to the other workloads in the chart. Configure each component that needs the policy, including optional Jobs and backup workloads. Every map accepts string values. Quote values such as "true" and "007". New maps default to empty. Chart-owned identity labels and generated rollout annotations take precedence on collisions. Customer labels never change workload or Service selectors. When upgrading from the previous chart version with helm upgrade --reuse-values, missing Service metadata maps are treated as empty. You can add annotations and labels during the upgrade without resetting your existing values. The keys under injector.example.com, dns.example.com and customer.example.com below are placeholders. Replace them with your cluster’s keys before installing. These settings attach metadata; your cluster’s controllers determine what happens when those keys are present.

expanse-daemon

For example, set an injector annotation on the adapter and history-import Pods, and a DNS annotation on the webhook Service:
The history Job receives the integration metadata even in a history-only install with integration.enabled: false.

Changing metadata after a history import

A connected helm upgrade preserves the existing history Job’s Pod metadata while applying changed metadata to the adapter. Changing metadata alone never starts another history import. To run the import with new metadata, set a new integration.history.attempt value and keep the import ID. This creates a new Job and runs the import again. Offline renderers, including Argo CD, cannot look up the existing Job. Change integration.history.attempt alongside metadata before syncing an existing history Job. Keeping the attempt unchanged would try to update an immutable Job Pod template.

expanse

In the table, <component> means controlplane, dataplane, intelligence, console, prediction or rightsizer. For example, configure the data-plane Pod and its Service separately:
Changing only an existing walker profiler Job’s Pod metadata requires recreating that Job before upgrading.

expanse-postgres

For example, annotate backup Pods and the client Service:
The client Service settings and headless Service settings are independent.

expanse-clickhouse

The ClickHouse and Keeper maps apply to their Pods, headless Services and other operator-managed resources, including PersistentVolumeClaims. ClickHouse metadata also applies to its version-probe Job. Choose keys suitable for all those resource kinds; these maps are shared across them. For example, apply a policy annotation to both clusters and register the client Service with your DNS controller:
Keep the operator Pod’s existing clickhouse.com/role: operator label when customising operator.manager.pod.labels. NetworkPolicies use that label.

Check the deployed metadata

Render your values with helm template before installing. For ClickHouse and Keeper, the render contains cluster resources; the operator creates their Pods and headless Services after installation. Inspect the actual Pods and Services, including optional workloads, to confirm the annotations and labels are present: