Kubernetes

Kubernetes for K8S for short is a container orchestration tool which was developed by Google and made open-source in 2014. It helps you manage containerized applications in different deployment environments like physical machine or VM.

Why container orchestration?

Traditionally the applications used to be monolith, i.e. self-contained and independent from other applications. Monolith architecture had some drawbacks like scalability, lack of flexibility and barrier to adoption for new technologies. These issues get addressed in micro-service architecture. A monolith application is broken down to multiple micro-services which can talk to each-other. Micro services get packaged as container which is nothing but a standard unit of software that packages up code and all its dependencies so the application runs quickly. Now there a demand for a proper way of managing those hundreds of containers.

Features

K8S Architecture

A Kubernetes cluster is a set of Master and Worker machines. The worker machines (known as Nodes) does that actual work and runs the containerized applications. The master manages the cluster and provides API that is used to configure and manage resources in the cluster. Both master and worker nodes run multiple process, we’re going to discuss the important once.

Untitled

Worker Processes

Master Processes

K8S Components: