In this lecture, we will look at the kubeadm tool,
which could be used to bootstrap a Kubernetes cluster.
The kubeadm tool helps us set up a multi-node cluster
using Kubernetes best practices.
As we discussed, the Kubernetes cluster consists of various components
including the cube API server, etcd, the controllers, et cetera.
We've seen some of the requirements around security and certifications
to enable communication between all of the components.
Installing all of these various components
individually across different nodes
and modifying all of the necessary configuration files
to make sure all the components point to each other
and setting up certificates to make it work is a tedious task.
The kubeadm tool helps us by taking care of all of these tasks.
Let's go through the steps to set up a Kubernetes cluster
using the kubeadm tool at a high level.
First, you need to have multiple systems or VMs provisioned.
We're going to need a couple of nodes for our Kubernetes cluster.
These can be once again physical or virtual machines.
In the next video, in the demo, we'll actually go over
how to set this up on your laptop,
and you'll see that it's going be actually very easy.
Once all of the nodes are provisioned,
you're going to have to designate one as the master
and the rest as worker nodes.
The next step after that is to install a container runtime on the hosts.
We will specifically be using container D,
and so we're going to install container D on all of the nodes.
After that, we'll have to install the kubeadm tool on all the nodes.
The kubeadm tool helps us bootstrap the Kubernetes solution
by installing all of the necessary components
on the right nodes in the right order.
Following that, we have to then initialize the master server.
During this process, all of the required components
are installed and configured on the master server.
Then once the master server has been initialized,
but prior to joining the worker nodes to the cluster,
you must ensure that the network prerequisites are met.
Normal network connectivity is not enough for this.
Kubernetes requires a special networking solution
between the master and worker nodes called the POD Network.
Once the POD Network is set up,
we are all set to go on having the worker nodes join the master node.
Once they've joined the master node,
we can then move on to deploying our application
onto the Kubernetes environment.
We will now see a demo of setting up a Kubernetes cluster
using the kubeadm tool on our local environment.