Cloud Native 8 min read

Comprehensive Overview of Kubernetes (K8S) Architecture and Core Components

This article provides a detailed introduction to Kubernetes (K8S), explaining its four main problem areas, the master‑node architecture, key master and node components, networking modules, and the relationship between K8S and Docker, while also offering additional resource links.

Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Comprehensive Overview of Kubernetes (K8S) Architecture and Core Components

Kubernetes (K8S) Overview

Kubernetes, abbreviated as K8S, is a container orchestration platform originally developed by Google and now maintained by the Cloud Native Computing Foundation (CNCF).

K8S primarily addresses four major challenges:

1. Container Orchestration – After containers are deployed (e.g., with Docker), they need to be orchestrated; K8S provides a powerful, flexible platform for deploying, scaling, and managing containerized applications.

2. Container Management – K8S schedules and manages the lifecycle of container instances, handling creation, start, monitoring, restart, and termination.

3. Automated Deployment – K8S can automatically deploy and scale applications, adjusting the number of container instances based on workload demands.

4. High Availability and Fault Tolerance – K8S ensures application availability by automatically rescheduling containers when node or container failures occur.

K8S Architecture

The architecture consists of a master node (control plane) and worker nodes (nodes).

Master Components

The master components form the control plane, acting as the "brain" of the cluster.

kube-apiserver – The front‑end API server that serves as the single entry point for all components and users, providing RESTful APIs and handling authentication, authorization, and admission control.

etcd – A distributed, consistent key‑value store (similar to Redis) used to persist cluster configuration, state, and metadata.

kube-scheduler – Assigns newly created Pods to appropriate nodes based on resource availability and load.

kube-controller-manager – Runs various controllers (e.g., ReplicaSet, Deployment, StatefulSet) that monitor cluster state and ensure the desired state is maintained.

Node Components

Worker nodes execute the instructions from the master.

kubelet – Manages Pods and containers on the node, communicating with the master and handling creation, start, monitoring, and termination of Pods.

kube-proxy – Implements Service load balancing and proxying, maintaining network and iptables rules.

Container Runtime – Executes containers (e.g., Docker, containerd, cri‑o).

Networking Components

Pod network plugins assign IP addresses to Pods and enable intra‑Pod and Pod‑to‑external communication.

Cluster network components allocate IPs to nodes and facilitate node‑to‑node communication.

K8S and Docker Relationship

Docker provides a platform for building, packaging, and running containerized applications, while K8S is a container orchestration system that automates deployment, scaling, and management of those containers.

K8S supports multiple container runtimes (Docker, containerd, cri‑o, etc.); Docker is often the default runtime but not a strict dependency.

K8S Summary

In summary, K8S offers container orchestration and cluster management capabilities, while Docker supplies the container building and runtime features; together they form the foundation of cloud‑native systems.

Additional Resources

For a comprehensive collection of Alibaba architecture topics and a full set of interview questions and answers (Java, multithreading, JVM, Spring, MySQL, Redis, Dubbo, middleware, etc.), follow the public account "mikechen的互联网架构" and reply with the keyword "合集" to receive the materials.

Links:

Alibaba Architecture Advanced Collection (30+ hundred thousand Chinese characters)

Comprehensive Java Interview Questions and Answers Collection

cloud-nativekubernetesK8sContainer OrchestrationMaster-Node Architecture
Mike Chen's Internet Architecture
Written by

Mike Chen's Internet Architecture

Over ten years of BAT architecture experience, shared generously!

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.