Customize the Helm Chart
You can customize the Redpanda Helm chart to configure the cluster and the Kubernetes components that the chart deploys.
To customize the Redpanda Helm chart, you can override the default values in your own YAML file with the --values
option or in the command line with the --set
option.
Helm does a three-way merge with the following:
-
Your overrides
-
The values in the existing release
-
The default values in the new release (if you’re upgrading with
helm upgrade
)
To see what options you can override in the chart, use the helm show values
command:
helm repo add redpanda https://charts.redpanda.com
helm repo update
helm show values redpanda/redpanda
-
--values
-
--set
The --values
option allows you to keep your overrides in one or more YAML files.
If you provide multiple files to this option and you override the same values in two or more of them, the rightmost file takes precedence.
For example, you might override the storage.persistentVolume.storageClass
configuration in a file called storage-class.yaml
:
storage-class.yaml
storage:
persistentVolume:
storageClass: "my-storage-class"
The helm
command to apply this configuration override looks something like the following:
helm upgrade --install redpanda redpanda/redpanda \
--namespace redpanda --create-namespace \
--values storage-class.yaml --reuse-values
The values in your YAML files override their counterparts in the Helm chart’s values.yaml
file. Any values that weren’t overridden keep their defaults.
Use the --reuse-values
flag to apply your overrides on top of existing overrides that you’ve already made. Don’t include this flag if you’re upgrading to a new version of the Helm chart. If you’re upgrading to a new version of the Helm chart, this flag prevents any values in the new release from being applied.
If you’re upgrading and you already have Redpanda Console installed, set console.enabled
to false
to stop Helm from trying to deploy it again.
The --set
option allows you to specify configuration overrides in the command line.
For example, you might override the storage.persistentVolume.storageClass
configuration like so:
helm upgrade --install redpanda redpanda/redpanda \
--namespace redpanda --create-namespace \
--set storage.persistentVolume.storageClass=my-storage-class
For more details, see the Helm documentation.
The values in the --set
options override their counterparts in the Helm chart’s values.yaml
file. Any values that weren’t overridden keep their defaults.
Configure Redpanda Console
Redpanda Console is included as a subchart in the Redpanda Helm chart.
You can configure Redpanda Console in the console.config
object of the chart using the Redpanda Console configuration values.
For example, to enable the admin API for Redpanda Console:
-
--values
-
--set
console-enable-admin-api.yaml
console:
enabled: true
config:
console:
redpanda:
adminApi:
enabled: true
urls:
- http://redpanda-0.redpanda.redpanda.svc.cluster.local.:9644
helm upgrade --install redpanda redpanda/redpanda \
--namespace redpanda --create-namespace \
--values console-enable-admin-api.yaml --reuse-values
helm upgrade --install redpanda redpanda/redpanda \
--namespace redpanda --create-namespace \
--set console.console.config.redpanda.adminApi.enabled=true \
--set console.console.config.redpanda.adminApi.urls={"http://redpanda-0.redpanda.redpanda.svc.cluster.local.:9644"}
If you want to use the separate Redpanda Console Helm chart, disable Redpanda Console in the Redpanda Helm chart with console.enabled=false
.
To see what options you can override in the Redpanda Console chart, use the helm show values
command:
helm repo add redpanda https://charts.redpanda.com
helm repo update
helm show values redpanda/console
For default values and documentation for configuration options, see the values.yaml
file.
Suggested reading
For more details, see the Helm documentation.