
Top ten Helm commands for Site Reliability Engineers.
1. helm install
: Installs a chart in a Kubernetes cluster.
Example: Install the stable/nginx-ingress chart with the release name nginx-ingress
:
$ helm install nginx-ingress stable/nginx-ingress
Output:
NAME: nginx-ingress
LAST DEPLOYED: Thu Aug 19 10:31:17 2021
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
The NGINX Ingress Controller has been installed.
2. helm upgrade
: Upgrades a release to a new version.
Example: Upgrade the nginx-ingress
release to the latest version:
$ helm upgrade nginx-ingress stable/nginx-ingress
Output:
Release "nginx-ingress" has been upgraded. Happy Helming!
LAST DEPLOYED: Thu Aug 19 10:33:50 2021
NAMESPACE: default
STATUS: deployed
REVISION: 2
TEST SUITE: None
3. helm rollback
: Rolls back a release to a previous version.
Example: Roll back the nginx-ingress
release to the previous version:
$ helm rollback nginx-ingress 1
Output:
Rollback was a success! Happy Helming!
4. helm list
: Lists all releases in a Kubernetes cluster.
Example: List all releases in the Kubernetes cluster:
$ helm list
Output:
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION
nginx-ingress default 2 2021-08-19 10:33:50.668202851 -0400 EDT deployed nginx-ingress-1.41.3 1.19.0
5. helm delete
: Deletes a release from a Kubernetes cluster.
Example: Delete the nginx-ingress
release:
$ helm delete nginx-ingress
Output:
release "nginx-ingress" uninstalled
6. helm package
: Packages a chart into a versioned archive.
Example: Package the nginx-ingress
chart into a versioned archive:
$ helm package stable/nginx-ingress
Output:
Successfully packaged chart and saved it to: /home/user/nginx-ingress-1.41.3.tgz
7. helm repo add
: Adds a chart repository to Helm.
Example: Add the stable repository to Helm:
$ helm repo add stable https://charts.helm.sh/stable
Output:
"stable" has been added to your repositories
8. helm repo update
: Updates the local cache of a chart repository.
Example: Update the local cache of the stable repository:
$ helm repo update
Output:
Hang tight while we grab the latest from your chart repositories...
...Skip local chart repository
...Successfully got an update from the "stable" chart repository
Update Complete. ⎈Happy Helming!⎈
9. helm lint
: Lints a chart for errors.
Example: Lint the nginx-ingress
chart:
$ helm lint stable/nginx-ingress
Output:
==> Linting stable/nginx-ingress
[INFO] Chart.yaml: icon is recommended
1 chart(s) linted, no failures
10. helm template
: Renders a chart as Kubernetes manifests.
Example: Render the nginx-ingress
chart as Kubernetes manifests:
$ helm template nginx-ingress stable/nginx-ingress > nginx-ingress.yaml
Output: This command will generate a YAML file containing the Kubernetes manifests for the nginx-ingress
release. The output will be saved to a file named nginx-ingress.yaml
. You can then use this file to apply the manifests to a Kubernetes cluster using kubectl apply -f
. Note that this command does not install the chart in the cluster, but only renders the manifests.