devops/activities/05-kubernetes-intro-lab.md
2026-01-01 00:00:00 +00:00

68 lines
2.8 KiB
Markdown

---
id: act-05-kubernetes-intro-lab
title: Kubernetes Intro - Lab
mode: lab
open_at: 2026-02-01T00:00:00+01:00
close_at: 2026-12-31T23:59:59+01:00
retakes_enabled: true
max_attempts: 999
grade_max: 100
---
## T1
Type: short
Points: 10
Prompt: Write the kubectl command that lists the nodes in the current cluster.
Refs:
- mat-06-kubernetes-intro#verify-cluster-with-kubectl-get-nodes
Answer: kubectl get nodes
## T2
Type: folder
Points: 35
Prompt: Create folder @solutions/kubernetes-intro/lab/manifests containing pod.yaml and deployment.yaml that express desired state for a simple app (image, ports, and replicas) using the Pod and Deployment nesting described.
Refs:
- mat-06-kubernetes-intro#object-nesting-containers-pods-deployments
- mat-06-kubernetes-intro#desired-state-observed-state-and-reconciliation
Rubric:
- Folder exists at the required path and contains exactly pod.yaml and deployment.yaml. (5)
- pod.yaml is a valid Pod manifest that runs a container image and exposes at least one container port. (15)
- deployment.yaml is a valid Deployment manifest that references a Pod template and sets replicas. (15)
## T3
Type: file
Points: 25
Prompt: Create file @solutions/kubernetes-intro/lab/kubeconfig_notes.md explaining (a) what kubectl does on every command and (b) the purpose of clusters, users, contexts, and current-context in kubeconfig.
Refs:
- mat-06-kubernetes-intro#what-kubectl-does-per-command
- mat-06-kubernetes-intro#kubeconfig-structure-clusters-users-contexts-current-context
Rubric:
- Correctly explains the three kubectl steps (REST request, target cluster via current context, credentials via current context). (10)
- Correctly explains clusters, users, contexts, and current-context and how they relate. (10)
- Writing is clear, structured with headings/bullets, and uses accurate terminology from the material. (5)
## T4
Type: mcq
Points: 15
Prompt: In Docker Desktop, which Kubernetes option is emphasized as necessary to create a multi-node cluster (not single-node)?
Refs:
- mat-06-kubernetes-intro#deploy-docker-desktop-built-in-multi-node-cluster
Choices:
- [x] kind (sign-in required)
- [ ] kubeadm
- [ ] minikube
- [ ] k3s
## T5
Type: essay
Points: 15
Prompt: In 6-8 sentences, explain why Kubernetes Services are needed for stable networking to Pods, and name at least two events that cause Pod IP churn.
Refs:
- mat-06-kubernetes-intro#services-and-stable-networking
- mat-06-kubernetes-intro#pod-lifecycle
- mat-06-kubernetes-intro#pods-as-the-unit-of-scaling
Rubric:
- Explains why clients cannot reliably connect to individual Pods and connects this to Pod mortality/IP churn. (7)
- Names at least two sources of churn (failures, rollouts, scale up, scale down) and explains them. (5)
- Describes the Service front end (stable name/IP/port) and back end (labels + healthy Pods + load balancing). (3)