↓Skip to main content

Helm Commands

464 words·
Kubernetes Helm Commands
Table of Contents

Install Helm
#

# Install Helm with script
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 &&
chmod +x get_helm.sh &&
./get_helm.sh
# Verify the installation / check version
helm version

Helm Plugins
#

# Install diff plugin
helm plugin install https://github.com/databus23/helm-diff
# List Helm plugins
helm plugin list

# Shell output:
NAME    VERSION DESCRIPTION
diff    3.15.2  Preview helm upgrade changes as a diff



Helm Commands
#

Helm Repositories
#

# Add Helm repository
helm repo add cilium https://helm.cilium.io/

# Update package index
helm repo update
# List repositories
helm repo list

# Remove repository
helm repo remove repo-alias

List Helm Charts and Values
#

# List available Helm chart versions
helm search repo cilium/cilium --versions
# Save Helm Chart values: Latest version
helm show values cilium/cilium > cilium-values.yaml

# Save Helm Chart values: Specific version
helm show values cilium/cilium --version 1.18.4 > cilium-values-1.18.4.yaml
helm show values oci://docker.io/envoyproxy/gateway-helm --version 1.6.2 > envoy-values-1.6.2.yaml

Install Helm Chart
#

Install / Upgrade
#

# Install / upgrade Helm installation
helm upgrade --install <release-name> <repo-alias>/<chart-name> \
  -n <namespace> \
  -f values.yml \
  --version <version>

# For example
helm upgrade --install vmks victoria-metrics/victoria-metrics-k8s-stack \
  -n victoriametrics-k8s-stack \
  -f victoria-metrics-k8s-stack-values.yml \
  --version 0.55.2
  • release-name Chosen name for the Helm installation within the Kubernetes cluster

  • repo-alias Alias that was defined for the repository

  • chart-name Package you want to install from the repository


Diff / Try-run
#

# Install / upgrade Helm installation: Dry-run / List diff (Needs diff plugin)
helm diff upgrade --install vmks victoria-metrics/victoria-metrics-k8s-stack \
  -n victoriametrics-k8s-stack \
  -f victoria-metrics-k8s-stack-values.yml \
  --version 0.55.2

Helm Login
#

To pull a Helm chart from a private repository like Harbor:

# Login to private Helm repository registry
helm registry login --username 'username' --password <pasyword> harbor.jklug.work/helm-charts

Delete Helm Release
#

# Uninstall package: Current namespace
helm uninstall <release-name>

# Uninstall package: Specific namespace
helm -n <namespace> delete <release-name>

List Installed Helm Releases
#

# List installed Helm releases
helm list -n <namespace-name>

# List installed Helm releases: All namespaces
helm list -A

List Helm Release Status
#

# List Helm release information
helm -n <namespace> status  <release-name>

List Helm Release History
#

# List release information
helm -n <namespace> history <release-name>

Rollback to Release Number
#

# Rollback to release number
helm -n <namespace> rollback <release-name> 16

List Values of Helm Release
#

# List values of deployed Helm release
helm -n <namespace> get values <release-name>

Output Helm Manifest of Helm Release
#

# List resources created by the release
helm -n <namespace> get manifest <release-name>

# List resources created by the release, define revision version
helm -n <namespace> get manifest <release-name> --revision 14



Useful
#

Download and Untar
#

# Download & untar a Helm chart
helm pull repo-alias/chart-name --untar

Ansible Templating
#

Helm Chart Values Raw / end raw:

{% raw %}  {% endraw %}