Set Sail with Kubernetes

Comprehensive Kubernetes course for beginners.

  • 3 days (can be done in 2 with cutting out some material)
  • 7 hours per day
  • designed for infrastructure engineers / SREs / DevOps teams
  • 25 workshops / guided exercises
  • demos for everything

The course is more technical than feel-good, participants will engage the subjects in a bottom-up approach.

Contents

  • Introduction, objectives, goals/non-goals, problems/solutions
    • Containers recap (extended, if needed)
    • Design concepts and a little historical perspective
    • 12-factor application
    • pets vs. cattle approach
  • Deployment
    • Managed (GKE/EKS) or DIY (VMs on GCE/EC2/bare metal)
    • Tools: kubeadm, kops
    • Control plane variations (managed, self-hosted, static pods, systemd, container, bare binaries)
  • Flyby - introducing concepts before going deep
    • Basic resources such as Node, Pod, Labels / Annotations, Service, Ingress, ReplicaSet, DaemonSet, Deployment, Namespace, ConfigMap, Secret, Stateful Set, Persistent Volume / Persistent Volume Claim, Storage Class, RBAC
    • Components: etcd, kube-apiserver, kube-controller-manager, kube-scheduler, kubelet, kube-proxy, kubectl
    • Network: LAN, Overlay network, Service network
  • Deep Dive - advanced use cases, real life examples, looking under the hood
    • Resources above + more
    • Components above
    • X.509 in practice
  • Advanced topics, buffet style
    • Kustomize / Helm
    • Cluster Autoscaling
    • Security: Authentication, Authorization
    • Monitoring & Logging: Prometheus, AlertManager, Grafana, Elasticsearch, Logstash/Fluentd, Kibana
    • Storage: Cloud, Gluster, Ceph
      • Specific stateful applications: MongoDB, MySQL, Elasticsearch, redis
    • CI/CD: Jenkins, GitLab

Teaching material samples

Feedback