Basics of Kubernetes – A container orchestration platform

In simple words, Kubernetes is an open source system for managing, deploying and scaling containerized applications. It was initially built by Google and later donated to CNCF (Cloud Native Computing Foundation). Kubernetes or k8s has it’s origin from Greek meaning “helmsman” or “sailing master”. Kubernetes software is an orchestration layer that can manage many server computers and run innumerable programs on those. Here we are just seeing the basics of kubernetes.

Components of Kubernetes

The main component of Kubernetes is cluster. A cluster consists of many physical or virtual machines which act as master or node. Master is the access point which interacts and administers other clusters. A cluster has a minimum of one master. A node is a machine on which k8s is installed. Since a cluster consists of a set of nodes, thus if one node fails, the application still remains accessible from other nodes. Pod is the smallest unit which a k8s deploys. Containers within a pod communicate with each other through localhost. A pod remains active as long as the node is running. Both the master and the node are composed of different components.

Basics of Kubernetes

As mentioned earlier, K8s has a master and a node. Both these master and node can be further broken down into different components.

Components of Master Node

A master node consists of : API Server, Controller Manager, ETCD & Scheduler.

  • API Servers allow applications to communicate with each other.
  • Controller Manager is that component which runs controllers. Each controller runs as separate processes. But they are compiled and run as a single unit. Another type is the cloud controller manager which interacts with the cloud providers.
  • Etcd can be defined as a distributive, reliable value storage for the most critical data in the distributed system. Hence Kubernetes uses etcd for it’s data storage.
  • Scheduler is responsible for controlling performance, availability and capacity through various policies.

Components of Node:

  • Node components keep running on every node. Some of them are: Docker, Runtime, Kubelet & Proxy service.
  • Put simply, a docker helps in running the containers through an environment.
  • Container runtime is the underlying software which helps in executing the containers.
  • Kubelet is responsible for ensuring proper functioning of the containers on the nodes. It only manages containers created by Kubernetes.
  • Proxy Service or Kube-proxy maintains network rules and helps in pod communication.

Benefits of Kubernetes

Kubernetes provides platform to schedule and run containers through clusters either on physical or virtual machines. The different patterns by k8s help to develop cloud-native apps. Not only is it’s use restricted to development, but also self-healing of the apps. A developer needs patterns which are the tools for building container-based applications & services. It can regulate containers across multiple hosts. Besides, it evenly spreads application software across a host infrastructure. After adding a new host, K8s automatically leverages additional resources.

Kubernetes has grown and has been tremendously beneficial in it’s first five years of growth. Once the basics of kubernetes and it’s adjoining environment is understood and adopted properly, it can yield much more results in the coming days. Furthermore, with the help of available cluster explorer, teams can have customized dashboard. It will also help in analysis of applications’ performance. Nowadays, companies have started deploying container instances. Thus, importance of kubernetes will roll out more and more.

Facebooktwitterredditpinterestlinkedin

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top