Basic Concepts Flashcards

1
Q

What are the elements of the control plane?

A
  • etcd (KV store)
  • API server
  • scheduler
  • controller manager
  • cloud controller manager
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

etcd

A
  • distributed KV store for cluster state
  • how many resources are running, status of resources, etc
  • stores and replicates all cluster states
  • “et-see-dee”
  • distributed etc directory
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

API server

A

used by pods and users to communicate with the control plane
accepts REST commands to interact with cluster resources

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

Controller Manager

A
  • control loop that makes sure the etcd state matches the node state
  • for example, if a workflow requires 3 replicas and 1 replica is down, the controller manager sends a command to restore it
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Worker Nodes

A
  • the compute on which containers are executed
  • can be a physical or virtual machine depending on the cluster
  • managed by the control plane and contain the necessary services to run pods
  • if nodes are unavailable, kubernetes cannot run workloads
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is kubernetes?

A
  • An orchestration platform for running containers
  • Runs workloads by placing containers into pods to run on nodes
  • Schedules pods on nodes on a best-effort basis
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What are the elements of a node?

A

All nodes need to be bootstrapped with
- kubeproxy
- kubelet
- container runtime (e.g. docker)

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

Cardoning

A

Stop new workflows from being scheduled

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

Draining

A

Start moving workflows off a given node

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

What is a kubernetes cluster?

A
  • Physical isolation of hardware (set of connected nodes)
  • Combination of control plane and worker nodes
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is the control plane?

A

A controller that runs in a loop trying to ensure that the cluster is in a desired state

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

Namespaces

A
  • Provide logical isolation of workloads
  • Helpful for provisioning cluster resources
  • Kubernetes resources must live within a namespace unless they are cluster-scoped
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is tainting?

A

Allows for customizable scheduling of nodes
When you taint a node, you need a pod to tolerate that taint
Taints and tolerations are how pods are scheduled on nodes

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

kubeproxy

A
  • responsible for communication between the control plane and the node itself
  • network proxy that runs on each node in a cluster o maintain network rules and enable network communication
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

kubelet

A
  • takes instructions from control plane and executes them on the node
  • agent that gets the pod config from the api server and ensures the pods and container state have the desired config
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

kubectl

A
  • kube CTL
  • application to interact with the kubernetes cluster
17
Q

Pods

A
  • Smallest deployable units of compute that you can deploy and manage in Kubernetes
  • Run the workflow
  • Group of containers with shared storage and network resources and a specification for how to run the containers
18
Q

When is a pod considered up?

A

When all the containers are in a running state

19
Q

What are initcontainers?

A
  • Allow preconfigurations such as bootstrap and auth credentials
20
Q

What are affinity and non-affinity?

A

How pods are scheduled with respect to other pods

21
Q

What is a readiness probe?

A

Used to determine whether a pod is ready to accept traffic

22
Q

What is a liveness probe?

A

Used to determine whether or not a pod is healthy

23
Q

kube scheduler

A
  • background process that watches for new kubernetes pods with no assigned nodes and assigns them to a worker node for execution
24
Q

controller

A

manage kubernetes jobs

25
helm
- de facto tool for deploying application stacks to kubernetes - templating engine and package manager for a set of Kubernetes manifests - at runtime, it replaces placeholders in YAML template files with actual user-defined values
26
container runtime engine
- software responsible for managing containers (e.g. Docker)
27
chart file
- contains manifest files, default configuration values, and metadata - artifact produced by helm executable - bundles the manifests that comprise the API resources of an application
28
kubernetes operator
software extensions to kubernetes that use custome resources to manage applications and their components
29
Pod pending
The pod has been accepted by the Kubernetes system but one or more of the container images has not been created
30
Pod running
At least one container is still running or is in the process of starting or restarting
31
Pod succeeded
All containers in the pod terminated successfully
32
Pod failed
Containers in the pod terminated; at least one failed with an error
33
Pod unknown
The pod state cannot be obtained
34
kubectl logs -p
Show logs from previous container
35
kubectl exec -it hazelcast -- /bin/sh
exec: open a shell it: interactive; remove it to only pass in one command hazelcast: name of the pod --: separate the exec command options from the command you want to run inside the container /bin/sh: command to run inside the container
36
Are pod ip addresses stable?
No. A pod restart leases a new IP address. That's why services exist. To provide a stable network interface.