Introduction: What is Helm?
Imagine if you had a package manager for Kubernetes, just like apt
or yum
for Linux. That’s Helm. Helm helps you manage Kubernetes applications — think of it as the Yum/Apt for Kubernetes.
With Helm, you don’t have to manually write all the YAML manifests. Instead, you use or create a Chart (a packaged app), and Helm will take care of the rest.
Why Use Helm?
- 💡 Simplifies complex deployments
- ⚙️ Helps manage versions and rollbacks
- 🔁 Enables reproducible builds and upgrades
- 📦 Reuses templates to avoid duplication
How Helm Works
Helm uses:
- Charts: Packages of pre-configured Kubernetes resources
- Releases: A running instance of a chart on the cluster
Installing Helm
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
Or use your package manager:
sudo apt install helm # Ubuntu/Debian
brew install helm # macOS
Using Helm: A Quick Example
Install a chart from Bitnami repo:
helm repo add bitnami https://charts.bitnami.com/bitnami
helm install my-mariadb bitnami/mariadb
Uninstall:
helm uninstall my-mariadb
Upgrade with custom values:
helm upgrade my-mariadb bitnami/mariadb -f my-values.yaml
Essential Helm Commands
Command | Description |
---|---|
helm repo add | Add a chart repository |
helm search repo | Search charts in a repo |
helm install | Install a chart |
helm upgrade | Upgrade a release |
helm uninstall | Remove a release |
helm list | List all installed releases |
helm get values | Show current values |
helm template | Render chart templates locally |
Conclusion
Helm is a powerful tool that saves you from Kubernetes YAML hell. Once you get used to it, deploying apps becomes faster, cleaner, and easier to manage. Try it out with a public chart or start building your own!
You might also find these articles helpful:
- Kubectl Tricks: Boost Your Kubernetes Productivity — speed up your Kubernetes workflow with useful CLI commands.
- Helm vs Kustomize: Which to Choose for Kubernetes Configuration Management — a comparison of two popular tools.