dc dotCreds
Certified Kubernetes Application Developer Practice Test

Kubernetes CKAD Practice Test

Start today’s free 10-question Kubernetes CKAD set with source-backed explanations, local progress, and a fresh rotation every morning.

10 Free Daily Questions Source-backed Explanations 200 Verified Questions

Questions updated at Aug 23, 2026, 1:05 AM CDT

Go Pro - One Time Unlock

Unlock the full CKAD bank

200 verified questions Exam Mode Practice Mode Detailed explanations Weak-area review No subscription - one-time unlock

Get the complete source-backed bank with Interview Questions, the full Study Guide, full Course Notes, detailed explanations, weak-area review, and exam-style practice.

Interview Questions Full Study Guide Full Course Notes Exam Mode Practice Mode Guided Course Detailed explanations Weak-area review No subscription
$4.99 One-time payment
See bundle and PDF options

We will confirm your site email in one quick checkout step.

Why DotCreds?

Practice with explanations that teach.

Source links for every answer Every wrong answer explained Guided Course included Practice and Exam Mode Weak-area tracking Same verified bank across web practice

What you get with free practice

10 Free Questions Daily Fresh set every day from the live bank
Detailed Explanations Learn with clear source-backed answers
Track Your Progress Daily history and performance insights
Upgrade Anytime Unlock the full bank when you are ready
Today's 10 Kubernetes CKAD questions

Use this Kubernetes CKAD practice test to review Certified Kubernetes Application Developer. Questions rotate daily and each answer links back to the source used to write it.

Today’s Set
10 questions
Rotates at 10:00 AM local time
Progress
0/10
Answered on this page
Accuracy
0%
Loading countdown…

200 verified questions are in the live bank. Free daily questions are selected from a rotating sample set. Unlock Pro to access the full question bank.

Preparing today’s free questions... Ordering the final locked-bank set before showing the practice cards.
Question 1 of 10
Objective Use Ingress rules to expose applications Services and Networking (20%)

For host `shop.example.com`, `/api` must route to Service `api` port 8080 and `/` must route to Service `web` port 80. Which design is correct?

Concept tested:
Question 2 of 10
Objective Choose and use the right workload resource Application Design and Build (20%)

A security agent must run on every Linux worker, including workers added later. Control-plane nodes are tainted and must remain excluded. Each agent reads node-local logs through a hostPath mount. Which workload resource best matches the requirement?

Concept tested:
Question 3 of 10
Objective Understand authentication, authorization and admission control Application Environment, Configuration and Security (25%)

A validating admission webhook protects production namespaces. During a webhook outage, the policy must prefer blocking new writes rather than silently allowing unvalidated objects. Which failure behavior is required?

Concept tested:
Question 4 of 10
Objective Use built-in CLI tools to monitor Kubernetes applications Application Observability and Maintenance (15%)

A namespace contains many Pods. The responder needs a compact table containing Pod name, phase, node, and restart count of the first container. Which built-in approach avoids manually reading every full YAML document?

Concept tested:
Question 5 of 10
Objective Understand multi-container Pod design patterns Application Design and Build (20%)

An application requires a configuration file generated from cluster metadata before the main binary starts. The generator should run once, write to `/work/config.yaml`, and exit; the application then reads that file for the rest of the Pod lifetime. Which Pod design is correct?

Concept tested:
Question 6 of 10
Objective Use Kustomize Application Deployment (20%)

A repository has a reusable base and a production overlay. The overlay should add two replicas and a production-only annotation without modifying the base files. Which Kustomize structure is appropriate?

Concept tested:
Question 7 of 10
Objective Understand Deployments and perform rolling updates Application Deployment (20%)

A Deployment's `.spec.selector` was created as `app=store`. The team now tries to change it to `app=store-v2` while preserving the same object name. The API rejects the update. What is the correct resolution?

Concept tested:
Question 8 of 10
Objective Provide and troubleshoot access to applications via Services Services and Networking (20%)

A container does not declare `containerPort`, but its process listens on 8080. Can a Service with numeric `targetPort: 8080` still route to it?

Concept tested:
Question 9 of 10
Objective Discover and use resources that extend Kubernetes Application Environment, Configuration and Security (25%)

A manifest for `kind: Database` in API group `data.example.com/v1` is applied before its CustomResourceDefinition. The server returns `no matches for kind "Database"`. What is the required ordering?

Concept tested:
Question 10 of 10
Objective Debugging in Kubernetes Application Observability and Maintenance (15%)

A process in a container runs as PID 1, and the ephemeral debug container must inspect that process with `ps` and a debugger. The Pod was not created with process namespace sharing. Which `kubectl debug` option is relevant when runtime support permits targeting?

Concept tested:
Locked preview

You are viewing today’s free 10. Unlock 190 more questions.

Unlock full bank
Daily sample Rotating practice Free daily questions are selected from a rotating sample set.
Pro bank Full access Unlock Pro to access the full question bank, Exam Mode, Practice Mode, and random tests.
CKAD Pro $4.99 one-time

Unlock all 200 Kubernetes CKAD questions, explanations, review tools, and exam-style practice.

50 Exam Practice Test $1.99 one-time

A 50-question CKAD PDF for short review sessions. Questions come first, then the answer review and explanations later in the file.

Linux / DevOps Access Bundle $6.99/month

Linux systems, Kubernetes, Terraform, data platform, and TensorFlow practice in one monthly unlock.

What’s includedCompTIA Linux+, CompTIA Cloud+, CompTIA CloudNetX, LFCS, CKA, Kubernetes CKS, Kubernetes CKAD, Terraform Associate, Databricks Data Engineer Associate, Databricks ML Associate, Databricks Generative AI Engineer Associate, TensorFlow Developer

Choose an unlock option to continue. We will confirm your site email in one quick checkout step.

Secure checkout powered by Stripe. Source-backed questions. Not brain dumps. Checkout stays on this page and unlocks the same Pro builder on this practice page.

Purchase options

Unlock the full CKAD bank.

Get the full bank, Exam Mode, Practice Mode, question sets, random tests, readiness tracking, saved box scores, and review tools for this exam.

The PDF versions keep questions first and move the answer review, explanations, and distractor notes to the back of the file.

200 verified exam-style questions Every choice explained Exam Mode and Practice Mode Question sets and random tests Readiness score and trends Previous test box scores

You've answered 0/10 questions in today's set.

Locked: 190 more questions in the full bank.

Locked: exam simulation mode, practice mode, readiness tracking, and saved review history.

Checkout stays on this page, so you can keep practicing, unlock the full bank, and start Exam Mode or Practice Mode when you are ready.

Cheat Sheets

7-day score keeper

Answer questions today and this will become a rolling 7-day scorecard.

Local history
Optional progress sync

Keep today’s practice moving

Guest progress saves automatically on this device. Add an email later when you want a magic link that keeps your daily CKAD practice in sync across browsers.

Guest progress saves on this device automatically

Guest progress is available without an account.

Source-backed answer review

The free daily Kubernetes CKAD set includes crawlable question text, answer choices, correct answer labels, objective mapping, and source links. Only the first SEO card includes answer explanations and any extra learning features. Pro-only bank questions stay locked; this section mirrors only the 10 free daily questions already shown on this page.

Question 1 For host `shop.example.com`, `/api` must route to Service `api` port 8080 and `/` must route to Service `web` port 80. Which design is correct?

Answer choices

  1. A. Define both paths under the host rule, each with a Service backend and an appropriate Prefix path type.
  2. B. Create a NetworkPolicy with ports 80 and 8080 and path labels.
  3. C. Create one Service whose selector contains the HTTP path strings.
  4. D. Set the Ingress TLS hosts array to `/api` and `/`.

Correct answer

Define both paths under the host rule, each with a Service backend and an appropriate Prefix path type.

Ingress rules map host and path matches to distinct Service backends, providing the requested L7 routing while Services continue to route to Pods.

Wrong-answer review

  • B. Create a NetworkPolicy with ports 80 and 8080 and path labels.: NetworkPolicy does not parse HTTP hosts or paths.
  • C. Create one Service whose selector contains the HTTP path strings.: Service selectors match Pod labels and cannot route by HTTP path.
  • D. Set the Ingress TLS hosts array to `/api` and `/`.: TLS hosts contain DNS hostnames, not URL paths or backend routing rules.

Extra learning features

Interview question

Q: How would you expose `shop.example.com` so `/api` routes to Service `api` port 8080 while `/` routes to Service `web` port 80, and what dependencies would you verify if one path returned errors? Strong answer: I would define a `networking.k8s.io/v1` Ingress with a host rule for `shop.example.com` and two HTTP paths whose backends reference the two Services and ports. `Prefix` is commonly appropriate when subpaths should also match. I would verify that an Ingress controller is installed and handling the selected class, then verify the Service ports, selectors, and ready EndpointSlices. If TLS is required, I would also reference a TLS Secret in the Ingress namespace. Ingress handles the L7 host/path decision; the Services still select and route to Pods.

  • networking.k8s.io/v1
  • host and path routing
  • Service backend mapping
  • Ingress controller/class
  • ready endpoints
  • TLS Secret

Caution: Do not accept an answer that assumes creating an Ingress object alone provides an Ingress controller.

Objective/domain: Services and Networking (20%)

Source: Ingress

Question 2 A security agent must run on every Linux worker, including workers added later. Control-plane nodes are tainted and must remain excluded. Each agent reads node-local logs through a hostPath mount. Which workload resource best matches the requirement?

Answer choices

  1. A. A StatefulSet with one PVC per worker.
  2. B. A DaemonSet with node selection for Linux workers and no toleration for the control-plane taint.
  3. C. A Deployment with replicas equal to the current worker count.
  4. D. A Job with parallelism equal to the node count.

Correct answer

A DaemonSet with node selection for Linux workers and no toleration for the control-plane taint.

Objective/domain: Application Design and Build (20%)

Source: DaemonSet

Question 3 A validating admission webhook protects production namespaces. During a webhook outage, the policy must prefer blocking new writes rather than silently allowing unvalidated objects. Which failure behavior is required?

Answer choices

  1. A. Add a ClusterRoleBinding for every requester to the webhook ServiceAccount.
  2. B. Set `sideEffects: Unknown` so the API server retries forever.
  3. C. Configure the webhook with a fail-closed behavior such as `failurePolicy: Fail`, after testing availability and timeout settings.
  4. D. Use `failurePolicy: Ignore`.

Correct answer

Configure the webhook with a fail-closed behavior such as `failurePolicy: Fail`, after testing availability and timeout settings.

Objective/domain: Application Environment, Configuration and Security (25%)

Source: Admission Control in Kubernetes

Question 4 A namespace contains many Pods. The responder needs a compact table containing Pod name, phase, node, and restart count of the first container. Which built-in approach avoids manually reading every full YAML document?

Answer choices

  1. A. Use `kubectl rollout history pods`.
  2. B. Use `kubectl get pods` with `-o custom-columns=...` or an equivalent JSONPath expression for the required fields.
  3. C. Use `kubectl top pods --show-phase --show-node --show-restarts`.
  4. D. Use `kubectl logs pods/*` and parse container headers.

Correct answer

Use `kubectl get pods` with `-o custom-columns=...` or an equivalent JSONPath expression for the required fields.

Objective/domain: Application Observability and Maintenance (15%)

Source: kubectl get

Question 5 An application requires a configuration file generated from cluster metadata before the main binary starts. The generator should run once, write to `/work/config.yaml`, and exit; the application then reads that file for the rest of the Pod lifetime. Which Pod design is correct?

Answer choices

  1. A. A native sidecar with `restartPolicy: Always` that rewrites the file continuously.
  2. B. A liveness probe that writes the file before each health check.
  3. C. Two separate Pods sharing only `localhost`.
  4. D. A regular init container and the application container mounting the same `emptyDir` volume at `/work`.

Correct answer

A regular init container and the application container mounting the same `emptyDir` volume at `/work`.

Objective/domain: Application Design and Build (20%)

Source: Init Containers

Question 6 A repository has a reusable base and a production overlay. The overlay should add two replicas and a production-only annotation without modifying the base files. Which Kustomize structure is appropriate?

Answer choices

  1. A. Copy the base YAML into the overlay and edit both copies whenever it changes.
  2. B. Reference the base under `resources` in the overlay and apply overlay patches or transformers for the production changes.
  3. C. Put Go-template expressions directly in the base manifests.
  4. D. Apply the base first, then imperatively edit the live Deployment.

Correct answer

Reference the base under `resources` in the overlay and apply overlay patches or transformers for the production changes.

Objective/domain: Application Deployment (20%)

Source: Declarative Management of Kubernetes Objects Using Kustomize

Question 7 A Deployment's `.spec.selector` was created as `app=store`. The team now tries to change it to `app=store-v2` while preserving the same object name. The API rejects the update. What is the correct resolution?

Answer choices

  1. A. Pause the Deployment, edit the selector, and resume it.
  2. B. Create a new Deployment with the new selector, or retain the immutable selector and change only compatible Pod-template labels.
  3. C. Patch the selector through the status subresource.
  4. D. Delete only the current ReplicaSet; the Deployment selector will then become editable.

Correct answer

Create a new Deployment with the new selector, or retain the immutable selector and change only compatible Pod-template labels.

Objective/domain: Application Deployment (20%)

Source: Deployments

Question 8 A container does not declare `containerPort`, but its process listens on 8080. Can a Service with numeric `targetPort: 8080` still route to it?

Answer choices

  1. A. Yes, but only with hostNetwork enabled.
  2. B. No. EndpointSlices contain only ports declared under containerPort.
  3. C. No. The API server creates a firewall deny whenever containerPort is omitted.
  4. D. Yes. `containerPort` is not required for numeric Service forwarding; the process must actually listen on the target port.

Correct answer

Yes. `containerPort` is not required for numeric Service forwarding; the process must actually listen on the target port.

Objective/domain: Services and Networking (20%)

Source: Service

Question 9 A manifest for `kind: Database` in API group `data.example.com/v1` is applied before its CustomResourceDefinition. The server returns `no matches for kind "Database"`. What is the required ordering?

Answer choices

  1. A. Create the custom resource first so Kubernetes infers and generates the CRD.
  2. B. Change the custom resource to `apiVersion: v1` while keeping `kind: Database`.
  3. C. Add a RoleBinding for the user and retry without the CRD.
  4. D. Install the CRD, wait until it is established and discoverable, then create the `Database` custom resource.

Correct answer

Install the CRD, wait until it is established and discoverable, then create the `Database` custom resource.

Objective/domain: Application Environment, Configuration and Security (25%)

Source: Extend the Kubernetes API with CustomResourceDefinitions

Question 10 A process in a container runs as PID 1, and the ephemeral debug container must inspect that process with `ps` and a debugger. The Pod was not created with process namespace sharing. Which `kubectl debug` option is relevant when runtime support permits targeting?

Answer choices

  1. A. Use `--sort-by=.status.pid`.
  2. B. Use `--target=<application-container>` so the debug container targets that container's process namespace.
  3. C. Use `--service=<application-service>`.
  4. D. Use `--previous` to join the previous PID namespace.

Correct answer

Use `--target=<application-container>` so the debug container targets that container's process namespace.

Objective/domain: Application Observability and Maintenance (15%)

Source: Debug Running Pods

Where to go after the daily web set

How are Kubernetes CKAD questions generated?

dotCreds builds Kubernetes CKAD practice questions from public exam objectives and Linux Foundation exam and documentation references. The questions are written for realistic study practice, not copied from exam dumps.

How are explanations sourced?

Each question includes an explanation and, when available, a source link back to the provider documentation or reference used to validate the answer. That keeps the practice tied to study material you can actually review.

What score do I get?

The page tracks today's answered count and accuracy for the 10-question daily set, then saves a 7-day score history on this device so you can see your recent practice trend.

Why use this site?

The site is the fastest way to start Kubernetes CKAD practice without installing anything. It is built for daily recall, quick weak-topic discovery, and source-backed explanations you can review immediately.