Courseiva
Application DeploymenthardMultiple SelectObjective-mapped

CKAD Application Deployment Practice Question

Which TWO statements about kubectl apply vs kubectl create are correct? (Select two)

⚠ Common exam trap

Kubernetes often tests the misconception that `kubectl apply` and `kubectl create` are interchangeable, but the trap here is that candidates confuse the imperative `create` (which cannot update) with the declarative `apply` (which can), and they may also incorrectly assume `--dry-run=client` works identically for both commands.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

kubectl apply can update existing resources; kubectl create cannot.

The correct options are the statement about kubectl apply storing the last applied configuration in an annotation (the first option) and option C. The annotation `kubectl.kubernetes.io/last-applied-configuration` enables declarative updates with `kubectl apply`. Option C is correct because `kubectl apply` can update existing resources declaratively, while `kubectl create` will fail if the resource already exists. Option A is incorrect because `kubectl create` does not support `--dry-run=client`; only `kubectl apply` does. Options B, D, and E are incorrect as explained.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • Both commands support the --dry-run=client flag.

    Why it's wrong here

    Incorrect. Only `kubectl apply` supports `--dry-run=client`; `kubectl create` does not.

  • Both commands require a full YAML manifest file.

    Why it's wrong here

    Incorrect. `kubectl create` can create resources from command-line arguments or standard input, not necessarily a full YAML file.

  • kubectl apply can update existing resources; kubectl create cannot.

    Why this is correct

    Correct. `kubectl apply` can update existing resources; `kubectl create` cannot update and will fail if the resource exists.

  • kubectl create is the recommended way to manage production resources.

    Why it's wrong here

    Incorrect. `kubectl apply` is recommended for production to enable declarative management, not `kubectl create`.

  • Both commands can only be used to create resources, not update.

    Why it's wrong here

    Incorrect. `kubectl apply` can both create and update resources, while `kubectl create` only creates.

  • kubectl apply stores the last applied configuration in an annotation.

    Why this is correct

    It uses the annotation 'kubectl.kubernetes.io/last-applied-configuration'.

About these practice questions

This CKAD question is part of Courseiva's 160-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This CKAD practice question is part of Courseiva's free CNCF certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the CKAD exam.