1
00:00:04,780 --> 00:00:09,760
So which services actually are run on different nodes?

2
00:00:09,910 --> 00:00:12,040
Let's have a look at this diagram.

3
00:00:12,550 --> 00:00:20,800
There are such services as queue, bullet, cube proxy and container runtime, and those services are

4
00:00:20,800 --> 00:00:24,190
present on each node in the Kubernetes cluster.

5
00:00:25,180 --> 00:00:25,930
You already know.

6
00:00:25,930 --> 00:00:27,880
What is the container runtime?

7
00:00:27,910 --> 00:00:35,950
Container runtime runs actual containers inside of each node and there are such container runtimes as

8
00:00:35,950 --> 00:00:38,860
docker cry o or container dx.

9
00:00:40,250 --> 00:00:49,310
There was also such service as Q blood and such service on each workload communicates with API server

10
00:00:49,310 --> 00:00:51,620
service on the masternode.

11
00:00:52,870 --> 00:01:00,310
API server service is a main point of communication between different nodes in the Kubernetes world.

12
00:01:02,220 --> 00:01:10,050
Q Proxy, which is present on each note as well, is responsible for network communication inside of

13
00:01:10,050 --> 00:01:12,390
each node and between nodes.

14
00:01:14,420 --> 00:01:22,850
Also there are other services which are present on masternode and they are scheduler and such service

15
00:01:22,850 --> 00:01:29,060
is responsible for planning and distribution of the load between different nodes in the cluster.

16
00:01:29,420 --> 00:01:36,680
Also there was queue controller manager and it is single point which controls everything actually in

17
00:01:36,680 --> 00:01:43,880
the Kubernetes cluster and it controls actually what happens on each of the nodes in the cluster.

18
00:01:45,090 --> 00:01:52,620
Also there was cloud controller manager and its job is interaction with cloud service provider where

19
00:01:52,620 --> 00:01:59,790
you actually run your Kubernetes cluster because usually you don't create such clusters yourself using

20
00:01:59,790 --> 00:02:01,280
just your own servers.

21
00:02:01,290 --> 00:02:07,440
Instead, you could very easily rent the Kubernetes cluster from one of the cloud providers, which

22
00:02:07,440 --> 00:02:14,580
actually perform almost automated creation of all nodes and the connections between such nodes.

23
00:02:15,000 --> 00:02:20,940
And for that you have to run cloud controller manager service on the master node.

24
00:02:21,600 --> 00:02:28,590
Also, for example, if you want to create the deployment of your application inside of the Kubernetes

25
00:02:28,590 --> 00:02:35,520
cluster, which will be opened to the outside world and allow connections from outside, you could create

26
00:02:35,520 --> 00:02:40,370
also load balancer IP addresses and those load balancers.

27
00:02:40,380 --> 00:02:45,120
IP addresses are usually provided by specific cloud providers.

28
00:02:46,380 --> 00:02:54,630
Also on Master Node, there is such service as OECD and this is a service which actually stores all

29
00:02:54,660 --> 00:03:04,020
logs related to operation of entire Kubernetes cluster and such logs are stored there as key value pairs.

30
00:03:04,710 --> 00:03:11,190
Also, there are other services which are running on Master Node, for example, a DNS service which

31
00:03:11,190 --> 00:03:15,780
is responsible for names resolution in entire Kubernetes cluster.

32
00:03:15,780 --> 00:03:22,980
And for instance, using a DNS service, you could connect to specific deployment by the name of the

33
00:03:22,980 --> 00:03:25,320
corresponding deployment service.

34
00:03:25,320 --> 00:03:29,610
And in such a way, you could connect different deployments with each other.

35
00:03:31,000 --> 00:03:37,990
This are different services which are running on different nodes in the Kubernetes cluster and the main

36
00:03:37,990 --> 00:03:41,290
service on the master node is API server.

