DEV Community

Cover image for Kubernetes Series - Part 01
Muhammad Rafay
Muhammad Rafay

Posted on

Kubernetes Series - Part 01

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

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

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.

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

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.

lets simplify more this

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 πŸš€

Top comments (0)