Helm Chart Installation and Uninstall¶
Helm Chart Installation and Uninstall refers to the fundamental operations of deploying a packaged application (a Chart) to a Kubernetes cluster and subsequently removing it. These operations manage the lifecycle of a Helm release, which includes the deployment of defined resources such as Deployments, Services, and Ingresses.^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md]
Installation Workflow¶
To install a Helm chart, the repository hosting the chart must first be added to the local Helm configuration.^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md] Following this, the helm install command is used to deploy the chart.
A standard installation process involves two steps^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md]:
- Add Repository:
helm repo add kubernetes-dashboard https://kubernetes.github.io/dashboard/ - Install Chart:
helm install kubernetes-dashboard/kubernetes-dashboard --name my-release
The --name flag is used to assign a specific release name (e.g., my-release); if omitted, a name may be auto-generated.^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md]
Configuration¶
During installation, the chart can be configured to match specific environment requirements using parameters.^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md]
There are two primary methods to pass these configuration values to the helm install command:
- Command-line arguments: Using the
--setflag to define key-value pairs (e.g.,--set=service.externalPort=8080).^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md] - YAML Files: Using the
-fflag to specify a custom values file (e.g.,-f values.yaml).^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md]
Configuration parameters typically control settings such as image tags, replica counts, service types, and resource limits.^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md]
Uninstallation¶
To remove a release and its associated resources from the cluster, the helm delete command is used^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md].
The command requires the release name as an argument^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md]:
helm delete my-release
Executing this command removes all Kubernetes components associated with the release, including pods, services, and other resources created by the chart^[400-devops__06-Kubernetes__devops-helm__terraform-helm__helm__README.md].