Kubernetes Architecture Flashcards
How does a Kubernetes cluster operate?
API calls to operators. Most things run in containers.
What should you do to make sure that a Kubernetes upgrade will work?
Make sure that all components will work together
How do you make sure all versions will work together?
Run kubeadm upgrade plan
What does the control plane do?
Run server and management processes.
What did the cloud-controller-manager replace?
kube-controller-manager
What’s an example of an essential Kubernetes add-on?
DNS services
What are some optional Kubernetes add-ons?
Cluster logging and resource monitoring
What usually manages the kubelet process?
systemd, when the cluster is built using kubeadm
Which pods get started when a cluster starts?
Those in /etc/kubernetes/manifests/
What does kube-apiserver do?
Handle and validate API calls, and connect to the etcd cluster
What does the Konnectivity service do?
Allows the separation of user and server initiated traffic.
What’s the advantage of segregating user and server initiated traffic?
Reduced performance, capacity and security concerns
What does kube-scheduler do?
Uses an algorithm to decide which node will host a pod
In order, what does kube-scheduler evaluate to decide where to place a pod?
Quota restrictions
Taints and tolerations
Labels and metadata
What does the etcd database store?
Cluster state, networking and persistent information
How do values get updated in etcd?
Values get appended to the end of the database, and old values are removed when compaction runs
What happens if there are simultaneous requests to update a value in etcd?
The first one will succeed, but the others will fail with a 409 error.
What happens when you get a 409 error?
Nothing, the client has to make another request.
What do you have to do before doing an etcd update?
Back up the cluster’s etcd state
How do you back up an etcd state?
Run etcdctl snapshot save or etcdctl snapshot restore
What does the kube-controller-manager agent do?
Keep track of the state of the cluster, and use controllers to get the states to match
What does CCM do?
Interact with agents outside of the cloud, like public cloud providers, to create things like load balancers.
What processes do all Kube nodes run?
kubelet, kube-proxy and a container engine
What does the kubelet do?
Interact with the container engine on the nodes and make sure all required containers are running