Member-only story

Summary of the kubernetes architecture

Xavier Pestel (Xavki)
3 min readNov 3, 2024

Today, I want to dive into Kubernetes architecture. To explore this, let’s follow the flow of a kubectl command. Essentially, a kubectl command is just data sent to a server. We could achieve the same result with a simple curl request or by using a language library (such as Python, Go, or Java).

In this example, we’ll push a deployment to create a pod.

The kube-api-server

Our kubectl client is simply a client for a web server, communicating with the Kubernetes API server (APIServer). The APIServer handles authentication, authorization, and admission control for our requests, ensuring that you have permission to perform the actions you’re attempting.

If all checks pass, the APIServer stores our data in the etcd server.

ETCD database engine

Etcd is a key/value store database.

This database store all datas in the cluster :

  • cluster state
  • node states
  • resource states

But for our request, this is the desirated state. Now the cluster needs to reconcile its with the real state.

Xavier Pestel (Xavki)
Xavier Pestel (Xavki)

Written by Xavier Pestel (Xavki)

Microservices architecture and opensource. I’m maintainer of xavki https://youtube.com/c/xavki-linux about opensource. My blog : https://xavki.blog/

No responses yet

Write a response