Phase 2 — Intermediate Operations (Days 31–60)
Week 5: Kubernetes — Advanced Workloads & Networking
Topics:
- StatefulSets, DaemonSets, Jobs, CronJobs
- Ingress controllers (NGINX Ingress, Traefik)
- Network policies
- Persistent Volumes, PVCs, StorageClasses
- Helm: install, upgrade, rollback, write your own chart
- Kustomize: base + overlays pattern
Hands-on Labs:
- Deploy a StatefulSet for Postgres with PVC
- Install NGINX Ingress; route traffic to two services by path
- Package the sample app as a Helm chart with
values.yamloverrides - Apply a NetworkPolicy that restricts pod-to-pod traffic
Week 6: Observability — Logs & Metrics
Goal: Follow what's happening in a live system; detect and diagnose issues.
Topics:
- The three pillars: Logs, Metrics, Traces
- Prometheus: scrape configs, PromQL basics, alerting rules
- Grafana: dashboards, data sources, alert notifications
- Node Exporter, kube-state-metrics, cAdvisor
- Log aggregation: Loki + Promtail stack (or EFK: Elasticsearch + Fluentd + Kibana)
kubectl logs --previous,sternfor multi-pod tailing- Distributed tracing concept: OpenTelemetry, Jaeger (overview)
- SLIs, SLOs, error budgets — the language of reliability
Hands-on Labs:
- Deploy kube-prometheus-stack via Helm; import K8s dashboard in Grafana
- Write a PromQL query: CPU usage per pod, memory limits hit
- Set up an alert rule: fire when pod restarts > 3 in 10 minutes
- Deploy Loki + Promtail; search app logs from Grafana
- Instrument the sample app with a
/metricsendpoint (useprom-clientorprometheus_client)
Resources:
- Observability Engineering by Charity Majors, Liz Fong-Jones, George Miranda
- Prometheus docs: prometheus.io/docs
Week 7: CI/CD Pipelines
Goal: Automate build → test → containerize → deploy with no manual steps.
Topics:
- CI/CD concepts: pipeline stages, artifact promotion, environment gates
- GitHub Actions: workflows, jobs, steps, secrets, reusable workflows
- GitLab CI (optional if org uses it):
.gitlab-ci.yml - Pipeline patterns: build on PR, deploy to staging on merge to main, deploy to prod on tag
- Image tagging strategy:
sha,semver,latest(avoidlatestin prod) - GitOps with ArgoCD: App of Apps pattern, sync policies, auto-rollback on drift
- Secret management in pipelines: GitHub Secrets, HashiCorp Vault, AWS Secrets Manager
Hands-on Labs:
- Build a GitHub Actions pipeline: lint → test → docker build/push → deploy to kind
- Add image vulnerability scanning step (trivy); fail on CRITICAL
- Set up ArgoCD; connect it to a GitOps repo; deploy sample app via ArgoCD
- Implement branch-based environment promotion:
dev→staging→prodnamespaces - Store a DB password in Vault or AWS Secrets Manager; inject it via External Secrets Operator
Week 8: Rollback Strategies
Goal: Know exactly how to safely and quickly undo bad deployments.
Topics:
- Kubernetes rollout rollback:
kubectl rollout undo - Deployment history and revision tracking
- Blue/Green deployments
- Canary deployments with Argo Rollouts or Flagger
- Feature flags as a rollback mechanism (LaunchDarkly concept)
- Helm rollback:
helm rollback <release> <revision> - ArgoCD sync rollback: reverting Git commit + ArgoCD sync
- Database migration rollback strategies (Flyway, Liquibase)
- Incident runbooks: define your rollback decision tree
Hands-on Labs:
- Deploy a broken image version; execute
kubectl rollout undo; verify recovery - Install Argo Rollouts; implement a canary: 10% → 50% → 100% traffic shift
- Simulate a bad Helm release; run
helm rollback - Write a 1-page rollback runbook for the sample app