- Introduction
- Source Code and PDFs
- CKA Test Prep
- Why Is Kubernetes So Hot Right Now?
- Containers vs. Virtual Machines
- What Is Docker?
- What Is Kubernetes?
- Understanding Kubernetes in the Cloud Ecosystem
- Getting Started With the GCP
- Setting Up A GCP Account
- Using The Cloud Shell
- An end-to-end example: Kubernetes on the GKE
- How Kubernetes Works
- The Role of the Master Node
- Nodes, Kube-proxy, Kubelet
- What Is A Pod?
- Lab:Creating pods imperatively
- Where Do Pods Run?
- Can Pods Have Multiple Containers?
- Lab:Multi-container Pods
- How Do Master Nodes Communicate?
- Where Can We Run Kubernetes?
- Kubernetes for a Hybrid Multi-cloud World
- Cloud Controllers
- Interacting with Kubernetes
- The Architecture of Kubernetes
- Lab:Creating pods declaratively
- Imperative or Declarative?
- How Declarative Files are Applied
- The Pros and Cons of Declarative and Imperative Object Management
- Names and UIDs
- Namespaces
- Labels
- Label Selectors Loose Coupling
- Annotations
- Lab:Deletion of pods
- Lab:Editing the configuration information of the deployment
- Lab: Scaling The Number of Pods using Deployments
- Volumes
- Lab:Volumes and the emptydir volume
- Types Of Volumes
- Persistent_Volumes
- Cloud Specific Persistent Volumes
- Lab:Persistent Volumes
- Secrets, ConfigMaps and Other Volume Types
- Lab:Use of secrets pass information to pods
- Lab:Create secrets directly from files
- Lab: ConfigMaps
- Volumes
- Containers in a Pod
- Lab:kubectl apply
- What Environment Do Containers See?
- Lab:Setting Environment Variables in Containers
- Lab:Downward API Passing information from pod to container
- How Can Containers React To Lifecycle Events?
- Lab:Handling Container Lifecycle Events
- Pod Node Matching
- Lab:Associating Pods with Nodes using nodeSelector
- Taints
- Lab:kubectl_taint
- Lab:Tolerations
- Init Containers
- Lab:Init containers Setting up the state of the pods
- Pod Lifecycle
- Container Probes
- Lab:Use of Liveness and Readiness Probes
- Lab:Liveness probes Using HTTP and TCP
- Pod Presets
- Pod Priorities
- Containers
- Introducing Controllers
- What Are ReplicaSets?
- Lab:ReplicaSet object
- Working with ReplicaSets
- Lab:Deleting a ReplicaSet and its associated pods
- Lab:Deleting a ReplicaSet but not the associated pods
- ReplicaSets and Loose Coupling
- Horizontal Pod Autoscalers
- Lab:Loose coupling between ReplicaSet object and the pods
- Lab:Scaling a ReplicaSet object
- Replication Controllers
- Lab:Replication controller
- Lab:Deleting a replication controller and the associated pods
- Lab:Deleting a replication controller but not its pods
- Lab:Loose coupling between replication controller and its pods
- Deployments
- When Use Deployments
- Creating a Deployment
- Lab:kubectl run Create deployments imperatively
- Lab:YAML files for Deployment objects
- Rolling Back Deployment