So let's now have a look at the Kubernetes cluster.
What is that?
Kubernetes cluster consists of nodes.
Node is actually server either bare metal server or virtual server.
And you could include multiple such servers into the Kubernetes cluster.
And they could be located in different data centers in different parts of the world.
But usually nodes which belong to the same Kubernetes cluster are located close to each other in order
to perform all jobs more efficiently.
Inside of the node, there are pods.
Port is again the smallest possible unit in the Kubernetes.
And inside of each port there are containers, usually single container per pod.
And such boards are created on different nodes, and all of that is done automatically for you.
Kubernetes does this job, but of course your job is to create such nodes and create cluster based on
those nodes.
Nodes will not automatically form cluster without your intervention, but after such initial configuration,
everything will be automated and Kubernetes will automatically deploy both on different nodes.
But how those nodes actually communicate with each other and how are they managed?
In Kubernetes cluster there is master node and other nodes in the cluster are called worker nodes,
and master node actually manages worker nodes and its master nodes job to distribute, for example,
load across other worker nodes and all ports which are related to your applications are deployed on
worker nodes.
Master node runs only system ports, which are responsible for actual work of the Kubernetes cluster
in general.
We could also say that master node in the Kubernetes cluster is actually control plane and it does not
run your client applications.