Kubernetes – Architecture – Kishore Reddy

Benefits of Kubernetes

  • Speed of the deployment
  • Ability to absorb the change quicky
  • Ability to recover quickly
  • Hide complexity in Cluster
  • Storage Orchestration
  • Secret and config management
  • Automatic bin packing
  • Self healing
  • Automated roll outs and rollbacks
  • Service discovery and load balancing

How does Kubernetes works ?

Kubernetes supports several base container engines, and Docker is just one of them. The two technologies work great together, since Docker containers are an efficient way to distribute packaged applications, and Kubernetes is designed to coordinate and schedule those applications.

What are the components we have in K8’s Master ?

  • kube-apiserver – It acts as front end control panel, Consumes JSON files and Exposes the REST API’s
  • Clster Store(etcd) – It persistent the storage of cluster state and configuration
  • Controller manager – It’s nothing but controller of controllers like it controls the Node controller, Endpoint controller and Namespace controllers etc..
  • Scheduler – It assigns work to nodes.

What are the components we have in Worker node ?

  • kubelet – It register the node with K8’s cluster, Watches api server for any work, reports back to K8’s master
  • Container Runtime – It pulls the images from docker hub and runs it.
  • kube-proxy – It handles the network traffic and all containers in pod share a single IP

What are the components we have in Workstation ?

Kubernetes has a decentralized architecture that does not handle tasks sequentially. It functions based on a declarative model and implements the concept of a ‘desired state.’