SlideShare ist ein Scribd-Unternehmen logo
1 von 25
Kubernetes
Rajiv Vishwkarma
Agenda
• History
• What is Kubernetes
• Why Kubernetes
• Architecture
• Architecture Components
• Kubelet
• Kubectl
• KubeADM
• kubefed
• Minikube
• Helm
• Rancher
• Learning and Practice
Kubernetes ( K8S )
• Google developed an internal system called BORG then they have changed its name OMEGA to deploy
and manage 1000 google applications.
• 2014 it became Open-Source and donated it to CNCF (Cloud Native Computing Foundation).
• brings K8s very First.
• Then adopted by Azure.
• AWS brings K8S very later.
What Is Kubernetes?
Project 7 - Google
• Kubernetes is an open-source container orchestration platform
• it automates
• Container Deployment,
• Container Scaling.
• Load balancing ( eg. - all containers must have equal number of request)
• It also schedules, Run, Manage containers which are running on physical virtual or cloud
machines
(based on our requirement like we want to create 200 containers after 2 hours, delete 100 containers
after 3 hrs )
• All top cloud providers support K8S.
• It creates cluster of containers.
• It provides scalability to containers.
• It provides High Availability to containers.
• Kubernetes Doesn’t create Images.
What Is Kubernetes? Cont….
Features of Kubernetes?
• Containers cannot communicate each other.
• Auto scaling (Vertical and Horizontal)
• Load Balancing
• Auto Healing
• Platform independent
• Fault Tolerance
• Rollback
• Health Monitoring of Containers
• Health Monitoring of Pods
• Batch Execution(One time, Sequential, Parallel)
Why Kubernetes? Cont….
• With Monolithic Apps Scaling is very Hard to manage
• Monolithic Apps are difficult to manage.
• High Availability is not there for Monolithic Apps.
• All the above issues resolved via microservices. Therefore Monolithic apps are replaced
by Microservices.
• Eg 1 – we want to create 100 numbers of containers from the same image – we cannot
run docker run command these many number of times manually
• Even though if it is possible but if we want to create 200-300 containers of each image of
an application that is having 40/50 images this work is very hard to manage manually.
• Eg 2 - suppose I need to reduce the number of containers based on the usage even
though we cannot delete these many number of containers.
• It means scaling should be automated. (based on users access).
• That is done by kubernates.
• Kubernetes supports all Docker, Rocket, ContainerD
Why Kubernetes? Cont….
• Docker Swarm does the things what Kubernetes Does.
• But Docker Swarm only manages Docker Containers only, while K8S Supports all kinds of
Containers(Docker/Rocker/ContainerD).
• Kubernetes is more popular, it is better than Docker-Swarm.
• Market of Docker Swarm 11%
• While market share of Kubernetes is 57%.
Why Kubernetes? Cont….
Architecture Components – Master Node / Controller Manager
• Control Manager
• Handles what should be there or what should not be there. This is the component that
maintains the balance between Actual state and desired state.
• Logically, each controller is a separate process, but to reduce complexity, they are all
compiled into a single binary and run in a single process.
• These controllers include:
• Node Controller: Responsible for noticing and responding when nodes go down.
• Replication Controller: Responsible for maintaining the correct number of pods for every replication controller
object in the system.
• Endpoints Controller: Populates the Endpoints object (that is, it joins Services and Pods).
• Service Account and Token Controllers: Create default accounts and API access tokens for new namespaces.
Architecture Components – Master Node / Controller Manager
• API Server
• Most Important component(other components talk to each other via API Server)
• The API server is a component of the Kubernetes control plane that exposes the Kubernetes
API. The API server is the front end for the Kubernetes control plane.
• ETCD
• Database / Storage system. (Eg. It keeps the record of how many instances are there and
how many are required ).
• Consistent and highly-available key value store used as Kubernetes' backing store for all
cluster data.
• KubeScheduler
• Controller manager gives the instruction to Kube Scheduler to perform any task. (Main
Action is done by Kube Schedular )
• Control plane component that watches for newly created Pods with no assigned node,
and selects a node for them to run on.
• Pod –
• Basic Component /Logical Unit of K8s,
• A pod is a group of one or more containers,
• Inside a pod containers are tightly coupled because they share access to the same volume.
• If pod gets corrupted/destroyed then it never repaired, always a new pod is created.
A Cluster is a group of Nodes.
A Cluster is a group of Master and worker nodes.
Architecture Components – Worker Node/Minion
• Kubelet
• Control the pods, informs master about the pod Health / and status. Like –
• how many Containers should be there in the pod,
• what should be there in the pod.
• This is the only component/Agent that communicates wth API Server on Master Node
• It Listens to Kubernetes Master. And use port 10255 to run.
• It sends/shares Pod Creation status success/failure to the master.
• Kube Proxy – Handles Networking related work.
• Assign IP Address to each POD (IP Address never assigned to Container, it always assigned to POD)
• If two POD wants to communicate each other then it is done via Kube-Proxy.
• Id pod restarts then assigned IP Address will be changed.
• Container Engine – Docker / ContainerD / Rocket
• Works with Kubelet
• Pulls Images,
• Start/Stop Containers.
Architecture Components – Worker Node/Minion
Kubelet
• Kubelet is the primary
“node agent” that runs
on each node and is
used to register the
nodes in the Kubernetes
cluster through the API
server.
• After a successful
registration, the primary
role of kubelet is to
create pods and listen to
the API server for
instructions.
Kubectl
• The Kubernetes
command-line
tool, kubectl, allows
you to run commands
against Kubernetes
clusters.
• You can use kubectl to
deploy applications,
inspect and manage
cluster resources, and
view logs.
Kubeadm
• Kubeadm is a tool built to
provide kubeadm init and
kubeadm join as best-
practice "fast paths" for
creating Kubernetes
clusters.
• It is the command to
bootstrap the cluster.
• kubeadm init to bootstrap
a Kubernetes control-
plane node
• kubeadm join to bootstrap
a Kubernetes worker node
and join it to the cluster.
Kubefed
• KubeFed
(Kubernetes Cluster
Federation)
• Allows you to use a
single Kubernetes
cluster to coordinate
multiple Kubernetes
clusters.
• It can deploy multiple-
cluster applications in
different regions and
design for disaster
recovery.
Minikube
• It is a utility you can
use to run
Kubernetes (k8s) on
our local machine.
• It creates a single
node cluster
contained in a virtual
machine (VM).
• This cluster lets you
demo Kubernetes
operations without
requiring the time
and resource-
consuming
installation of full-
blown K8s.
Helm
• K8S can become very complex with all the objects(Config Maps, Services, Pods, Persistence
Volumes, … ) that we need to handle and multiply by the number of releases that we want.
• All the above objects will be managed easily by HELM.
• HELM is a simple way of packaging all of them into One simple application. It also advertising
what we can configure.
• Helm is a package manager for Kubernetes
• With Helm the Deploy, Manage, and Maintain process will become easier.
• Helm fills the need to quickly and reliably provision container applications through easy install,
update, and removal.
• Helm is the K8s equivalent of yum or apt commands.
• If we want to package release over 1.0 and make only certain parts configurable , we can do that.
• With version 2.0 we can configure certain more parts configurable.
• We can simply install by One Click, or we can configure it suite our needs.
Rancher (RKE)
• It’s a Kubernetes installer that provides a UI and API.
• The users can easily access Kubernetes clusters.
• They can also access KubeCTL, which is an integrated tooling layer providing log management, CI/CD,
alerting, etc.
• It is a lightweight Kubernetes installer. It can launch Kubernetes on any computers, including:
A. Bare-metal servers
B. On-premise virtual machines
C. Virtual machines hosted by an infrastructure provider
Rancher is ideal for firms seeking a proven
multi-cloud container management platform
available on a wide variety of cloud platforms
and edge environments.
Learning / Practice
• Kubernetes Playground
• Play with Kubernetes
• Play with Kubernetes Classroom
• Google Kubernete Engine (GKE)
• Azure Kubernete Services (AKS)
• Amazon EKS (Elastic Kubernete Service)
• MiniKube
• KubeADM
Thanks to the below listed websites
• https://www.researchgate.net/figure/Kubernetes-architecture_fig1_320248964
• https://heranonazure.wordpress.com/2018/10/09/install-minikube/
• https://www.simplilearn.com/tutorials/kubernetes-tutorial/kubernetes-architecture
• https://rancher.com/why-rancher/
• https://dockerlabs.collabnix.com/kubernetes/beginners/what-is-kubect.html
• https://medium.com/edureka/kubernetes-vs-docker-45231abeeaf1
• https://redblink.com/install-rancher-kubernetes-cluster/#What_is_a_Rancher
Thank you

Weitere ähnliche Inhalte

Was ist angesagt?

WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
Brian Grant
 

Was ist angesagt? (20)

Aks pimarox from zero to hero
Aks pimarox from zero to heroAks pimarox from zero to hero
Aks pimarox from zero to hero
 
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
WSO2Con US 2015 Kubernetes: a platform for automating deployment, scaling, an...
 
Introduction to Kubernetes
Introduction to KubernetesIntroduction to Kubernetes
Introduction to Kubernetes
 
Nugwc k8s session-16-march-2021
Nugwc k8s session-16-march-2021Nugwc k8s session-16-march-2021
Nugwc k8s session-16-march-2021
 
Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1
Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1
Architecture Overview: Kubernetes with Red Hat Enterprise Linux 7.1
 
Kubernetes 101
Kubernetes 101Kubernetes 101
Kubernetes 101
 
Kubernetes Immersion
Kubernetes ImmersionKubernetes Immersion
Kubernetes Immersion
 
Kubernetes Introduction
Kubernetes IntroductionKubernetes Introduction
Kubernetes Introduction
 
Kubernetes Architecture
 Kubernetes Architecture Kubernetes Architecture
Kubernetes Architecture
 
Building Clustered Applications with Kubernetes and Docker
Building Clustered Applications with Kubernetes and DockerBuilding Clustered Applications with Kubernetes and Docker
Building Clustered Applications with Kubernetes and Docker
 
Kubernetes 101
Kubernetes 101Kubernetes 101
Kubernetes 101
 
Hands-On Introduction to Kubernetes at LISA17
Hands-On Introduction to Kubernetes at LISA17Hands-On Introduction to Kubernetes at LISA17
Hands-On Introduction to Kubernetes at LISA17
 
Kubernetes with docker
Kubernetes with dockerKubernetes with docker
Kubernetes with docker
 
Kubernetes in Docker
Kubernetes in DockerKubernetes in Docker
Kubernetes in Docker
 
What Is Kubernetes | Kubernetes Introduction | Kubernetes Tutorial For Beginn...
What Is Kubernetes | Kubernetes Introduction | Kubernetes Tutorial For Beginn...What Is Kubernetes | Kubernetes Introduction | Kubernetes Tutorial For Beginn...
What Is Kubernetes | Kubernetes Introduction | Kubernetes Tutorial For Beginn...
 
Kubernetes in Docker
Kubernetes in DockerKubernetes in Docker
Kubernetes in Docker
 
Evolution of containers to kubernetes
Evolution of containers to kubernetesEvolution of containers to kubernetes
Evolution of containers to kubernetes
 
Continuous delivery of microservices with kubernetes - Quintor 27-2-2017
Continuous delivery of microservices with kubernetes - Quintor 27-2-2017Continuous delivery of microservices with kubernetes - Quintor 27-2-2017
Continuous delivery of microservices with kubernetes - Quintor 27-2-2017
 
Ultimate Guide to Microservice Architecture on Kubernetes
Ultimate Guide to Microservice Architecture on KubernetesUltimate Guide to Microservice Architecture on Kubernetes
Ultimate Guide to Microservice Architecture on Kubernetes
 
Kubernetes Introduction
Kubernetes IntroductionKubernetes Introduction
Kubernetes Introduction
 

Ähnlich wie Kubernates : An Small introduction for Beginners by Rajiv Vishwkarma

Ähnlich wie Kubernates : An Small introduction for Beginners by Rajiv Vishwkarma (20)

Kubernetes overview and Exploitation
Kubernetes overview and ExploitationKubernetes overview and Exploitation
Kubernetes overview and Exploitation
 
01 - VMUGIT - Lecce 2018 - Fabio Rapposelli, VMware
01 - VMUGIT - Lecce 2018 - Fabio Rapposelli, VMware01 - VMUGIT - Lecce 2018 - Fabio Rapposelli, VMware
01 - VMUGIT - Lecce 2018 - Fabio Rapposelli, VMware
 
How to set up Kubernetes for all your machine learning workflows
How to set up Kubernetes for all your machine learning workflowsHow to set up Kubernetes for all your machine learning workflows
How to set up Kubernetes for all your machine learning workflows
 
Kubernetes workshop
Kubernetes workshopKubernetes workshop
Kubernetes workshop
 
Containers, Serverless and Functions in a nutshell
Containers, Serverless and Functions in a nutshellContainers, Serverless and Functions in a nutshell
Containers, Serverless and Functions in a nutshell
 
01. Kubernetes-PPT.pptx
01. Kubernetes-PPT.pptx01. Kubernetes-PPT.pptx
01. Kubernetes-PPT.pptx
 
Docker.pdf
Docker.pdfDocker.pdf
Docker.pdf
 
Kubernetes-Fundamentals.pptx
Kubernetes-Fundamentals.pptxKubernetes-Fundamentals.pptx
Kubernetes-Fundamentals.pptx
 
Cloud technology with practical knowledge
Cloud technology with practical knowledgeCloud technology with practical knowledge
Cloud technology with practical knowledge
 
Database as a Service (DBaaS) on Kubernetes
Database as a Service (DBaaS) on KubernetesDatabase as a Service (DBaaS) on Kubernetes
Database as a Service (DBaaS) on Kubernetes
 
Kubernetes and elixir
Kubernetes and elixirKubernetes and elixir
Kubernetes and elixir
 
Containers and Kubernetes -Notes Leo
Containers and Kubernetes -Notes LeoContainers and Kubernetes -Notes Leo
Containers and Kubernetes -Notes Leo
 
Intro to Kubernetes
Intro to KubernetesIntro to Kubernetes
Intro to Kubernetes
 
Kubernetes for Serverless - Serverless Summit 2017 - Krishna Kumar
Kubernetes for Serverless  - Serverless Summit 2017 - Krishna KumarKubernetes for Serverless  - Serverless Summit 2017 - Krishna Kumar
Kubernetes for Serverless - Serverless Summit 2017 - Krishna Kumar
 
Why kubernetes for Serverless (FaaS)
Why kubernetes for Serverless (FaaS)Why kubernetes for Serverless (FaaS)
Why kubernetes for Serverless (FaaS)
 
Kubernetes Presentation
Kubernetes PresentationKubernetes Presentation
Kubernetes Presentation
 
Docker and kubernetes
Docker and kubernetesDocker and kubernetes
Docker and kubernetes
 
Kubernetes-Meetup
Kubernetes-MeetupKubernetes-Meetup
Kubernetes-Meetup
 
Kube 101
Kube 101Kube 101
Kube 101
 
Kubernetes 101
Kubernetes 101Kubernetes 101
Kubernetes 101
 

Kürzlich hochgeladen

JustNaik Solution Deck (stage bus sector)
JustNaik Solution Deck (stage bus sector)JustNaik Solution Deck (stage bus sector)
JustNaik Solution Deck (stage bus sector)
Max Lee
 

Kürzlich hochgeladen (20)

A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1
A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1
A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1
 
Odoo vs Shopify: Why Odoo is Best for Ecommerce Website Builder in 2024
Odoo vs Shopify: Why Odoo is Best for Ecommerce Website Builder in 2024Odoo vs Shopify: Why Odoo is Best for Ecommerce Website Builder in 2024
Odoo vs Shopify: Why Odoo is Best for Ecommerce Website Builder in 2024
 
Modern binary build systems - PyCon 2024
Modern binary build systems - PyCon 2024Modern binary build systems - PyCon 2024
Modern binary build systems - PyCon 2024
 
Naer Toolbar Redesign - Usability Research Synthesis
Naer Toolbar Redesign - Usability Research SynthesisNaer Toolbar Redesign - Usability Research Synthesis
Naer Toolbar Redesign - Usability Research Synthesis
 
Implementing KPIs and Right Metrics for Agile Delivery Teams.pdf
Implementing KPIs and Right Metrics for Agile Delivery Teams.pdfImplementing KPIs and Right Metrics for Agile Delivery Teams.pdf
Implementing KPIs and Right Metrics for Agile Delivery Teams.pdf
 
AI/ML Infra Meetup | Perspective on Deep Learning Framework
AI/ML Infra Meetup | Perspective on Deep Learning FrameworkAI/ML Infra Meetup | Perspective on Deep Learning Framework
AI/ML Infra Meetup | Perspective on Deep Learning Framework
 
Optimizing Operations by Aligning Resources with Strategic Objectives Using O...
Optimizing Operations by Aligning Resources with Strategic Objectives Using O...Optimizing Operations by Aligning Resources with Strategic Objectives Using O...
Optimizing Operations by Aligning Resources with Strategic Objectives Using O...
 
Lessons Learned from Building a Serverless Notifications System.pdf
Lessons Learned from Building a Serverless Notifications System.pdfLessons Learned from Building a Serverless Notifications System.pdf
Lessons Learned from Building a Serverless Notifications System.pdf
 
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
 
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product UpdatesGraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
 
IT Software Development Resume, Vaibhav jha 2024
IT Software Development Resume, Vaibhav jha 2024IT Software Development Resume, Vaibhav jha 2024
IT Software Development Resume, Vaibhav jha 2024
 
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
 
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
 
Malaysia E-Invoice digital signature docpptx
Malaysia E-Invoice digital signature docpptxMalaysia E-Invoice digital signature docpptx
Malaysia E-Invoice digital signature docpptx
 
how-to-download-files-safely-from-the-internet.pdf
how-to-download-files-safely-from-the-internet.pdfhow-to-download-files-safely-from-the-internet.pdf
how-to-download-files-safely-from-the-internet.pdf
 
JustNaik Solution Deck (stage bus sector)
JustNaik Solution Deck (stage bus sector)JustNaik Solution Deck (stage bus sector)
JustNaik Solution Deck (stage bus sector)
 
OpenChain Webinar: AboutCode and Beyond - End-to-End SCA
OpenChain Webinar: AboutCode and Beyond - End-to-End SCAOpenChain Webinar: AboutCode and Beyond - End-to-End SCA
OpenChain Webinar: AboutCode and Beyond - End-to-End SCA
 
The Evolution of Web App Testing_ An Ultimate Guide to Future Trends.pdf
The Evolution of Web App Testing_ An Ultimate Guide to Future Trends.pdfThe Evolution of Web App Testing_ An Ultimate Guide to Future Trends.pdf
The Evolution of Web App Testing_ An Ultimate Guide to Future Trends.pdf
 
INGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by DesignINGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by Design
 
KLARNA - Language Models and Knowledge Graphs: A Systems Approach
KLARNA -  Language Models and Knowledge Graphs: A Systems ApproachKLARNA -  Language Models and Knowledge Graphs: A Systems Approach
KLARNA - Language Models and Knowledge Graphs: A Systems Approach
 

Kubernates : An Small introduction for Beginners by Rajiv Vishwkarma

  • 2. Agenda • History • What is Kubernetes • Why Kubernetes • Architecture • Architecture Components • Kubelet • Kubectl • KubeADM • kubefed • Minikube • Helm • Rancher • Learning and Practice
  • 3. Kubernetes ( K8S ) • Google developed an internal system called BORG then they have changed its name OMEGA to deploy and manage 1000 google applications. • 2014 it became Open-Source and donated it to CNCF (Cloud Native Computing Foundation). • brings K8s very First. • Then adopted by Azure. • AWS brings K8S very later.
  • 5. • Kubernetes is an open-source container orchestration platform • it automates • Container Deployment, • Container Scaling. • Load balancing ( eg. - all containers must have equal number of request) • It also schedules, Run, Manage containers which are running on physical virtual or cloud machines (based on our requirement like we want to create 200 containers after 2 hours, delete 100 containers after 3 hrs ) • All top cloud providers support K8S. • It creates cluster of containers. • It provides scalability to containers. • It provides High Availability to containers. • Kubernetes Doesn’t create Images. What Is Kubernetes? Cont….
  • 6. Features of Kubernetes? • Containers cannot communicate each other. • Auto scaling (Vertical and Horizontal) • Load Balancing • Auto Healing • Platform independent • Fault Tolerance • Rollback • Health Monitoring of Containers • Health Monitoring of Pods • Batch Execution(One time, Sequential, Parallel)
  • 7. Why Kubernetes? Cont…. • With Monolithic Apps Scaling is very Hard to manage • Monolithic Apps are difficult to manage. • High Availability is not there for Monolithic Apps. • All the above issues resolved via microservices. Therefore Monolithic apps are replaced by Microservices. • Eg 1 – we want to create 100 numbers of containers from the same image – we cannot run docker run command these many number of times manually • Even though if it is possible but if we want to create 200-300 containers of each image of an application that is having 40/50 images this work is very hard to manage manually. • Eg 2 - suppose I need to reduce the number of containers based on the usage even though we cannot delete these many number of containers. • It means scaling should be automated. (based on users access). • That is done by kubernates. • Kubernetes supports all Docker, Rocket, ContainerD
  • 8. Why Kubernetes? Cont…. • Docker Swarm does the things what Kubernetes Does. • But Docker Swarm only manages Docker Containers only, while K8S Supports all kinds of Containers(Docker/Rocker/ContainerD). • Kubernetes is more popular, it is better than Docker-Swarm. • Market of Docker Swarm 11% • While market share of Kubernetes is 57%.
  • 9.
  • 11. Architecture Components – Master Node / Controller Manager • Control Manager • Handles what should be there or what should not be there. This is the component that maintains the balance between Actual state and desired state. • Logically, each controller is a separate process, but to reduce complexity, they are all compiled into a single binary and run in a single process. • These controllers include: • Node Controller: Responsible for noticing and responding when nodes go down. • Replication Controller: Responsible for maintaining the correct number of pods for every replication controller object in the system. • Endpoints Controller: Populates the Endpoints object (that is, it joins Services and Pods). • Service Account and Token Controllers: Create default accounts and API access tokens for new namespaces.
  • 12. Architecture Components – Master Node / Controller Manager • API Server • Most Important component(other components talk to each other via API Server) • The API server is a component of the Kubernetes control plane that exposes the Kubernetes API. The API server is the front end for the Kubernetes control plane. • ETCD • Database / Storage system. (Eg. It keeps the record of how many instances are there and how many are required ). • Consistent and highly-available key value store used as Kubernetes' backing store for all cluster data. • KubeScheduler • Controller manager gives the instruction to Kube Scheduler to perform any task. (Main Action is done by Kube Schedular ) • Control plane component that watches for newly created Pods with no assigned node, and selects a node for them to run on.
  • 13. • Pod – • Basic Component /Logical Unit of K8s, • A pod is a group of one or more containers, • Inside a pod containers are tightly coupled because they share access to the same volume. • If pod gets corrupted/destroyed then it never repaired, always a new pod is created. A Cluster is a group of Nodes. A Cluster is a group of Master and worker nodes. Architecture Components – Worker Node/Minion
  • 14. • Kubelet • Control the pods, informs master about the pod Health / and status. Like – • how many Containers should be there in the pod, • what should be there in the pod. • This is the only component/Agent that communicates wth API Server on Master Node • It Listens to Kubernetes Master. And use port 10255 to run. • It sends/shares Pod Creation status success/failure to the master. • Kube Proxy – Handles Networking related work. • Assign IP Address to each POD (IP Address never assigned to Container, it always assigned to POD) • If two POD wants to communicate each other then it is done via Kube-Proxy. • Id pod restarts then assigned IP Address will be changed. • Container Engine – Docker / ContainerD / Rocket • Works with Kubelet • Pulls Images, • Start/Stop Containers. Architecture Components – Worker Node/Minion
  • 15. Kubelet • Kubelet is the primary “node agent” that runs on each node and is used to register the nodes in the Kubernetes cluster through the API server. • After a successful registration, the primary role of kubelet is to create pods and listen to the API server for instructions.
  • 16. Kubectl • The Kubernetes command-line tool, kubectl, allows you to run commands against Kubernetes clusters. • You can use kubectl to deploy applications, inspect and manage cluster resources, and view logs.
  • 17. Kubeadm • Kubeadm is a tool built to provide kubeadm init and kubeadm join as best- practice "fast paths" for creating Kubernetes clusters. • It is the command to bootstrap the cluster. • kubeadm init to bootstrap a Kubernetes control- plane node • kubeadm join to bootstrap a Kubernetes worker node and join it to the cluster.
  • 18. Kubefed • KubeFed (Kubernetes Cluster Federation) • Allows you to use a single Kubernetes cluster to coordinate multiple Kubernetes clusters. • It can deploy multiple- cluster applications in different regions and design for disaster recovery.
  • 19. Minikube • It is a utility you can use to run Kubernetes (k8s) on our local machine. • It creates a single node cluster contained in a virtual machine (VM). • This cluster lets you demo Kubernetes operations without requiring the time and resource- consuming installation of full- blown K8s.
  • 20.
  • 21. Helm • K8S can become very complex with all the objects(Config Maps, Services, Pods, Persistence Volumes, … ) that we need to handle and multiply by the number of releases that we want. • All the above objects will be managed easily by HELM. • HELM is a simple way of packaging all of them into One simple application. It also advertising what we can configure. • Helm is a package manager for Kubernetes • With Helm the Deploy, Manage, and Maintain process will become easier. • Helm fills the need to quickly and reliably provision container applications through easy install, update, and removal. • Helm is the K8s equivalent of yum or apt commands. • If we want to package release over 1.0 and make only certain parts configurable , we can do that. • With version 2.0 we can configure certain more parts configurable. • We can simply install by One Click, or we can configure it suite our needs.
  • 22. Rancher (RKE) • It’s a Kubernetes installer that provides a UI and API. • The users can easily access Kubernetes clusters. • They can also access KubeCTL, which is an integrated tooling layer providing log management, CI/CD, alerting, etc. • It is a lightweight Kubernetes installer. It can launch Kubernetes on any computers, including: A. Bare-metal servers B. On-premise virtual machines C. Virtual machines hosted by an infrastructure provider Rancher is ideal for firms seeking a proven multi-cloud container management platform available on a wide variety of cloud platforms and edge environments.
  • 23. Learning / Practice • Kubernetes Playground • Play with Kubernetes • Play with Kubernetes Classroom • Google Kubernete Engine (GKE) • Azure Kubernete Services (AKS) • Amazon EKS (Elastic Kubernete Service) • MiniKube • KubeADM
  • 24. Thanks to the below listed websites • https://www.researchgate.net/figure/Kubernetes-architecture_fig1_320248964 • https://heranonazure.wordpress.com/2018/10/09/install-minikube/ • https://www.simplilearn.com/tutorials/kubernetes-tutorial/kubernetes-architecture • https://rancher.com/why-rancher/ • https://dockerlabs.collabnix.com/kubernetes/beginners/what-is-kubect.html • https://medium.com/edureka/kubernetes-vs-docker-45231abeeaf1 • https://redblink.com/install-rancher-kubernetes-cluster/#What_is_a_Rancher