Kubernetes – Introduction / starting point for beginners (Helps to prepare the interview)

Monolithic VS Microservice Based architecture
Monolithic VS Microservice Based architecture

Hi All,

Greetings for the day 🙂 LIFE IS BEAUTIFUL 🙂

Nowadays exploring Dockers and Kubernetes so this is the first article on Kubernetes. Try to explain the concept in easy way

Thanks to one of Knowledge Junction family member @modisanket for discussing in depth and providing the images used in this article

In this article my goal is just to understand first the concept of Kubernetes

Prerequisites for this article:

KUBERNETES – Most trending technology today. The first Cloud Native Cloud Foundation (CNCF) project and donated by Google, Kubernetes is the fastest growing project in the history of open Source software, after Linux.

What is KUBERNETES ?

  • Platform for managing containerized applications, one of the example is – DOCKER Images
  • Kubernetes is open source platform
  • Google open-sourced the Kubernetes project in 2014
  • Definition from kubernetes.io => Kubernetes, also known as K8s, is an open-source system for automating deployment, scaling, and management of containerized applications.

WHY KUBERNETES

  • In one simple line – to manage containers
  • Now what is mean by managing containers ? Lets discuss with simple example – Blog management application

Simple Blog management application :

  • User register on blog site for requesting Author permission so that user can submit the articles / blogs
  • Admin approves the request
  • User submit the article
  • Admin reviews the article, approves it and article get published
  • Admin has access to all Articles / Blogs
  • Respective user has access to all his/her articles and can update and remove those

So if we consider above application we have multiple modules there and require communication in between those

  • User management
  • Admins
  • Article / Blog management
  • Database

If we now go with development of this application with our tradition (monolithic approach) way it should look like as

Monolithic approach for implementing blog management application
Fig : Monolithic approach for implementing blog management application

There are several problems / limitations with this approach :

  • Whole application is tightly coupled because of which if there’s update in one application / module, whole application will be restarted
  • Replacement of module is difficult
  • System upgrade will cause downtime
  • Scaling application will be difficult

If we use microservices based architecture (containers / docker images / applications divided into different independent module which communicates with each other) to implement this application then the above problems can be eliminated

 Fig : Microservice based approach for implementing blog management application
Fig : Microservice based approach for implementing blog management application

  • Each individual application is considered as separate microservice and each service is connected via rest or other frameworks
  • Individual application / module upgrade can be performed and will not impact any downtime (how – we will discuss in upcoming articles)
  • Application / module upgrade can be done without any downtime (how – we will discuss in upcoming articles)
  • We can easily replace any microservice if required as there’s no hard dependency on each other (as they are connected via rest apis)
  • Scalability can be managed automatically (how – we will discuss in upcoming articles)
  • User will have access to UI and API gateway (additional security)
  • Easy to provide Developer console (Swagger – using which users can have access to individual apis)
Fig : Monolithic VS Microservice Based architecture
Fig : Monolithic VS Microservice Based architecture
  • Here different – different applications / microservices we consider as containers or docker images
  • The management of these containers and docker images is done by Kubernetes platform :
    • Kubernetes gives platform to schedule and run containers on clusters of physical or virtual machines
    • Kubernetes controls and automate the deployment of container / contained based applications without downtime
    • Kubernetes manages scaling up / scaling down of the applications / containers on the fly without affecting running applications
    • Health-check and self-heal our applications with auto-placement, auto-restart, auto-replication, and auto-scaling

In nutshell, Kubernetes makes admin team / deployment teams life easy, eases the burden of configuring, deploying, managing, and monitoring even the largest-scale containerized applications

It also helps to manage container lifecycles and related application lifecycles, and issues including high availability and load balancing

In next Kubernetes article we will start exploring in detail Kubernetes concepts

Thanks for reading 🙂 STAY SAFE 🙂 STAY HEALTHY 🙂

Prasham Sabadra

LIFE IS VERY BEAUTIFUL. ENJOY THE WHOLE JOURNEY :) Founder of Microsoft 365 Junction, Speaker, Author, Learner, Developer, Passionate Techie. Certified Professional Workshop Facilitator / Public Speaker. Believe in knowledge sharing. Around 20+ years of total IT experience and 17+ years of experience in SharePoint and Microsoft 365 services Please feel free me to contact for any SharePoint / Microsoft 365 queries. I am also very much interested in behavioral (life changing) sessions like motivational speeches, Success, Goal Setting, About Life, How to live Life etc. My book - Microsoft 365 Power Shell hand book for Administrators and Beginners and 100 Power Shell Interview Questions - https://www.amazon.in/Microsoft-Administrators-Beginners-Interview-Questions/dp/9394901639/ref=tmm_pap_swatch_0?_encoding=UTF8&qid=1679029081&sr=8-11

You may also like...

7 Responses

  1. September 11, 2021

    […] Kubernetes – Introduction / starting point for beginners (Helps to prepare the interview) […]

  2. October 3, 2021

    […] Most viewed / popular articles in previous month –  Kubernetes – Introduction / starting point for beginners (Helps to prepare the –  interview) https://knowledge-junction.com/2021/09/03/kubernetes-introduction-starting-point-for-beginners-helps… […]

  3. March 11, 2022
  4. May 5, 2022
  5. May 28, 2022
  6. June 12, 2022
  7. July 15, 2022

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Discover more from Microsoft 365

Subscribe now to keep reading and get access to the full archive.

Continue reading