Table of Contents
- Getting Started
- What do I need to start with Kubernetes?
- Which cluster to use?
- What is container orchestration?
- Kubernetes vs. Docker
- Kubernetes vs. Docker Swarm
- Kubernetes Architecture
- Kubernetes Resources
- Labels and Selectors
- Annotations
- Working with Pods
- Managing Pods with ReplicaSets
- Creating Deployments
- Accessing and exposing Pods with Services
- Exposing multiple applications with Ingress
- Organizing applications with Namespaces
- Jobs and CronJobs
- Configuration
- Configuring applications through arguments
- Creating and using ConfigMaps
- Storing Secrets in Kubernetes
- Stateful Workloads
- What are Volumes?
- Persisting data with Persistent Volumes and Claims
- Running stateful workloads with StatefulSets
- Organizing containers
- Init containers
- Sidecar container pattern
- Adapter container pattern
- Ambassador container pattern
- Application Health
- Application Liveness probe
- Application Readiness probe
- Application Startup probe
- Security in Kubernetes
- What are service accounts?
- Using Role Based Access Control (RBAC)
- Security contexts
- Pod security policies
- Network policies
- Scaling and resources
- Scaling and autoscaling pods
- Resource requests and limits
- Horizontal scaling
- Resource quotas
- Using affinity, taints, and tolerations
- Extending Kubernetes
- Using custom resource definitions (CRDs)
- Writing Kubernetes Operators
- Practical Kubernetes
- Using an Ingress controller for SSL termination