So which services actually are run on different nodes?
Let's have a look at this diagram.
There are such services as queue, bullet, cube proxy and container runtime, and those services are
present on each node in the Kubernetes cluster.
You already know.
What is the container runtime?
Container runtime runs actual containers inside of each node and there are such container runtimes as
docker cry o or container dx.
There was also such service as Q blood and such service on each workload communicates with API server
service on the masternode.
API server service is a main point of communication between different nodes in the Kubernetes world.
Q Proxy, which is present on each note as well, is responsible for network communication inside of
each node and between nodes.
Also there are other services which are present on masternode and they are scheduler and such service
is responsible for planning and distribution of the load between different nodes in the cluster.
Also there was queue controller manager and it is single point which controls everything actually in
the Kubernetes cluster and it controls actually what happens on each of the nodes in the cluster.
Also there was cloud controller manager and its job is interaction with cloud service provider where
you actually run your Kubernetes cluster because usually you don't create such clusters yourself using
just your own servers.
Instead, you could very easily rent the Kubernetes cluster from one of the cloud providers, which
actually perform almost automated creation of all nodes and the connections between such nodes.
And for that you have to run cloud controller manager service on the master node.
Also, for example, if you want to create the deployment of your application inside of the Kubernetes
cluster, which will be opened to the outside world and allow connections from outside, you could create
also load balancer IP addresses and those load balancers.
IP addresses are usually provided by specific cloud providers.
Also on Master Node, there is such service as OECD and this is a service which actually stores all
logs related to operation of entire Kubernetes cluster and such logs are stored there as key value pairs.
Also, there are other services which are running on Master Node, for example, a DNS service which
is responsible for names resolution in entire Kubernetes cluster.
And for instance, using a DNS service, you could connect to specific deployment by the name of the
corresponding deployment service.
And in such a way, you could connect different deployments with each other.
This are different services which are running on different nodes in the Kubernetes cluster and the main
service on the master node is API server.