How to Use the helm install Command

June 10, 2021

Introduction

Helm simplifies Kubernetes application deployment by introducing the concept of the helm chart, a package containing YAML files and templates that generate Kubernetes manifest files. Helm acts as a package manager for Kubernetes, offering several useful command-line tools for the Kubernetes application management.

In this tutorial, you will learn how to use helm install, the Helm command for installation of charts in a Kubernetes cluster.

How to Use the helm install Command

Prerequisites

Helm Install Command Syntax

The helm install command is followed by the release name, the path to the chart, and the optional flags:

helm install [release-name] [chart] [flags]

Note: You can give the release any name you want.

Some useful flags are:

--atomicDeletes the installation in case the process fails. The flag also automatically sets the --wait flag.
--create-namespace [string] Creates the namespace for the release if it has not previously existed.
--dependency-updateRuns Helm dependency update before the installation.
--dry-runPerforms a simulation of the installation process for testing purposes.
-g, --generate-nameGenerates a release name. The [release-name] parameter is omitted.
-h, --helpShows the installation help file.
-o, --output formatPrints the output in one of the allowed formats - YAML, JSON, or the table (default).
--set [stringArray]Provides space to set values directly in the command line. Multiple values are allowed.
-f, --values [strings]Takes values from the file or URL the user specifies. Multiple values sources are allowed.
--verifyVerifies the package before its use.
--version [string]Lets the user specify the exact chart version (for example, 1.2.1) or a chart version range (for example, ^2.0.0).
--waitWaits for the system to be in the ready state before marking the release as successful. The waiting time is specified with the --timeout flag (the default value is 5 minutes).

Installing Charts with Helm Install Command

The steps for installing an app with Helm include obtaining a helm chart and issuing the helm install command referencing that chart.

Step 1: Find or Create a Helm Chart

To install a helm chart, you either have to find it online or create a helm chart yourself. You can obtain them in online repositories or the Artifact Hub. For more information about adding Helm repositories, read how to add, update or remove a Helm repo.

Use the helm repo add command to add the helm repository containing the chart you wish to install:

helm repo add [repository-name] [repository-address]

In the example bellow, we add the repo for Jenkins, an open-source automation server:

Adding a helm repository using the helm repo add command.

Update the repositories on your system:

helm repo update
Updating a Helm repository using the helm repo update command.

Use the helm search command to search for the charts in the local repositories:

helm search repo [chart]
Searching a Helm repository for the available charts using the helm search repo command.

Make a note of the chart name and proceed with the following step.

Step 2: Install a Chart with helm install Command

There are multiple ways to use the helm install command for installing a helm chart. The most common is utilizing the chart reference given in the NAME section of the helm search output.

For example, using the syntax explained in the section above, install Jenkins by typing:

helm install jenkins jenkins/jenkins

The chart reference consists of a repository prefix and the chart name. In the example above, Helm searches the repo named jenkins for the chart of the same name before proceeding with the installation.

The output confirms the successful chart deployment:

Deploying a Kubernetes app using the helm install command.

There are more ways to tell Helm where to look for a chart. Aside from a chart reference, you can also provide:

  • The path to a packaged chart:
helm install jenkins ./jenkins-1.2.3.tgz
  • The path to a directory containing an unpacked chart:
helm install jenkins-deployment ./jenkins-archive
  • The absolute URL:
helm install jenkins https://example.com/charts/jenkins-1.2.3.tgz
  • The chart reference and the URL of the repository:
helm install --repo https://example.com/charts/ jenkins-deployment jenkins

Check the Status

To check the status of a release, use the following command:

helm status [release-name]

The output is similar to the output of the helm install command. It provides information on the last deployment time, the namespace of the release, its status, number of revisions, and other applicable details. If the STATUS section of the report says deployed, the release has been successfully deployed and is ready for use.

Conclusion

The steps in this tutorial showed you how to use the helm install command to deploy an app on your Kubernetes cluster. The article also included many useful options for customizing the helm install command.

To learn more about other Helm commands refer to our Helm Commands Cheat Sheet.

Was this article helpful?
YesNo
Marko Aleksic
Marko Aleksić is a Technical Writer at phoenixNAP. His innate curiosity regarding all things IT, combined with over a decade long background in writing, teaching and working in IT-related fields, led him to technical writing, where he has an opportunity to employ his skills and make technology less daunting to everyone.
Next you should read
Helm Commands Cheat Sheet
March 25, 2021

This tutorial will cover all important Helm operations and provide examples to help you understand its syntax and features.
Read more
How To Delete Helm Deployment and Namespace
March 11, 2021

If unwanted or multiple copies of Helm deployments exist, there is a way to delete them and free up space.
Read more
Install Elasticsearch on Kubernetes Using Helm Chart
March 18, 2021

Learn how to utilize a helm chart to install Elasticsearch, the main component of the ELK stack...
Read more
Helm vs Kustomize: Head-to-Head Comparison
May 27, 2021

This article will compare two popular tools that aim to simplify application deployment management.
Read more
  • © 2021 Copyright phoenixNAP | Global IT Services. All Rights Reserved.