Kubernetes Architecture explained Flashcards

1
Q

Each worker node has 3 processes that must be installed:

A

1) Container Runtime
2) Kubelet
3) Kube-proxy

These 3 processes are used to schedule and manage those Pods.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Container runtime

A

Because application Pods have containers inside them, a container runtime must be installed on every Node.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Kubelet is the process that

A

starts those Pods and the containers on the server

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Why does Kubelet have an interface with both: the container runtime and the server or the Node itself?

A

Kubelet needs to get resources, like CPU, RAM, and storage, from the worker node to create a Pod, and then it needs to talk to Docker to start a container inside the pod.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Kube-proxy must be installed on every Node. This process is responsible for

A

forwarding requests from Services to Pods.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Kube-proxy has built-in intelligent

A

forwarding logic that makes sure all communication is sent in the most efficient way

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

When you as a user want to deploy a new application in a Kubernetes cluster, you interact with the

A

API server using a Kubernetes client

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

The API server is like a cluster gateway, which receives the requests for

A

creating or updating components in the cluster, as well as queries about these components.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

The API server also acts as a gatekeeper to make sure that

A

only authenticated and authorized requests get through to the cluster

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

After validating you, what does the API server do with your request?

A

It hands it over to the Scheduler to start the application Pod on one of the Worker Nodes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

How does the scheduler intelligently decide which Worker Node the new Pod should be placed on?

A
    1. The Scheduler will look at your request and see how much resources the application that you want to schedule will need (CPU, RAM etc.)
  1. Then it goes through the Worker Nodes to check the available resources on each one of them.
  2. The Node with the most resources available or the least amount of load will be where the new pod is placed.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

The Controller Manager’s main job is detecting

A

state changes like the crashing of Pods for example.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

When the Controller Manager detects that a Pod has died it will make a

A

request to the Scheduler to redeploy that pod. The Scheduler may not put the pod back on the same Node it came from .

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

etcd, is a

A

key value store of the cluster state

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

etcd is often called the cluster brain, which means that

A

every change in the cluster, for example, when a new Pod gets scheduled, when a Pod dies, all of these changes get saved or updated into this key-value store of etcd.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Scheduler, Controller manager, and Kubelet, work based on the data in

A

etcd as well as communicate with each other through etcd store.

17
Q

What is NOT stored in the etcd key-value store?

A

Application data.

For example, if you have a database running inside the cluster, the data will
be stored somewhere else. Etcd store only stores the cluster state
information.

18
Q

What are the three steps add a Master server to your Cluster?

A

1) Get a fresh new server
2) Install all the Master processes on it (API server, Scheduler, Controller Manager, etcd)
3) join it to the Kubernetes cluster using a Kubernetes command

19
Q

What are the three steps add Worker Nodes to your Cluster:

A

1) you get new servers
2) Install all the Worker Node processes (container runtime, Kubelet & KubeProxy)
3) join it to the cluster