0
0
KubernetesConceptBeginner · 3 min read

What is Helm in Kubernetes: Overview and Usage

Helm is a package manager for Kubernetes that helps you define, install, and upgrade complex applications easily using reusable charts. It simplifies managing Kubernetes resources by packaging them into charts that can be versioned and shared.
⚙️

How It Works

Think of Helm as a smart app store for Kubernetes. Instead of installing apps one by one, Helm lets you package all the parts of an app—like deployments, services, and configurations—into a single bundle called a chart. This chart acts like a recipe that Kubernetes can follow to set up the app correctly.

When you use Helm, you tell it which chart to install and provide any custom settings you want. Helm then talks to Kubernetes and creates all the needed resources in the right order. It also keeps track of what it installed, so you can easily update or remove the app later without hassle.

đź’»

Example

This example shows how to install the popular nginx web server using Helm.

bash
helm repo add bitnami https://charts.bitnami.com/bitnami
helm install my-nginx bitnami/nginx
Output
NAME: my-nginx LAST DEPLOYED: <date and time> NAMESPACE: default STATUS: deployed REVISION: 1 NOTES: 1. Get the application URL by running these commands: export POD_NAME=$(kubectl get pods --namespace default -l "app.kubernetes.io/name=nginx,app.kubernetes.io/instance=my-nginx" -o jsonpath="{.items[0].metadata.name}") kubectl port-forward $POD_NAME 8080:80 2. Access your application at http://127.0.0.1:8080/
🎯

When to Use

Use Helm when you want to manage complex Kubernetes applications easily and consistently. It is especially helpful when deploying apps with many parts or when you need to deploy the same app multiple times with different settings.

Real-world uses include installing databases, monitoring tools, or web servers on Kubernetes clusters. Helm saves time and reduces errors by automating the setup and upgrades of these apps.

âś…

Key Points

  • Helm packages Kubernetes resources into charts for easy sharing and reuse.
  • It automates app installation, upgrades, and rollbacks.
  • Charts can be customized with user settings before deployment.
  • Helm tracks app versions to manage updates safely.
âś…

Key Takeaways

Helm is a package manager that simplifies deploying apps on Kubernetes using charts.
It automates creating, upgrading, and deleting Kubernetes resources for apps.
Charts bundle all app components and configurations into reusable packages.
Helm is ideal for managing complex or repeatable Kubernetes deployments.