In the previous post we’ve looked into Helm Charts which are packaged applications containing all the required declarations, values and dependencies for the package to be successfully deployed into Helm environment.

This time we’ll be working with Helm releases meaning, we’ll finally get to deploying Helm Chart Packages into your Kubernetes data plane.


Helm List

Using the list command you can view Helm Chart Releases which are currently deployed on your Kubernetes host.

More details: helm list cli

List All Releases

helm list --all

List All Releases in Namespace

helm list --all -n [NAMESPACE]

List All Releases in All Namespaces

helm list --all --all-namespaces

List Releases By Status Flag

helm list [STATUS FLAG]

Status Flags

–deployed Shows deployed releases.
–failed Shows failed releases.
–pending Shows pending releases.
–superseded Shows superseded releases.
–uninstalled Shows uninstalled releases.
–uninstalling Shows releases that are being uninstalled.

Helm History

Once you identify Helm Chart Release you can then view its deployment history, including time stamps, statuses and versions amongst other details.

More details: helm history cli

View Release History

helm history [RELEASE NAME]

View Release History in Namespace

helm history [RELEASE NAME] -n [NAMESPACE]

Helm Get

Moving beyond release history, using the get command you can drill deeper into individual release & revision details.

More details: helm get cli

Get Release Details

helm get all [RELEASE NAME]

Get Release Details in Namespace

helm get all [RELEASE NAME] -n [NAMESPACE]

Get Release Details per Revision

helm get all [RELEASE NAME] --revision [REVISION NUMBER]

Helm Status

For a quick snap-shot of a release use the status command.

More details: helm status cli

Show Release Status

helm status [RELEASE NAME]

Show Release Status in Namespace

helm status [RELEASE NAME] -n [NAMESPACE]

Show Release Details per Revision

helm status [RELEASE NAME] --revision [REVISION NUMBER]

Helm Install

In order to deploy a brand new Helm Chart release into Kubernetes you’ll need to use the install command.

More details: helm install cli

Install with Default Values

helm install [RELEASE NAME] [CHART NAME]

Install with Default Values in Namespace

helm install [RELEASE NAME] [CHART NAME] -n [NAMESPACE]

Install with Custom Values as Command Inputs

helm install --set [VARIABLE NAME]=[VALUE NAME] [RELEASE NAME] [CHART NAME]

Install with Custom Values from YAML File

helm install -f [VALUES FILE].yaml [RELEASE NAME] [CHART NAME]

Install Specified Version

helm install --version [VERSION] [RELEASE NAME] [CHART NAME]

Simulate Install (Dry Run Mode)

helm install --dry-run [RELEASE NAME] [CHART NAME]

Rollback on Partial Install

helm install --atomic [RELEASE NAME] [CHART NAME]

[CHART NAME] Variations

repository/chart From Helm Chart Repository.
./chart.tgz From packaged Helm Chart File.
./chart From non packaged Helm Chart Folder.
https://helm.repository.com/chart.tgz From Helm Chart File URL.
–repo https://helm.repository.com/chart From Helm Chart Repository URL.

Helm Upgrade

In order to update an existing release or deploy a brand new Helm Chart release into Kubernetes you’ll need to use the upgrade command. This one is quite useful as it can serve dual purpose of installing and/or upgrading.

More details: helm upgrade cli

Upgrade or Install if not Present

helm upgrade -i [RELEASE NAME] [CHART NAME]

Upgrade with Default Values

helm upgrade [RELEASE NAME] [CHART NAME]

Upgrade with Default Values in Namespace

helm upgrade [RELEASE NAME] [CHART NAME] -n [NAMESPACE]

Upgrade with Custom Values as Command Inputs

helm upgrade --set [VARIABLE NAME]=[VALUE NAME] [RELEASE NAME] [CHART NAME]

Upgrade with Custom Values from YAML File

helm upgrade -f [VALUES FILE].yaml [RELEASE NAME] [CHART NAME]

Upgrade Specified Version

helm upgrade --version [VERSION] [RELEASE NAME] [CHART NAME]

Upgrade with Force Resources Replacement

helm upgrade --force [RELEASE NAME] [CHART NAME]

Simulate Upgrade (Dry Run Mode)

helm upgrade --dry-run [RELEASE NAME] [CHART NAME]

Rollback on Partial Upgrade

helm upgrade --atomic [RELEASE NAME] [CHART NAME]

[CHART NAME] Variations

repository/chart From Helm Chart Repository.
./chart.tgz From packaged Helm Chart File.
./chart From non packaged Helm Chart Folder.
https://helm.repository.com/chart.tgz From Helm Chart File URL.
–repo https://helm.repository.com/chart From Helm Chart Repository URL.

Helm Rollback

In order to rollback an existing release to previous state or revision you’ll need to use the rollback command.

More details: helm rollback cli

Rollback Release to Previous Revision

helm rollback [RELEASE NAME]

Rollback Release to Previous Revision in Namespace

helm rollback [RELEASE NAME] -n [NAMESPACE]

Rollback Release to Specific Revision

helm rollback [RELEASE NAME] [REVISION NUMBER]

Simulate Rollback (Dry Run)

helm rollback --dry-run [RELEASE NAME]

Rollback Release with Pod Recreate

helm rollback --recreate-pods [RELEASE NAME]

Rollback with Cleanup on Failure

helm rollback --cleanup-on-fail [RELEASE NAME]

Helm Uninstall

Finally we got to removing your release completely from Kubernetes cluster. This is achieved with uninstall command.

More details: helm uninstall cli

Uninstall Release

helm uninstall [RELEASE NAME]

Uninstall Release in Namespace

helm uninstall [RELEASE NAME] -n [NAMESPACE]

Simulate uninstall (Dry Run)

helm uninstall --dry-run [RELEASE NAME]

Uninstall Release but Keep History

helm uninstall --keep-history [RELEASE NAME]

<< Helm Charts | Helm Releases | Helm Housekeeping >>

Marcin Narloch

Marcin Narloch

Creative and out-of-the-box thinker with strong interests and knowledge in technology and innovation.
Docker Building Blocks Previous post Helm Housekeeping
Docker Building Blocks Next post Helm Charts

Leave a Reply

Your email address will not be published. Required fields are marked *