Kubernetes Architecture Simplified | K8s Explained in 10 Minutes

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments

I second. I've taken several of Mumshad Mannambeth's classes on O'Reilly Learning and they are great.

👍︎︎ 7 👤︎︎ u/nsteblay 📅︎︎ Dec 18 2019 🗫︎ replies

This guy is insane, his videos are very explanatory and mostly correct for what i have seen now.

👍︎︎ 10 👤︎︎ u/jeanpoelie 📅︎︎ Dec 18 2019 🗫︎ replies

Now we just need a k8s dashboard that uses cargo ships, cranes, captains and containers to visualize a cluster.

👍︎︎ 3 👤︎︎ u/qbanguy 📅︎︎ Dec 18 2019 🗫︎ replies

I bought his course. He explains things really well.

👍︎︎ 2 👤︎︎ u/thras00 📅︎︎ Dec 18 2019 🗫︎ replies

Beautiful, thanks for sharing!

👍︎︎ 1 👤︎︎ u/tomasfern 📅︎︎ Dec 18 2019 🗫︎ replies

Great video, very informative.

My only complaint is the container ship metaphor is stretched too far. Moving containers between ships while at sea isn't on the open sea isn't realistic.

👍︎︎ 1 👤︎︎ u/playa_1 📅︎︎ Dec 19 2019 🗫︎ replies
Captions
hello and welcome to this section my name is moonshot muhammad and we are going through the certified kubernetes administrators course we start with a basic overview of the kubernetes cluster architecture we first look at the architecture at a high level and then we drill down into each of these components we see what their roles and responsibilities are and how they are configured and finally you go through a practice test where you look at an existing cluster and are asked to identify where is details with respect to these components in the cluster we're going to use an analogy of ships to understand the architecture of kubernetes the purpose of kubernetes is to host your applications in the form of containers in an automated fashion so that you can easily deploy as many instances of your application as required and easily enable communication between different services within your application so there are many things involved that work together to make this possible so let's take a 10,000 feet look and be covered entities architecture we have two kinds of ships in this example cargo ships that does the actual work of carrying containers across the sea and control ships that are responsible for monitoring and managing the cargo ships the current nerdist cluster consists of a set of nodes which may be physical or virtual on premise or on cloud that hosts applications in the form of containers these relate to the cargo ships in this analogy the worker nodes in the cluster are ships that can load containers but somebody needs to load the containers on the ships and not just load plan how to load identify the right ships store information about the ships monitor and track the location of containers on the ships manage the whole loading process etc this is done by the control ships that hosts different offices and departments monitoring equipment communication equipments cranes for moving containers between ships etc the control ships relate to the master node in the kubernetes clause the masternode is responsible for managing the kubernetes cluster storing information regarding the different nodes planning which containers cause we're monitoring the nodes and containers on them etc the master node does all of these using a set of components together known as the control plane components we will look at each of these components now now there are many containers being loaded and unloaded from the ships on a daily basis and so you need to maintain information about the different ships what container is on which ship and what time it was loaded etc all of these are stored in a highly available key value store known as hcd hcd is a database that stores information in a key value format we will look more into what HDD cluster actually is what data is stored in it and how it stores the data in one of the upcoming lectures when ships arrive you load containers on them using cranes the cranes identify the containers that need to be placed on ships it identifies the right ship based on its size its capacity the number of containers already on the ship and any other conditions such as the destination of the ship the type of containers it is allowed to carry etc so those are schedulers in a kubernetes cluster a scheduler identifies the right node to place a container on based on the containers resource requirements the worker nodes capacity or any other policies or constraints such as taints in toleration x' or no affinity rules that are on them we will look at these in much more detail with examples and practice tests later in this course we have a whole section on scheduling alone there are different offices in the dock that are assigned to special tasks or departments for example the operations team takes care of ship handling traffic control etc they deal with issues related to damages the routes the different ships take etc the cargo team takes care of containers when continuous are damaged or destroyed they make sure new containers are made available we have these Services office that takes care of the IT and communications between different ships similarly in kubernetes we have controllers available that take care of different areas the node controller takes care of nodes they're responsible for onboarding new nodes to the cluster handling situations where nodes become unavailable or get gets destroyed and the replication controller ensures that the desired number of containers are running at all times in your repetitions rope so we've seen different components like the different offices the different ships the datastore the cranes but how do these communicate with each other how does one office reach the other office and who manages them all at a high level the cube API server is the primary management component of kubernetes the cube API server is responsible for orchestrating all operations within the cluster it exposes the kubernetes api which is used by external users to perform management operations on the cluster as well as the various controllers to monitor the state of the cluster and make necessary changes as required and by the worker nodes to communicate with the server now we're working with containers here containers are everywhere so we need everything to be container compatible our applications are in the form of containers the different components that form the entire management system on the master node could be hosted in the form of containers the DNS service networking solution can all be deployed in the form of containers so we need these software that can run containers and that's the container runtime engine a popular one being docker so we need docker or it's supported equivalent installed on all the nodes in the cluster including the master nodes if you wish to host the control plane components as containers now he doesn't always have to be docker kubernetes supports other runtime engines as well like container d or rocket let us now turn our focus onto the cargo ships now every ship has a captain the captain is responsible for managing all activities on these ships the captain is responsible for leasing with the master ships starting with letting the mastership know that they are interested in joining the group receiving information about the containers to be loaded on the ship and loading the appropriate containers as required sending reports back to the master about the status of this ship and the status of the containers on the ship etc now the captain of the ship is the cubelet in kubernetes a cubelet is an agent that runs on each node in a cluster it listens for instructions from the cube API server and deploys or destroys containers on the nodes as required the cube API server periodically fetches status reports from the cubelet to monitor the status of nodes and containers on them the cubelet was more of a captain on the ship that manages containers on the ship but the applications running on the worker nodes need to be able to communicate with each other for example you might have a web server running in one container on one of the nodes and a database server running on another container on another node how would the web server reach a database server on the other node communication between worker nodes are enabled by another component that runs on the worker node known as the cube proxy service the cube proxy service ensures that the necessary rules are in place on the worker nodes to allow the containers running on them to reach each other so to summarize we have master and worker nodes on the master we have the HDD cluster which stores information about the cluster we have the cube scheduler that is responsible for scheduling applications or containers on nodes we have different controllers that take care of different functions like the node controller or replication controller etc we have the cube API server that is responsible for orchestrating all operations within the cluster on the worker node we have the cubelet that listens for instructions from the cube api server and manages containers and the cube proxy that helps in communication between services within the cluster so that's a high-level overview of the various components we will drill down into each of these in the upcoming lectures that's it for now and I will see you in the next lecture hello where's the practice session and explore the networking set up in the existing environment we will start with simple exercises where you will explore an existing kubernetes cluster and view information about the interfaces IPS host names ports etc this will help you familiarize with the environment and look for information in the future sections going forward we will get into more challenging exercises for now let's start slow you
Info
Channel: KodeKloud
Views: 241,234
Rating: 4.910707 out of 5
Keywords: kubernetes, k8s explained, kubernetes certification, cluster architecture, kodekloud kubernetes, kodekloud mumshad, kubernetes simple explanation, kubernetes video for beginners, beginner in kubernetes, kubernetes certification exam questions, ETCD for beginners, kube API server, kubelet, kube proxy, kube scheduler, Kubernetes ckad, k8s explained for beginners, k8s simple example, master nodes in kubernetes, easy kubernetes explaination, why use kubernetes, cka certification
Id: 8C_SCDbUJTg
Channel Id: undefined
Length: 9min 30sec (570 seconds)
Published: Sat Apr 27 2019
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.