KCNA — Cloud Native App Delivery Practice Questions
Cloud Native App Delivery Practice Questions
Test your understanding of CI/CD, GitOps, Helm, ArgoCD, Flux, and deployment strategies.
Question 1
What is the key difference between Continuous Delivery and Continuous Deployment?
- A) Continuous Delivery is faster
- B) Continuous Delivery requires human approval before production; Continuous Deployment doesn’t
- C) Continuous Deployment doesn’t include testing
- D) They are the same thing
Show Answer
Correct Answer: B
| Option | Explanation |
|---|---|
| A | Speed depends on the pipeline, not the practice |
| B | Continuous Delivery ensures code is always deployable but requires a human to approve production deployment. Continuous Deployment automatically deploys every change that passes tests — no human gate. |
| C | Both include comprehensive automated testing |
| D | They are different — Continuous Deployment is a more automated version of Continuous Delivery |
Question 2
In GitOps, what happens when someone manually changes a resource in the cluster using kubectl edit?
- A) The change persists until the next Git push
- B) The GitOps agent detects drift and reverts the change to match Git
- C) The change is automatically committed to Git
- D) kubectl edit is disabled in GitOps clusters
Show Answer
Correct Answer: B
| Option | Explanation |
|---|---|
| A | With self-heal enabled, manual changes don’t persist — they’re reverted |
| B | The GitOps agent (ArgoCD/Flux) continuously reconciles the cluster state with Git. Manual changes create drift, which the agent detects and reverts. Git is the single source of truth. |
| C | GitOps agents don’t write to Git — they only read from it and apply to the cluster |
| D | kubectl edit works normally — the agent just overrides manual changes |
Question 3
What is a Helm “release”?
- A) A version of the Helm CLI
- B) A published Helm chart in a repository
- C) A deployed instance of a Helm chart in a cluster
- D) A Git tag on a Helm chart
Show Answer
Correct Answer: C
| Option | Explanation |
|---|---|
| A | Helm CLI versions are not called “releases” in Helm terminology |
| B | A published chart is a “chart version” — not a release |
| C | A release is a running instance of a chart. When you run helm install my-app ./chart, it creates a release named “my-app”. You can have multiple releases of the same chart. |
| D | Git tags are version control markers, not Helm releases |
Question 4
Which GitOps tool has a built-in web UI?
- A) Flux
- B) ArgoCD
- C) Kustomize
- D) Tekton
Show Answer
Correct Answer: B
| Option | Explanation |
|---|---|
| A | Flux is CLI-driven — no built-in UI (third-party UIs like Weave GitOps are available) |
| B | ArgoCD includes a built-in web UI that shows application status, resource trees, sync state, and allows manual sync operations |
| C | Kustomize is a manifest customization tool, not a GitOps tool |
| D | Tekton is a CI/CD pipeline framework — different from GitOps |
Question 5
What is the default deployment strategy in Kubernetes?
- A) Blue-Green
- B) Canary
- C) Recreate
- D) Rolling Update
Show Answer
Correct Answer: D
| Option | Explanation |
|---|---|
| A | Blue-Green requires manual setup with multiple Deployments and Service switching |
| B | Canary requires service mesh or Argo Rollouts — not built-in default |
| C | Recreate is an option but not the default — it causes downtime |
| D | Rolling Update is the default strategy for Kubernetes Deployments. It gradually replaces old pods with new ones, controlled by maxUnavailable and maxSurge parameters. |
Question 6
Why should you avoid using the latest tag for container images in production?
- A) It’s not supported by Kubernetes
- B) It makes images larger
- C) It’s a mutable tag — not reproducible and makes rollbacks impossible
- D) It requires authentication to pull
Show Answer
Correct Answer: C
| Option | Explanation |
|---|---|
| A | latest is supported — it’s the default tag when none is specified |
| B | Tags don’t affect image size |
| C | latest is a mutable tag — it points to whatever was last pushed. You can’t tell which exact version is running, and you can’t rollback to a specific version. Use immutable tags like Git SHAs or semantic versions. |
| D | Authentication depends on the registry, not the tag |
Question 7
What is the main advantage of pull-based GitOps over push-based CI/CD?
- A) Faster deployments
- B) Cluster credentials stay inside the cluster — more secure
- C) Simpler pipeline configuration
- D) Better logging
Show Answer
Correct Answer: B
| Option | Explanation |
|---|---|
| A | Pull-based may actually be slightly slower due to polling intervals |
| B | In pull-based GitOps, the agent runs inside the cluster and pulls from Git. No external system (CI pipeline) needs cluster credentials, reducing the attack surface significantly. |
| C | GitOps can be more complex to set up initially than simple kubectl apply |
| D | Both methods can have good logging — this isn’t the main advantage |
Question 8
Which deployment strategy requires 2x the resources but provides instant rollback?
- A) Rolling Update
- B) Canary
- C) Blue-Green
- D) Recreate
Show Answer
Correct Answer: C
| Option | Explanation |
|---|---|
| A | Rolling Update requires only slightly more resources (maxSurge) |
| B | Canary requires slightly more resources for the canary pods |
| C | Blue-Green runs two full environments simultaneously (Blue = current, Green = new). Rollback is instant — just switch traffic back to Blue. The tradeoff is 2x resource cost. |
| D | Recreate uses the same resources but causes downtime |
Question 9
What are the four GitOps principles defined by OpenGitOps?
- A) Build, Test, Deploy, Monitor
- B) Declarative, Versioned and Immutable, Pulled Automatically, Continuously Reconciled
- C) Plan, Apply, Verify, Rollback
- D) Commit, Review, Merge, Release
Show Answer
Correct Answer: B
| Option | Explanation |
|---|---|
| A | These are CI/CD pipeline stages, not GitOps principles |
| B | The four GitOps principles: (1) Declarative — describe desired state, (2) Versioned and Immutable — stored in Git, (3) Pulled Automatically — agents pull from Git, (4) Continuously Reconciled — drift is detected and fixed |
| C | These sound like Terraform operations, not GitOps principles |
| D | These are Git workflow steps |
Question 10
What does ArgoCD’s “self-heal” feature do?
- A) Automatically fixes application bugs
- B) Restarts crashed containers
- C) Reverts manual changes in the cluster to match the desired state in Git
- D) Updates Helm chart dependencies
Show Answer
Correct Answer: C
| Option | Explanation |
|---|---|
| A | Self-heal doesn’t fix application code — it fixes cluster state |
| B | Container restarts are handled by kubelet, not ArgoCD |
| C | Self-heal detects when the actual cluster state differs from the desired state in Git (e.g., someone ran kubectl edit) and automatically reverts the change to match Git |
| D | Helm dependency updates are a chart management concern, not self-heal |
Score Yourself
| Score | Rating | Action |
|---|---|---|
| 9-10 | Excellent | Strong app delivery knowledge. Move to Chapter 8. |
| 7-8 | Good | Review topics you missed, then proceed. |
| 5-6 | Fair | Re-read GitOps, Helm, and deployment strategies. |
| Below 5 | Needs Work | Go back through all App Delivery sub-topics. |
What’s Next?
You’ve completed Chapter 7 — Cloud Native App Delivery. Now let’s prepare for the exam with tips, strategies, and mock exams.