chapter two

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. It started as a project at Google, where it was called Borg, which was later released as an open-source project. Since 2015, a community of developers manages 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.1.3 Interacting with a Kubernetes cluster

2.2 Kubernetes Objects

2.1.4 What are Containers?

2.1.5 Pods

2.1.6 Deployments

2.1.7 Services

2.1.8 Namespaces

2.1.9 Ingress

2.1.10 Volumes

2.1.11 ConfigMaps

2.1.12 Secrets

2.2 Jobs

2.2.1 StatefuleSets

2.2.2 DaemonSets

2.3 Advanced scheduling techniques

2.4 Kubernetes Package Management

2.2.3 Helm

2.2.4 Kustomize

2.5 GitOps

2.6 Summary