Back to the course
Test yourself

Kubernetes administration

Final exam · 130 questions · answers explained as you pick
Architecture & Core Objects
20 questions
01In a cluster, which machines run your application workloads?
Incorrect — the control plane decides and stores state — it runs no workloads.
Correct — pods run on the worker nodes; that is their whole job.
Incorrect — etcd is the state store, not a place pods run.
Incorrect — a load balancer only distributes traffic to nodes.
02Why is the control plane kept separate from workloads?
Incorrect — the separation is about reliability, not cost.
Correct — isolating the brain from the muscle keeps the cluster stable under load.
Incorrect — pods run on Linux nodes perfectly well.
Incorrect — the control plane still relies on etcd.
03How does kubectl apply differ from kubectl create?
Incorrect — speed is not the difference between them.
Correct — apply reconciles the live object toward your file; create is one-shot.
Incorrect — create is imperative and errors on conflict.
Incorrect — they behave differently on an object that already exists.
04What does --dry-run=client -o yaml do?
Incorrect — it neither creates nor deletes anything.
Correct — it prints the YAML the command would create, so you save and edit it.
Incorrect — nothing runs — it only prints.
Incorrect — it does not check permissions.
05What is the order of the API request pipeline?
Incorrect — that reverses the real order.
Correct — who are you, may you, is it allowed by policy, then write to etcd.
Incorrect — authentication comes first, not admission.
Incorrect — admission runs before anything is persisted.
06A request returns HTTP 403. Which gate rejected it?
Incorrect — a failed authentication is 401, not 403.
Correct — 403 means you are known but not permitted.
Incorrect — admission rejections carry a policy message, not a bare 403.
Incorrect — the scheduler is not part of the request auth path.
07What does etcd hold?
Incorrect — images live in a registry, not etcd.
Correct — etcd is the single source of truth for the cluster.
Incorrect — it stores all objects, not just Secrets.
Incorrect — logs live on the nodes or in a log store.
08Why do production clusters run an odd number of etcd members?
Incorrect — it is about consensus, not memory.
Correct — Raft needs a majority to commit; 3 tolerate 1 failure, 5 tolerate 2.
Incorrect — even counts work but add no extra fault tolerance.
Incorrect — quorum is about consistency, not read speed.
09What is a controller’s core behavior?
Incorrect — controllers run continuously, not once.
Correct — this reconcile loop is the heart of Kubernetes.
Incorrect — only the API server writes to etcd.
Incorrect — that is kube-proxy’s job.
10By default, deleting a Deployment also…
Incorrect — only if you pass --cascade=orphan; the default cascades.
Correct — garbage collection follows owner references down the tree.
Incorrect — the namespace is untouched.
Incorrect — nodes are not affected.
11Which agent on a node actually starts containers?
Incorrect — kube-proxy handles Service networking, not containers.
Correct — the kubelet takes pod specs and drives the runtime to start them.
Incorrect — the scheduler only picks which node; it does not start containers.
Incorrect — etcd stores state.
12What does kube-proxy do?
Incorrect — that is the scheduler.
Correct — it sets up iptables/IPVS to turn a ClusterIP into an endpoint.
Incorrect — that is etcd.
Incorrect — you build images in CI; kube-proxy does not.
13What do containers in the same pod share?
Incorrect — they share the network and can share volumes.
Correct — this shared context is exactly what makes sidecars possible.
Incorrect — each container has its own image.
Incorrect — a pod is always scheduled onto one node.
14A bare pod’s node dies. What happens to the pod?
Incorrect — only controller-managed pods reschedule.
Correct — with no controller, there is nothing to replace it.
Incorrect — it is lost, not paused.
Incorrect — workloads do not run on the control plane.
15What is a ReplicaSet’s single job?
Incorrect — that is a Service.
Correct — it adds or removes pods until the count matches.
Incorrect — that is a ConfigMap.
Incorrect — that is kubeadm / cluster administration.
16If a ReplicaSet’s template labels do not match its selector…
Correct — apps/v1 validates the template labels against the selector; a mismatch fails with `selector` does not match template `labels`, so nothing is created.
Incorrect — that runaway only existed under the removed extensions/v1beta1 API; apps/v1 rejects the object before any pod is made.
Incorrect — it is a validation error, not a crash.
Incorrect — namespaces are unaffected.
17A Deployment manages which object directly?
Incorrect — it manages ReplicaSets, which manage pods.
Correct — Deployment → ReplicaSet → Pods; you drive the top.
Incorrect — nodes are infrastructure, not managed by a Deployment.
Incorrect — Services are separate objects you create yourself.
18What makes a Deployment rollback instant?
Incorrect — no rebuild is involved.
Correct — rollout undo simply re-scales a previous ReplicaSet.
Incorrect — that is not the rollback mechanism.
Incorrect — placement is unrelated to rollback.
19What does a namespace primarily scope?
Incorrect — it does not change hardware.
Correct — most per-team controls attach at the namespace.
Incorrect — the runtime is per-node.
Incorrect — namespaces are logical, not physical.
20By itself, does a namespace stop a pod reaching pods in another namespace?
Incorrect — traffic is allowed across namespaces unless a policy restricts it.
Correct — namespaces separate names and defaults, not traffic.
Incorrect — no namespace blocks traffic by default.
Incorrect — Secrets are not about network traffic.
20 questions · explanations appear as you answer
Workloads & Lifecycle
18 questions
01How does a rolling update work?
Incorrect — that would cause downtime — it is the Recreate strategy.
Correct — new pods come up before old ones leave, so there is no gap.
Incorrect — pods are replaced, never edited in place.
Incorrect — nodes are not part of a rollout.
02What does kubectl rollout undo do?
Incorrect — no rebuild happens.
Correct — the old ReplicaSet is retained, so it just scales back up.
Incorrect — the Deployment stays; only the version changes.
Incorrect — unrelated to rollback.
03The Recreate strategy means…
Incorrect — that describes RollingUpdate.
Correct — used only when two versions cannot safely run at once.
Incorrect — that is closer to blue/green.
Incorrect — it does update — just not gradually.
04A blue/green cutover is typically done by…
Incorrect — that would take everything down.
Correct — two versions run; you flip traffic by changing the selector.
Incorrect — that just stops the app.
Incorrect — never edit etcd by hand for this.
05A Job differs from a Deployment because it…
Incorrect — continuous running is a Deployment.
Correct — Jobs are for finite, run-to-completion work.
Incorrect — Jobs run containers like anything else.
Incorrect — a Job creates pods to do its work.
06A CronJob with concurrencyPolicy: Forbid will…
Incorrect — Forbid exists precisely to prevent that.
Correct — safe for jobs that must not overlap.
Incorrect — it still runs on schedule.
Incorrect — that is controlled by the history limits.
07In a pod spec, command overrides the image’s…
Incorrect — args overrides CMD.
Correct — command → ENTRYPOINT, args → CMD.
Incorrect — an unrelated Dockerfile field.
Incorrect — an unrelated Dockerfile field.
08In a pod spec, args overrides the image’s…
Incorrect — command overrides ENTRYPOINT.
Correct — args maps to CMD, the default arguments.
Incorrect — environment is set separately.
Incorrect — labels are metadata, not arguments.
09A ConfigMap is meant to hold…
Incorrect — sensitive values belong in a Secret.
Correct — it keeps settings out of the image so one image runs everywhere.
Incorrect — images live in a registry.
Incorrect — IPs are assigned at runtime, not configured.
10You edit a ConfigMap consumed as env vars. Running pods…
Incorrect — env vars are read once, at container start.
Correct — run kubectl rollout restart, or mount it as a file instead.
Incorrect — they keep running with the old values.
Incorrect — labels are unrelated.
11By default, a Secret is…
Incorrect — only if you enable encryption at rest.
Correct — anyone who can read it can decode it instantly.
Incorrect — it is persisted in etcd.
Incorrect — pods can read the secrets they mount.
12A safer way to consume a Secret in a pod is…
Incorrect — env leaks through crash dumps and child processes.
Correct — a file is read only by code that opens it.
Incorrect — never bake secrets into an image.
Incorrect — labels are plain, visible metadata.
13Init containers run…
Incorrect — they run before the app, to completion.
Correct — each must exit 0 before the next, and all before the app.
Incorrect — they always run first, regardless.
Incorrect — they precede the app, not follow it.
14A failing init container causes the pod to…
Incorrect — the app never starts until init succeeds.
Correct — it blocks the pod until the init step passes.
Incorrect — it retries rather than being deleted.
Incorrect — rescheduling would not fix a failing init step.
15The sidecar pattern depends on…
Correct — the helper shares the pod’s network and files with the app.
Incorrect — that defeats the shared context a sidecar needs.
Incorrect — no special scheduler is required.
Incorrect — sidecars use the normal pod network.
16When should you NOT put two things in one pod?
Incorrect — a shared lifecycle is a reason to combine them.
Correct — a pod scales and deploys as one unit — split them.
Incorrect — a proxy is a classic sidecar.
Incorrect — sharing a volume suits a single pod.
17The HorizontalPodAutoscaler scales based on…
Incorrect — it reacts to live metrics, not a clock.
Correct — it adjusts replicas to keep the metric near target.
Incorrect — node count is a cluster-autoscaler concern.
Incorrect — image size is irrelevant to scaling.
18For CPU-based autoscaling to work, pods must have…
Incorrect — unrelated to autoscaling.
Correct — utilization is a percentage of the request, so it is required.
Incorrect — storage is unrelated to CPU scaling.
Incorrect — unrelated to autoscaling.
18 questions · explanations appear as you answer
Scheduling & Placement
22 questions
01How does the scheduler place a pod?
Incorrect — placement weighs fit and score, not a simple rotation.
Correct — filter drops nodes that cannot run it; scoring ranks the survivors.
Incorrect — kubelets do not choose pods; the scheduler assigns them.
Incorrect — placement is deliberate, not random.
02A pod stays Pending with no node assigned. Most likely cause?
Incorrect — a crash shows CrashLoopBackOff, not unscheduled-Pending.
Correct — describe shows which predicate rejected every node.
Incorrect — Services have nothing to do with scheduling.
Incorrect — certs affect the control plane, not placement.
03Setting spec.nodeName on a pod does what?
Incorrect — it bypasses the scheduler entirely.
Correct — the kubelet there just runs it.
Incorrect — nodeName is not a toleration.
Incorrect — it does not label anything.
04With the scheduler down, newly created pods…
Incorrect — nothing assigns them without a scheduler.
Correct — no scheduler means no automatic placement.
Incorrect — they wait as Pending; they do not fail.
Incorrect — not without a toleration and a scheduler.
05Labels are used to…
Incorrect — labels are plain metadata, not security.
Correct — Services, ReplicaSets, and scheduling all rely on label selection.
Incorrect — that is the resources field.
Incorrect — names are separate from labels.
06A selector that matches no pod…
Incorrect — there is no error — it silently matches nothing.
Correct — a classic cause of a Service with zero endpoints.
Incorrect — no match means none, not all.
Incorrect — it is a silent logic issue, not a crash.
07A NoSchedule taint means a pod lands there only if it…
Incorrect — priority affects preemption, not taints.
Correct — the toleration is the pod opting back in.
Incorrect — resource requests do not override taints.
Incorrect — unrelated to taints.
08The NoExecute taint effect, unlike NoSchedule, also…
Incorrect — it is about eviction, not speed.
Correct — NoSchedule blocks new pods; NoExecute removes existing ones too.
Incorrect — the node stays; only intolerant pods leave.
Incorrect — it does not add labels.
09nodeAffinity is used to…
Incorrect — that is what taints do.
Correct — the counterpart to taints.
Incorrect — unrelated to placement labels.
Incorrect — unrelated.
10A required nodeAffinity rule with no matching node results in…
Incorrect — required rules are hard filters, not hints.
Correct — no matching node means it cannot be placed.
Incorrect — required rules are enforced, not ignored.
Incorrect — the scheduler will not violate a required rule.
11Pod anti-affinity is typically used to…
Incorrect — that is pod affinity — keeping things together.
Correct — anti-affinity keeps copies apart.
Incorrect — unrelated.
Incorrect — unrelated.
12The topologyKey in a pod (anti-)affinity rule sets…
Incorrect — unrelated.
Correct — hostname = per-node, zone = per-zone.
Incorrect — unrelated.
Incorrect — it is a topology domain, not a namespace.
13A topology spread constraint’s maxSkew controls…
Incorrect — it bounds imbalance, not an absolute cap.
Correct — skew is the allowed difference between domains.
Incorrect — unrelated.
Incorrect — unrelated.
14A high PriorityClass can…
Incorrect — priority is not about runtime speed.
Correct — that is how critical pods always schedule.
Incorrect — it does not bypass admission.
Incorrect — ResourceQuotas still apply.
15The scheduler decides placement based on a pod’s…
Incorrect — it uses requests, not real-time usage.
Correct — requests are what it reserves and places against.
Incorrect — unrelated to placement.
Incorrect — unrelated.
16Exceeding a container’s memory limit causes it to be…
Incorrect — CPU over-limit throttles; memory over-limit does not.
Correct — the kernel kills a container that exceeds its memory limit.
Incorrect — pods are not live-migrated.
Incorrect — the memory limit is strictly enforced.
17A DaemonSet runs…
Incorrect — that is a single Deployment replica.
Correct — ideal for log shippers, agents, and CNI.
Incorrect — it runs cluster-wide by default.
Incorrect — it tracks nodes, not a replica count.
18To run a DaemonSet pod on tainted control-plane nodes, it needs…
Incorrect — DaemonSets do not use a replica count.
Correct — the toleration lets it land on tainted nodes.
Incorrect — unrelated.
Incorrect — unrelated.
19A static pod is run by…
Incorrect — static pods bypass the scheduler.
Correct — no API server or scheduler is involved.
Incorrect — no controller manages a static pod.
Incorrect — unrelated.
20You change a static pod by…
Incorrect — the kubelet recreates the mirror; edits do not stick.
Correct — the kubelet reloads it from disk on save.
Incorrect — unrelated.
Incorrect — static pods are not scalable objects.
21A pod selects a non-default scheduler via…
Incorrect — it is a spec field, not a label.
Correct — it names the scheduler that should place the pod.
Incorrect — tolerations are about taints.
Incorrect — schedulerName is a first-class field.
22A pod naming a scheduler that is not running…
Incorrect — no other scheduler claims a named pod.
Correct — nothing ever places it.
Incorrect — it waits as Pending, not deleted.
Incorrect — it simply is never scheduled.
22 questions · explanations appear as you answer
Networking & Service Discovery
14 questions
01The Kubernetes network model requires that…
Incorrect — every pod gets its own IP.
Correct — this flat-network rule underlies everything.
Incorrect — pod-to-pod traffic is direct.
Incorrect — they can, without NAT.
02Pod IP addresses are…
Incorrect — they change whenever a pod is replaced.
Correct — front pods with a Service for a stable address.
Incorrect — the CNI assigns pod IPs.
Incorrect — pods have their own IPs.
03The CNI plugin is responsible for…
Incorrect — that is the scheduler.
Correct — the kubelet calls it when a pod starts.
Incorrect — unrelated.
Incorrect — unrelated.
04A cluster with no CNI installed has nodes that are…
Incorrect — they cannot network pods, so they stay NotReady.
Correct — the kubelet will not schedule pods it cannot give a network.
Incorrect — cordon is a separate manual action.
Incorrect — they are NotReady until a CNI is applied.
05A Service exists because…
Incorrect — unrelated.
Correct — a Service load-balances to the currently healthy pods.
Incorrect — they can; the issue is stable addressing.
Incorrect — Services work together with DNS.
06A Service with no endpoints usually means…
Incorrect — usually not — it is almost always labels or readiness.
Correct — a label mismatch or a failing readiness probe.
Incorrect — possible but far rarer than a label issue.
Incorrect — then the Service would not exist.
07A Service’s ClusterIP is…
Incorrect — nothing actually listens on it.
Correct — the kernel DNATs it to a ready endpoint.
Incorrect — it is a stable virtual IP in front of the pods.
Incorrect — ClusterIP is internal-only.
08Service traffic failing on one node only suggests…
Incorrect — that would break the whole cluster.
Correct — each node programs its own Service rules.
Incorrect — DNS problems are usually cluster-wide.
Incorrect — then it would fail everywhere.
09Cluster DNS (CoreDNS) lets a pod…
Incorrect — unrelated.
Correct — names resolve to the Service’s IP.
Incorrect — DNS resolves names; kube-proxy still routes.
Incorrect — unrelated.
10A default-deny egress policy that forgets port 53…
Incorrect — it breaks DNS.
Correct — pods cannot reach kube-dns once caches expire.
Incorrect — it silently blocks DNS traffic.
Incorrect — egress to port 53 is exactly what is blocked.
11An Ingress object does nothing until…
Incorrect — avoiding that is the point of Ingress.
Correct — the object is only rules; a controller acts on them.
Incorrect — Ingress is not a scalable workload.
Incorrect — unrelated.
12An Ingress routes requests by…
Incorrect — it routes HTTP, not raw pod IPs.
Correct — each rule maps a host/path to a Service.
Incorrect — unrelated.
Incorrect — routing is by host and path.
13Gateway API improves on Ingress mainly by…
Incorrect — the benefit is structure, not raw speed.
Correct — infra, ops, and app teams each own a resource.
Incorrect — it still supports TLS.
Incorrect — it still needs a controller.
14Installing only the Gateway API CRDs, with no controller…
Incorrect — CRDs alone do nothing.
Correct — a controller must implement them.
Incorrect — it is simply inactive, not harmful.
Incorrect — unrelated.
14 questions · explanations appear as you answer
Storage & State
10 questions
01A container’s own filesystem is…
Incorrect — it is wiped when the container restarts.
Correct — volumes are how you keep data across restarts.
Incorrect — it is private to the container.
Incorrect — it is writable, just temporary.
02An emptyDir volume…
Incorrect — it lives and dies with the pod.
Correct — good for sharing files between a pod’s containers.
Incorrect — that is a PVC-backed volume.
Incorrect — it is writable scratch space.
03A PersistentVolumeClaim (PVC) is…
Incorrect — that is the PV; the PVC is the request for one.
Correct — the pod names the claim, never the disk.
Incorrect — unrelated.
Incorrect — unrelated.
04A PVC stuck in Pending usually means…
Incorrect — unrelated to volume binding.
Correct — kubectl describe pvc shows the exact reason.
Incorrect — RBAC is not the usual cause.
Incorrect — that is an image-pull problem, not storage.
05A StorageClass enables…
Incorrect — unrelated.
Correct — a claim triggers the provisioner to mint a PV.
Incorrect — that is the scheduler.
Incorrect — unrelated.
06volumeBindingMode: WaitForFirstConsumer…
Incorrect — that is Immediate mode.
Correct — avoids stranding a volume in the wrong failure domain.
Incorrect — it still provisions, just later.
Incorrect — unrelated.
07ReadWriteOnce (RWO) means the volume is…
Incorrect — that is ReadWriteMany.
Correct — two pods on the same node can share an RWO volume.
Incorrect — that is ReadOnlyMany.
Incorrect — it mounts on a single node.
08reclaimPolicy: Delete means that when the PVC is deleted…
Incorrect — that is Retain.
Correct — convenient for scratch, dangerous for a database.
Incorrect — the volume is actually removed.
Incorrect — unrelated.
09A StatefulSet gives each pod…
Incorrect — that describes a Deployment.
Correct — db-0 keeps its volume and DNS name across reschedules.
Incorrect — it is built precisely for stateful storage.
Incorrect — each gets its own via volumeClaimTemplates.
10Deleting a StatefulSet…
Incorrect — by design it keeps them, to protect your data.
Correct — clean them up explicitly if you truly mean to.
Incorrect — unrelated.
Incorrect — it is deleted, not scaled.
10 questions · explanations appear as you answer
Access & Security
18 questions
01Authentication in Kubernetes…
Incorrect — there is no user database; it trusts external identity.
Correct — the result is a username and a set of groups.
Incorrect — that is authorization, a separate stage.
Incorrect — admission runs later, after authz.
02Because there is no "User" object, revoking a person means…
Incorrect — no such object exists.
Correct — identity comes from the credential, not a cluster object.
Incorrect — unrelated to their identity.
Incorrect — not how revocation works.
03Control-plane components authenticate to each other with…
Incorrect — they use certificates, not passwords.
Correct — each presents and verifies a cert.
Incorrect — components authenticate with certs.
Incorrect — not for the control-plane API.
04An expired apiserver or etcd certificate…
Incorrect — expiry is strictly enforced.
Correct — run kubeadm certs check-expiration ahead of time.
Incorrect — it stops the component.
Incorrect — kubeadm renews on upgrade, not forever automatically.
05A kubeconfig file holds…
Incorrect — unrelated.
Correct — a context ties a user to a cluster and default namespace.
Incorrect — unrelated.
Incorrect — roles live in the cluster, not the kubeconfig.
06The admin.conf that kubeadm generates is…
Incorrect — it is full cluster-admin.
Correct — never distribute it; issue scoped kubeconfigs instead.
Incorrect — it is cluster-wide.
Incorrect — it is valid and very powerful.
07RBAC is…
Incorrect — there are no deny rules in RBAC.
Correct — the default is deny.
Incorrect — it binds to users, groups, and service accounts.
Incorrect — it governs all API access.
08A ClusterRole attached by a namespaced RoleBinding grants its permissions…
Incorrect — that requires a ClusterRoleBinding.
Correct — the reuse trick: define once, grant per namespace.
Incorrect — only to the bound subject.
Incorrect — it does grant, but scoped to the namespace.
09A service account is…
Incorrect — it is an identity for workloads, not people.
Correct — you bind RBAC to it to give a pod API access.
Incorrect — unrelated.
Incorrect — unrelated.
10The default service account…
Incorrect — its token is auto-mounted into pods by default.
Correct — set automountServiceAccountToken: false where the API is not needed.
Incorrect — it has minimal rights by default.
Incorrect — it is used unless a pod overrides it.
11Admission controllers run…
Incorrect — they run after authn and authz.
Correct — the last gate before an object is persisted.
Incorrect — they act on writes.
Incorrect — they run inside the API server.
12A fail-closed validating webhook whose backend is down…
Incorrect — that would be fail-open.
Correct — scope it narrowly and exclude kube-system.
Incorrect — fail-closed does not skip.
Incorrect — unrelated.
13A securityContext lets you…
Incorrect — unrelated.
Correct — the core container-hardening controls.
Incorrect — unrelated.
Incorrect — unrelated.
14runAsNonRoot: true on an image that defaults to root…
Incorrect — it does not modify the image.
Correct — set runAsUser to a real non-root UID as well.
Incorrect — it is enforced at container start.
Incorrect — unrelated.
15Pod Security Admission enforces its profiles via…
Incorrect — it is built into the API server.
Correct — label the namespace with a mode and a profile.
Incorrect — no agent is needed.
Incorrect — PSS is separate from RBAC.
16The safe way to roll out the restricted profile is…
Incorrect — that breaks non-compliant workloads on next rollout.
Correct — find offenders before you block anyone.
Incorrect — unnecessary and disruptive.
Incorrect — that removes the protection entirely.
17By default, pod-to-pod traffic in a cluster is…
Incorrect — it is open until a policy restricts it.
Correct — NetworkPolicies add the allowlist you need.
Incorrect — not by default.
Incorrect — it crosses namespaces freely.
18A NetworkPolicy is only enforced if…
Incorrect — unrelated.
Correct — some CNIs (e.g. Flannel) do not, leaving policies inert.
Incorrect — RBAC is unrelated to network policy.
Incorrect — unrelated.
18 questions · explanations appear as you answer
Observability
8 questions
01What does metrics-server provide?
Incorrect — it keeps live usage only — use Prometheus for history.
Correct — a short-lived snapshot source.
Incorrect — that is a logging stack.
Incorrect — alerting is Prometheus/Alertmanager.
02kubectl top returns an error. The most likely cause is…
Incorrect — top reads cluster-wide metrics, not one pod.
Correct — it is not built in.
Incorrect — rarely the cause.
Incorrect — unrelated.
03To see the log of a container that just crashed, use…
Incorrect — that shows the current container, not the crashed one.
Correct — it reads the previous, crashed container’s output.
Incorrect — that shows events, not stdout.
Incorrect — that shows metrics, not logs.
04For fleet-wide log search you…
Incorrect — it only tails the pods you name.
Correct — Fluent Bit/Vector into Loki or Elasticsearch.
Incorrect — logs are not in etcd.
Incorrect — unrelated.
05Kubernetes Events are…
Incorrect — they expire after about an hour.
Correct — FailedScheduling, ImagePullBackOff, Unhealthy, and so on.
Incorrect — different from logs.
Incorrect — not metrics.
06The fastest way to see an object’s recent events is…
Incorrect — that is stdout, not events.
Correct — its recent events are listed at the bottom.
Incorrect — metrics, not events.
Incorrect — not how you read events.
07kubectl exec into a distroless container fails because…
Incorrect — the real issue is the missing shell.
Correct — use kubectl debug with an ephemeral tools container.
Incorrect — exec works wherever a shell exists.
Incorrect — unrelated.
08kubectl debug is used to…
Incorrect — unrelated.
Correct — troubleshoot minimal images without rebuilding.
Incorrect — unrelated.
Incorrect — unrelated.
8 questions · explanations appear as you answer
Cluster Operations
10 questions
01Before rebooting a node for maintenance you…
Incorrect — destructive and unnecessary.
Correct — stop new pods, then evict the existing ones gracefully.
Incorrect — unrelated.
Incorrect — unrelated.
02kubectl drain refuses to start unless you…
Incorrect — drain evicts them for you.
Correct — and --delete-emptydir-data when scratch volumes exist.
Incorrect — not a real step.
Incorrect — unrelated.
03Patching a node’s OS with zero workload impact uses…
Incorrect — that drops the pods abruptly.
Correct — move pods off first, then patch and return the node.
Incorrect — unrelated.
Incorrect — that just stops the app.
04A node that crashes without being drained…
Incorrect — pods reschedule only after the eviction timeout.
Correct — about five minutes, not instant — so drain first when planned.
Incorrect — not automatically.
Incorrect — unrelated.
05The version-skew rule says the kubelet may…
Incorrect — never — the kubelet must not lead.
Correct — which is why the control plane is upgraded first.
Incorrect — that is a different pairing.
Incorrect — skew is bounded.
06You upgrade a cluster…
Incorrect — you go one minor version at a time.
Correct — then the nodes, one by one.
Incorrect — that removes the capacity headroom you need.
Incorrect — the control plane goes first.
07On a kubeadm cluster you upgrade the control plane with…
Incorrect — that is for objects, not the control plane binaries.
Correct — after checking kubeadm upgrade plan.
Incorrect — restarting does not change versions.
Incorrect — unrelated to kubeadm.
08During a cluster upgrade, each worker node is…
Incorrect — that drops too much capacity at once.
Correct — one node at a time.
Incorrect — not required.
Incorrect — nodes must be upgraded too, within the skew rules.
09The one irreplaceable thing to back up is…
Incorrect — nodes are reproducible from images.
Correct — it holds all cluster state; losing it loses everything.
Incorrect — those live in a registry.
Incorrect — that is just a client credential file.
10Restoring an etcd snapshot is…
Incorrect — you cannot kubectl-restore etcd.
Correct — restoring over a live etcd corrupts it.
Incorrect — it is a deliberate manual procedure.
Incorrect — images do not contain cluster state.
10 questions · explanations appear as you answer
Diagnostics & Troubleshooting
10 questions
01The recommended troubleshooting order is…
Incorrect — logs are last — a Pending pod has none.
Correct — stop at the first “no.”
Incorrect — that hides the cause.
Incorrect — irrelevant to a broken workload.
02For a stuck pod, what do you read before logs?
Incorrect — irrelevant.
Correct — Pending/ImagePull/CrashLoop reasons live in Events.
Incorrect — not where the runtime reason is.
Incorrect — not read directly for this.
03An app is unreachable and its Service shows no endpoints. Check…
Incorrect — irrelevant.
Correct — no endpoints = no ready, label-matched pod.
Incorrect — unrelated to endpoints.
Incorrect — unrelated to endpoints.
04A container in CrashLoopBackOff — the cause is usually found in…
Incorrect — metrics do not show the crash reason.
Correct — bad config, a missing secret, a failed dependency, or OOMKilled.
Incorrect — unrelated to the crash.
Incorrect — rarely the cause.
05When kubectl itself stops responding, you diagnose the control plane with…
Incorrect — kubectl is down — it cannot help.
Correct — inspect the apiserver/etcd containers directly.
Incorrect — not a diagnostic path.
Incorrect — that also needs the API server.
06A frequent cause of a control-plane outage is…
Incorrect — not a typical cause.
Correct — kubeadm certs check-expiration catches it beforehand.
Incorrect — unrelated.
Incorrect — unrelated.
07A NotReady node is most often caused by…
Incorrect — unrelated.
Correct — check systemctl status kubelet and its journal.
Incorrect — unrelated.
Incorrect — unrelated.
08A silent cause of node trouble and pod eviction is…
Incorrect — unrelated.
Correct — it taints the node and evicts pods; watch image/log growth.
Incorrect — unrelated.
Incorrect — unrelated.
09A dropped connection between pods — work the path in this order…
Incorrect — not the network path.
Correct — test each link in the order a packet travels.
Incorrect — not the traffic path.
Incorrect — that is image pulling, not connectivity.
10Connectivity broke right after a policy change. Suspect…
Incorrect — unlikely to be caused by a policy change.
Correct — the most common self-inflicted network outage.
Incorrect — unrelated.
Incorrect — unrelated.
10 questions · explanations appear as you answer