CKA Cluster Architecture 2 — Questions and Answers
Question 1: Which component is responsible for maintaining the desired state of objects in a Kubernetes cluster?
- kube-scheduler
- kube-controller-manager (Correct answer)
- kubelet
- kube-proxy
Correct answer: kube-controller-manager
The kube-controller-manager runs controllers that continuously watch the cluster state and reconcile it with the desired state.
Question 2: What is the primary function of the kube-scheduler?
- Assign Pods to Nodes based on resource availability and constraints (Correct answer)
- Monitor Node health and restart failed Pods
- Expose services via load balancing
- Store cluster state in etcd
Correct answer: Assign Pods to Nodes based on resource availability and constraints
The kube-scheduler watches for unscheduled Pods and selects an appropriate Node based on resource requirements, affinity rules, and other constraints.
Question 3: Which communication protocol does the kubelet use to pull container images and manage container lifecycle?
- Docker API
- Container Runtime Interface (CRI) (Correct answer)
- Open Container Initiative (OCI) CLI
- gRPC directly to containerd
Correct answer: Container Runtime Interface (CRI)
The kubelet communicates with container runtimes through the Container Runtime Interface (CRI), which is a plugin interface.
Question 4: In a Kubernetes cluster, which component handles east-west (Pod-to-Pod) network traffic routing?
- Ingress Controller
- kube-proxy (Correct answer)
- CoreDNS
- kube-apiserver
Correct answer: kube-proxy
kube-proxy runs on each Node and maintains network rules (iptables or IPVS) that enable Pod-to-Service and cross-Node Pod communication.
Question 5: What happens to etcd data if all etcd members in a cluster are simultaneously lost without a backup?
- Kubernetes auto-rebuilds etcd from the kubelet state on each node
- All cluster state is permanently lost and the cluster cannot recover (Correct answer)
- The kube-apiserver caches the last-known state and restores it
- Worker nodes continue running Pods using local disk snapshots
Correct answer: All cluster state is permanently lost and the cluster cannot recover
etcd is the sole source of truth for cluster state; without a backup and all members lost, all object definitions, secrets, and configurations are permanently gone.
Question 6: Which Kubernetes component is the ONLY one that should communicate directly with etcd?
- kubelet
- kube-scheduler
- kube-apiserver (Correct answer)
- kube-controller-manager
Correct answer: kube-apiserver
Only the kube-apiserver reads from and writes to etcd; all other components interact with cluster state through the API server.
Question 7: A Node running the kubelet suddenly loses network connectivity to the API server. What happens to the Pods already running on that Node?
- Pods are immediately terminated by the control plane
- Pods continue running; the Node is eventually marked NotReady after the grace period (Correct answer)
- Pods are migrated to another Node within 30 seconds
- etcd deletes the Pod records after 5 minutes
Correct answer: Pods continue running; the Node is eventually marked NotReady after the grace period
The kubelet keeps running existing Pods locally; the control plane marks the Node NotReady after the node-monitor-grace-period and may evict Pods after the pod-eviction-timeout.
Which component is responsible for maintaining the desired state of objects in a Kubernetes cluster?