Kubernetes Series - Part 01
Tags: devops, cloudnative, kubernetes, docker
Published: 2022-02-11 11:50:56

## **_Introduction_**

You all must hear these buzzwords **_Container_**, **_Kubernetes_**, **_DOCKER _** in the world of Cloud!🤪 But we all are confused about what are really all things, especially for beginner’s because there is a lack of tools and services in the world of cloud!😟

Hey folks! My name is **_Muhammad Rafay_** & from today I am starting the series of Kubernetes in which I will try to explain Kubernetes in simple manner and with some hands-on guide like we will setup Master & Worker node on AWS EC2 instance, as well as on local machine. I will also setup MiniKube, Helm and much more things in future upcoming series.

There is lots of confusion between docker & Kubernetes. Might be Kubernetes perform the same operations which docker performs or Kubernetes also creates containers etc.👾

**Let's Go 🚀**

##**_Understanding Kubernetes_**

To understand the k8s first we will understand the logo of **_Docker_**.🤓

![Docker](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gmofi8q9bdt6d8anxlpc.jpg)

Hmm🧐 as we can see it seems like a ship and there are some boxes on it or a so called containers! We all know what containers are.

Now take the logo of **_Kubernetes_**,

![Kubernetes](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/m4slrdpmnrz77cssr713.png)

U all watch the pirates of Caribbean right! 😁 First, compare both logos & try to think there is some connection between them. I hope you all get the point of what I am trying to say. It seems like a ship steering which is used to control the ship Same concept applies between the docker and Kubernetes. Whenever docker is performing operations such as containerization or deployments etc. Here Kubernetes come into picture to control the ship or docker containers. So, we can say that Kubernetes is nothing but in simple words it is just a **_container management tool_**.

let's understand with the example let's say we have to make the two or three images on docker so we will simply make the images i docker but what happens when we need 300 or 1000 containers required to control the application. To overcome this problem k8s helps its auto scale vertically & horizontally that how much container is required or etc. I hope you understand the point we will discuss more in detail.

Lets go into deep dive in the world of K8s.

## **_Kubernetes_**

**Kubernetes ** is an open source container management tool which automates container deployment, container scaling & load balancing.

![](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vjxniz711jo82n3ao6me.png)

### **_Fact_**
Kubernetes is a Greek word also known as k8s this is just a short form of Kubernetes. In 1980 there was the concept of numeronyms so basically it is just the first letter of Kubernetes which is K and the last letter is S and between the first and last letter we count all the alphabets which are 8.  So, according to this concept we call Kubernetes as k8s.

## **_History of K8s_**
Google developed an internal system called Borg to deploy & manage thousands google application & services on their cluster then in 2014, google introduced Kubernetes an open-source open platform written in Golang and then later donated to CNCF.

### **_Online Platform for K8s_**

- Kubernetes playground
- Play with k8s
- Play with Kubernetes classroom 

### **_Cloud based K8s Services_**

- GKE: Google Kubernetes engine 
- AKS: azure Kubernetes service 
- Amazon EKS: Elastic Kubernetes service

### **_K8s installation tools_**

- MiniKube
- Kubeadm

We have to understand what are the problems with the containers.

## **_Problems with container_**

- Containers communicate with each other 
- Autoscaling & load balancing was not possible 
- Container had to be managed carefully

## **_Feature of K8s_**

- Orchestration 
- Auto Scaling 
- Auto-healing 
- Load balancing 
- Platform Independent 
- Fault tolerance (node/pod failure) 
- Roll Back (going back to previous version) 
- Healthy monitoring & Containers 
- Batch execution (one time sequential parallel).

Lets compare between docker swarm and K8s



![](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/uwadvwedp7jz4mgcqysr.png)

### **_High-Level Architecture of K8s_**
Now lets visualize some high level architecture of kubernetes we will understand the architecture in more depth in part 02

 
We all known that Kubernetes follow the **_client – server_** or **_master – slave architecture_**.

Now first create the cluster in k8s. We all know that in k8s clusters are made with two things: the master & worker node. Then inside the node we have the pod. Pod is the smallest unit in Kubernetes. And inside the pod we have the container Kubernetes always coordinate with the pod.

![](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/yrqmbw522ide0uwylge5.png)

lets simplify more this

![](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jq9ydqs5qf49sg4o1yyy.png)

## **_Conclusion_**

In this series, we will introduce the k8s and discuss some basics. In the next part we will discuss & understand the architecture of k8s and all the components of k8s also we will set up the k8s master and worker node in AWS EC2 instance as well as on local computer. 

**_We will cover more topics in part 2. Stay connected 🚀_**