Assignment 1: Install an app from a public chart
Goal: install, configure, upgrade, and roll back a real application on the lab cluster using a community Helm chart — exercising the full release lifecycle.
Where: from the Jumpbox (where helm and the cluster kubeconfig are ready), targeting the live Kubernetes cluster. Use your own namespace so you don't collide with others.
Tasks
- Add a public chart repository (e.g. Bitnami) and update your local cache. Search it for a simple app (nginx is fine).
- Preview first: render the chart with
helm template(or--dry-run) into a file and skim the manifests it would create. - Install it as a named release into your own namespace (
--create-namespace). Confirm the Pods/Service exist and are Ready withkubectl. - Provide overrides via a values file you keep in Git (Module 4): set the replica count to 2 and the service type to
ClusterIP. Upgrade the release to apply them. - Make a deliberately bad upgrade (e.g. a non-existent image tag) with
--atomicand observe that Helm rolls it back. Then inspecthelm historyand confirm which revision is live. - Roll back to your first good revision explicitly, then
helm uninstalland confirm the namespace's objects are gone.
Deliverable
A short markdown note containing: the commands you ran, your values file, trimmed output showing the release at each stage (installed → upgraded → failed upgrade auto-rolled-back → rolled back → uninstalled), and one sentence on what --atomic did.
Acceptance criteria — you're done when:
-
helm list -n <your-ns>showed your release asdeployedafter install, andkubectl get allshowed Ready Pods. - Your overrides came from a values file (not only
--set), and you can show the replica count changed afterhelm upgrade. - You captured a failed
--atomicupgrade and showed (viahelm history) that the live revision did not become the broken one. - You performed an explicit
helm rollbackto a chosen revision and confirmed it withhelm history. - After
helm uninstall,kubectl get all -n <your-ns>shows the app's objects are gone. - Every claim is backed by command output a grader could reproduce.
Hints
helm repo add/update/search,helm template,helm install --create-namespace,helm upgrade --atomic --timeout,helm history,helm rollback,helm uninstall.- Always
helm templatebefore you install — read it like a diff. - Blocked for >~30 min after re-reading the lessons? Bring what you've tried (commands + output) to your mentor.
No comments to display
No comments to display