Posts

etcd in Kubernetes: A Quick Guide

Image
  Kubernetes is a complex distributed system that requires a robust and efficient distributed database to function smoothly. This is where etcd comes into play. What is etcd? etcd is the backbone of Kubernetes, acting both as a backend service discovery tool and a key-value database. Often referred to as the  "brain"  of the Kubernetes cluster, etcd is an open-source, strongly consistent, distributed key-value store. But what exactly does that mean? Strong Consistency:  In a distributed system, when an update is made to one node, strong consistency ensures that all other nodes in the cluster are updated immediately. This guarantees that all nodes reflect the same data at any given time. Distributed Nature:  etcd is designed to operate across multiple nodes as a cluster, without compromising on consistency. This distributed architecture ensures that etcd remains highly available and resilient. Key-Value Store:  etcd is a non-relational database that stores d...

Kubernetes API Server Explained

Image
  Kubernetes API Server Explained The  kube-apiserver  is the core component of a Kubernetes cluster, serving as the central hub that exposes the Kubernetes API. It is  designed to be highly scalable , capable of handling a large number of concurrent requests efficiently. End users, and other cluster components, talk to the cluster via the API server. Very rarely monitoring systems and third-party services may talk to API servers to interact with the cluster. So when you use kubectl to manage the cluster, at the backend you are actually communicating with the API server through  HTTP REST APIs . API server uses  gRPC  to talk to the etcd component. All communication between the API server and other components within the cluster is  encrypted using TLS  (Transport Layer Security) to ensure secure access and prevent unauthorized interventions in the cluster's operations. ⚠️ Note : If you're new to Kubernetes, the information below might be chal...