CentOS Stream 10: Install Helm on Kubernetes
Step-by-step guide to installing Helm, the Kubernetes package manager, adding repositories, and deploying packages on CentOS Stream 10
Helm is a package manager for Kubernetes that simplifies the deployment and management of applications. This guide covers installing Helm, configuring repositories, and using it to deploy packages on CentOS Stream 10.
Download Helm
Download the latest Helm binary from the official GitHub release page:
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
chmod +x get_helm.sh
./get_helm.sh
Verify Installation
Check the installed Helm version:
helm version
Expected output similar to:
version.BuildInfo{Version:"v3.17.x", GitCommit:"...", GitTreeState:"clean", GoVersion:"go1.24.x"}
Add Repositories
Add the official stable repository and update:
helm repo add stable https://charts.helm.sh/stable
helm repo update
Search for available charts:
helm search repo stable
Install a Package
Example: installing the NGINX Ingress Controller using Helm:
helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
helm repo update
helm install ingress-nginx ingress-nginx/ingress-controller
Manage Releases
List installed Helm releases:
helm list
Upgrade a release:
helm upgrade ingress-nginx ingress-nginx/ingress-controller
Uninstall a release:
helm uninstall ingress-nginx
Helm Chart Structure
A Helm chart has the following directory structure:
mychart/
├── Chart.yaml # Chart metadata
├── values.yaml # Default configuration values
├── templates/ # Kubernetes manifest templates
│ ├── deployment.yaml
│ ├── service.yaml
│ └── _helpers.tpl # Template helpers
└── charts/ # Sub-chart dependencies
Create a Chart
Create a new chart from scratch:
helm create mychart
Package a chart for distribution:
helm package mychart
Add a Repository from a Chart Museum
If you have a private chart repository:
helm repo add myrepo https://charts.example.com
helm repo update
helm install myapp myrepo/myapp
Conclusion
Helm streamlines Kubernetes application management. With Helm, you can define, install, and upgrade even the most complex Kubernetes applications using reusable chart packages.