Kubernetes Fundamentals Flashcards

1
Q

Kubernetes is often used as a ______, which means that it is spanned across multiple servers that work on different tasks and to distribute the load of a system.

A

Cluster

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

Name the two types of server nodes that make up a Kubernetes Cluster.

A

1) Control plane nodes
2) Worker nodes

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

What does the control plane node do?

A

Control plane nodes contain various components which manage the cluster and control various tasks, such as deployment, scheduling and self-healing.

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

What does the worker node do?

A

Applications run on the worker node. Their behavior is controlled by the control plane node.

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

Which services are typically hosted on the control plane node?

A

1) kube-apiserver
2) kube-scheduler
3) kube-controller-manager
4) etcd
5) cloud-controller-manager

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

Which services are typically hosted on the worker node?

A

1) container runtime
2) kubelet
3) kube-proxy

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

What is a Kubernetes namespace?

A

A Kubernetes namespace can be used to divide a cluster into multiple virtual clusters, which can be used for multi-tenancy when multiple teams share a cluster.

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

The ________ is the centerpiece of Kubernetes. All other components interact with it and this is where users would access the cluster.

A

kube-apiserver

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

________ is a database which holds the state of a cluster.

A

etcd

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

When a new workload should be scheduled, the __________ chooses a worker node that could fit, based on different properties like CPU and memory.

A

kube-scheduler

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

The _____________ contains different non-terminating control loops that manage the state of the cluster. For example, one of these control loops can make sure that a desired number of your application is available all the time.

A

kube-controller-manager

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

The _____________ can be used to interact with the API of cloud providers, to create external resources like load balancers, storage or security groups.

A

cloud-controller-manager

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

The _________ _________ is responsible for running the containers on the worker node. For a long time, Docker was the most popular choice, but is now replaced in favor of other runtimes like containerd.

A

container runtime

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

__________ is a small agent that runs on every worker node in the cluster. It talks to the api-server and the container runtime to handle the final stage of starting containers.

A

kubelet

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

_________ is a network proxy that handles inside and outside communication of your cluster. Instead of managing traffic flow on its own, it tries to rely on the networking capabilities of the underlying operating system if possible.

A

kube-proxy

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

What three tools can be used to create a test cluster?

A
  1. Minikube
  2. kind
  3. MicroK8s
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Which installers can be used to setup a production-grade cluster on your own hardware or virtual machines?

A
  1. kubeadm
  2. kops
  3. kubespray
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What are some commercial Kubernetes distributions?

A
  1. Rancher
  2. k3s
  3. OpenShift
  4. VMWare Tanzu
19
Q

What Kubernetes services are offered by cloud providers?

A
  1. Amazon (EKS)
  2. Google (GKE)
  3. Microsoft (AKS)
  4. DigitalOcean (DOKS)
20
Q

Before a request is processed by Kubernetes, what three stages does it have to go through?

A
  1. Authentication
  2. Authorization
  3. Admission Control
21
Q

Kubernetes users are always _________ managed. ________ _______ can be used to authenticate technical users.

A

Externally, Service Accounts

22
Q

_________ decides what the requester is allowed to do. In Kubernetes this can be done with __________.

A

Authorization, RBAC (Role-Based Access Control)

23
Q

In the last step, _________ _________ can be used to modify or validate a request. Tools like the _______ _______ ______ can be used to manage _______ ________ externally.

A

Admission controllers, Open Policy Agent, admission control

24
Q

In Kuberentes, what is a Pod?

A

Pods are the smallest compute unit and can be thought of as a wrapper around a container.

25
Q

Which container runtimes are available with CRI?

A
  1. containerd
  2. CRI-O
  3. Docker
26
Q

____________ is a lightweight and performant implementation to run containers. Arguably it is the most popular container runtime right now. It is used by all major cloud providers for the Kubernetes As A Service products.

A

containerd

27
Q

___________ was created by Red Hat and with a similar code base closely related to podman and buildah.

A

CRI-O

28
Q

The standard for a long time, but never really made for container orchestration. The usage of _______ as the runtime for Kubernetes has been deprecated and removed in Kubernetes 1.24. Kubernetes has a great blog article that answers all the questions on the matter.

A

Docker

29
Q

What are the two most common tools that try to solve the security problem of Kubernetes sharing the kernel?

A
  1. gvisor
  2. Kata Containers
30
Q

Made by Google, __________ provides an application kernel that sits between the containerized process and the host kernel.

A

gvisor

31
Q

____________ _________ is a secure runtime that provides a lightweight virtual machine, but behaves like a container.

A

Kata Containers

32
Q

What are the four different networking problems that Kubernetes aims to solve?

A
  1. Container-to-Container communications
  2. Pod-to-Pod communications
  3. Pod-to-Service communications
  4. External-to-Service communications
33
Q

What are the three important requirements for implementing networking in Kubernetes?

A
  1. All pods can communicate with each other across nodes.
  2. All nodes can communicate with all pods.
  3. No Network Address Translation (NAT).
34
Q

__________ can be solved by Pods.

A

Container-to-Container communications

35
Q

_________ can be solved with an overlay network.

A

Pod-to-Pod communications

36
Q

__________ and _________ is implemented by the kube-proxy and packet filter on the node.

A

Pod-to-Service and External-to-Service communications

37
Q

Name three network vendors can you choose from to implement networking.

A
  1. Project Calico
  2. Weave
  3. Cilium
38
Q

Most Kubernetes setups include a DNS server add-on called _________ , which can provide service discovery and name resolution inside the cluster.

A

core-dns

39
Q

What are Network Policies?

A

Network Policies act as cluster internal firewalls. Network policies can be defined for a set of pods or namespaces.

40
Q

Network Policies are implemented by the __________ plugin.

A

network

41
Q

In Kubernetes, what is scheduling?

A

Scheduling is a sub-category of container orchestration and describes the process of automatically choosing the right (worker) node to run a containerized workload on.

42
Q

In a Kubernetes cluster, the ___________ is the component that makes the scheduling decision, but is not responsible for starting the workload.

A

kube-scheduler

43
Q

Regarding Pods, what is the default behavior of Kubernetes schedulers?

A

The default behavior is to schedule the Pod on the node with the least amount of Pods.