Lab 10.1 - Installing and Using Helm Charts
Lab Objectives
By the end of this lab, you will be able to:
- Install Helm.
- Add Helm repositories.
- Search for available Charts.
- Install a Helm Chart.
- Manage Helm releases.
Estimated Duration
45-60 minutes
Prerequisites
- kubectl installed and configured.
- Local Kubernetes cluster running.
- Knowledge of Helm (Chapter 10.1).
Part 1: Installing Helm
Step 1.1: Install Helm
On Linux/Mac:
curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash
On Windows (with Chocolatey):
choco install kubernetes-helm
Verify the installation:
helm version
Part 2: Configuring Repositories
Step 2.1: Add the Stable Helm Repository
Add the official repository:
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo update
Step 2.2: List Repositories
helm repo list
Part 3: Searching for Charts
Step 3.1: Search for Charts
Search for available Charts:
# Search for nginx
helm search repo nginx
# Search for mysql
helm search repo mysql
# Search for wordpress
helm search repo wordpress
Part 4: Installing a Chart
Step 4.1: Install NGINX
Install the NGINX Chart:
helm install my-nginx bitnami/nginx
Verify the installation:
helm list
kubectl get pods
kubectl get services
Step 4.2: Verify Created Resources
# View all created objects
kubectl get all -l app.kubernetes.io/instance=my-nginx
Part 5: Managing Releases
Step 5.1: List Releases
helm list
helm list --all-namespaces
Step 5.2: View Release Details
helm status my-nginx
Step 5.3: View Used Values
helm get values my-nginx
Part 6: Updating and Deleting
Step 6.1: Update a Release
helm upgrade my-nginx bitnami/nginx --set service.type=NodePort
Step 6.2: Delete a Release
helm uninstall my-nginx
Verify that resources are deleted:
kubectl get all -l app.kubernetes.io/instance=my-nginx
Lab Summary
In this lab, you installed Helm, configured repositories, searched for and installed Charts, and managed Helm releases.
Next Steps
The next lab will show you how to customize a Chart with values.yaml.
Lab 10.2: Customization with values.yaml
Lab created on: December 2024