Working with Helm Charts

This guide shows you how to log in to the chart registry, find the Axual Streaming and Governance chart versions, inspect a single chart, install one directly, and verify the release. For details on Helm itself, refer to the official Helm documentation.

Type

How-to guide

Goal

Obtain, inspect and install an Axual Helm chart from a terminal.

Audience

Platform Operator with credentials for the Axual chart registry and helm access to the target cluster.

When to use

Use this guide when you need a chart’s values, templates or version list, or when installing a chart by hand outside the deployment pipeline.

Prerequisites

Before running any command in this guide, have the following in place:

  • helm >= 3.12 on your workstation, verified with helm version.

  • kubectl configured against the target cluster, verified with kubectl cluster-info.

  • Credentials for the Axual chart registry, registry.axual.io. Contact Axual support if you do not have them.

  • The namespace you intend to install into, which must already exist.

Log in to the chart registry

The Axual Helm charts are OCI artifacts in the Axual Harbor registry under oci://registry.axual.io/axual-charts, and pulling them requires a login. Every command below names a chart by its full oci:// reference, so OCI registries need no helm repo add or helm repo update.

Replace every <VALUE> placeholder with your own value before running a command.
helm registry login registry.axual.io --username <USERNAME>

Helm prompts for the password and prints Login Succeeded.

Find the Axual Streaming and Governance chart versions

The axual-streaming and axual-governance charts install the Axual platform, each bundling the component charts of its layer. Helm can’t search an OCI registry, so helm search repo doesn’t list their versions.

Match chart versions to an Axual release

Each Axual release ships one version of each chart. The Helm Charts versions table in the release notes lists them.

Show the highest chart version

Without --version, helm show chart asks the registry for the highest version and prints its metadata. It queries the registry each time it runs, so no refresh step comes first:

helm show chart oci://registry.axual.io/axual-charts/axual-streaming
helm show chart oci://registry.axual.io/axual-charts/axual-governance

version is the chart version and appVersion is the Axual release it belongs to. The dependencies list holds the component chart versions the chart installs, shown here for axual-streaming:

Pulled: registry.axual.io/axual-charts/axual-streaming:3.0.0
Digest: sha256:05399a2f447dfe77879726a5dae0e06a507c771fb1f6e3013fe199dfa70ccfdf
apiVersion: v2
appVersion: '"2026.3"'
dependencies:
- condition: global.kafka.enabled
  name: kafka
  repository: ""
  version: 0.2.0
- condition: global.rest-proxy.enabled
  name: rest-proxy
  repository: oci://registry.axual.io/axual-charts
  version: 1.18.0
- condition: global.apicurio-registry-v3.enabled
  name: apicurio-registry-v3
  repository: oci://registry.axual.io/axual-charts
  version: 0.2.0
description: Axual Streaming charts which install all Axual components defining the
  streaming layer
...
name: axual-streaming
...
type: application
version: 3.0.0

Show a specific chart version

Add --version to see what an earlier or planned chart version installs, for example before an upgrade:

helm show chart oci://registry.axual.io/axual-charts/axual-governance --version <CHART_VERSION>

List every published version

Log in to Harbor and open the axual-charts project. Open the axual-streaming or axual-governance repository on the Repositories tab to see every published version, one artifact tag per version.

Inspect a single chart

The example below uses the axual-governance chart.

The Helm README and values.yaml of each component chart are synced into the component documentation, for example Api Gateway 0.11.0 Helm Readme.

helm show values prints the default values of a chart version, and helm show readme prints its README:

helm show values oci://registry.axual.io/axual-charts/axual-governance --version <CHART_VERSION>

To inspect values.schema.json or the templated Kubernetes resources as well, download and unpack the chart:

helm pull oci://registry.axual.io/axual-charts/axual-governance --version <CHART_VERSION> --untar

The axual-governance directory then holds every detail of the chart:

ls -l axual-governance/*
-rw-r--r--@ 1 user  staff  13734 Oct  1 17:01 axual-governance/CHANGELOG.md
-rw-r--r--@ 1 user  staff    926 Oct  1 17:01 axual-governance/Chart.lock
-rw-r--r--@ 1 user  staff   1783 Oct  1 17:01 axual-governance/Chart.yaml
-rw-r--r--@ 1 user  staff  23971 Oct  1 17:01 axual-governance/README.md
-rw-r--r--@ 1 user  staff     25 Oct  1 17:01 axual-governance/build.env
-rw-r--r--@ 1 user  staff   5445 Oct  1 17:01 axual-governance/values.schema.json
-rw-r--r--@ 1 user  staff   2093 Oct  1 17:01 axual-governance/values.yaml

axual-governance/charts:
total 0
drwxr-xr-x@  8 user  staff  256 Oct  1 17:01 api-gateway
drwxr-xr-x@ 10 user  staff  320 Oct  1 17:01 keycloakx
drwxr-xr-x@  8 user  staff  256 Oct  1 17:01 metrics-exposer
drwxr-xr-x@ 10 user  staff  320 Oct  1 17:01 mysql
drwxr-xr-x@  8 user  staff  256 Oct  1 17:01 platform-manager
drwxr-xr-x@  7 user  staff  224 Oct  1 17:01 platform-ui
drwxr-xr-x@  8 user  staff  256 Oct  1 17:01 topic-browse
drwxr-xr-x@ 14 user  staff  448 Oct  1 17:01 vault

axual-governance/templates:
total 144
-rw-r--r--@ 1 user  staff    380 Oct  1 17:01 NOTES.txt
-rw-r--r--@ 1 user  staff      0 Oct  1 17:01 _helpers.tpl
-rw-r--r--@ 1 user  staff  65907 Oct  1 17:01 configmap.yaml

From here you can read the README, CHANGELOG.md, Chart.yaml and values.yaml. Each component chart sits unpacked under charts/ with its own values and the templates that construct its Kubernetes resources, such as charts/platform-manager/templates/deployment.yaml.

Install a chart directly

With the chart and a values file in place, helm install deploys it as helm install <INSTALLATION_NAME> -n <NAMESPACE> <CHART> --version <CHART_VERSION> -f <VALUES_FILE>, where each placeholder means:

  • <INSTALLATION_NAME>: the Helm release name you choose, for example governance.

  • <NAMESPACE>: the namespace to install into, for example kafka.

  • <CHART>: the chart’s OCI reference, for example oci://registry.axual.io/axual-charts/axual-governance.

  • <CHART_VERSION>: a chart version from Find the Axual Streaming and Governance chart versions.

  • <VALUES_FILE>: the path to your values file.

Pin --version on every install. Without it Helm installs the highest version in the registry at that moment, so the same command installs a different chart on a different day.

helm install governance -n kafka oci://registry.axual.io/axual-charts/axual-governance --version <CHART_VERSION> -f axual-governance/values.yaml

Helm reports the chart it pulled and the release it created:

Pulled: registry.axual.io/axual-charts/axual-governance:1.6.0
Digest: sha256:cd82e620e93494be6ebf4fe5838f1b26011f665aaf8d8f61bf019af79cae4077
NAME: governance
LAST DEPLOYED: Thu Oct  1 16:50:04 2026
NAMESPACE: kafka
STATUS: deployed
REVISION: 1
DESCRIPTION: Install complete
NOTES:
Thank you for installing Axual Governance!
...

Apply later changes to the values file or the chart with helm upgrade. The Helm diff plugin shows what an upgrade would change before it runs. This matters because the Axual charts template a large number of Kubernetes objects.

For anything beyond a trial, GitOps & CI/CD explains why Axual runs these commands from a pipeline rather than by hand.

Verify the release

Confirm the release exists and reached a deployed state:

helm status <INSTALLATION_NAME> -n <NAMESPACE>

STATUS: deployed means Helm applied every object in the chart. It does not mean the workloads are running, so check the Pods as well:

kubectl get pods -n <NAMESPACE>

Every Pod should reach Running with all containers ready. If a Pod stays Pending, CrashLoopBackOff or ImagePullBackOff, see How to Inspect Kubernetes Workloads.

Report any bug, inconsistency or missing feature in the Axual Helm charts through Support.