2 Fundamentals of Kubernetes

 

This chapter covers

  • An overview of Kubernetes architecture
  • Exploring the key components and Kubernetes resources
  • Deploying applications in a Kubernetes cluster
  • Packaging application for distribution

Kubernetes (pronounced Koo-buhr-nay-tees) is a platform for managing distributed systems. Its first version was based on an internal project at Google called Borg. Kubernetes implemented Borg’s distributed design principles in Go language. Since 2015, a community of developers has managed Kubernetes under Cloud Native Computing Foundation (CNCF). At its core, Kubernetes is a highly extensible orchestration system for containerized workloads.

2.1 Kubernetes architecture

2.1.1 Kubernetes control plane

2.1.2 Kubernetes data plane

2.2 Kubernetes Objects

2.2.1 What are Containers?

2.2.2 Pods

2.2.3 Deployments

2.2.4 Services

2.2.5 Namespaces

2.2.6 Ingress

2.2.7 Adding storage to Kubernetes workloads

2.2.8 ConfigMaps

2.2.9 Secrets

2.2.10 Jobs

2.2.11 StatefuleSets

2.2.12 DaemonSets

2.3 Kubernetes Package Management

2.3.1 Helm

2.4 Summary