Courseiva
Kubernetes Fundamentals →mediumMultiple Choice

KCNA Kubernetes Fundamentals Practice Question

Which API version is correct for a Deployment in modern Kubernetes (v1.29+)?

⚠ Common exam trap

The exam often tests the misconception that `v1` is the default API version for all resources, but candidates must remember that Deployments specifically require the `apps/v1` group, not the core `v1` group.

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

✓

apiVersion: apps/v1

In modern Kubernetes (v1.29+), the `apps/v1` API version is the stable and recommended version for the Deployment resource. The `apps/v1` API has been the default since Kubernetes 1.9, and all older beta versions (e.g., `apps/v1beta2`, `extensions/v1beta1`) have been removed as of Kubernetes 1.16. Using `apps/v1` ensures compatibility with current cluster features and avoids deprecation warnings.

Answer analysis

Option-by-option breakdown

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

  • ✗

    apiVersion: extensions/v1beta1

    Why it's wrong here

    The extensions/v1beta1 group was removed in Kubernetes v1.16, so v1.29 rejects this manifest outright. It is tempting because it was the original Deployment API and appears in older tutorials and manifests, and would have worked on clusters predating the apps/v1 migration.

  • ✗

    apiVersion: v1

    Why it's wrong here

    Deployments belong to the apps/v1 group, so apiVersion: v1 is invalid and the manifest is rejected. It is tempting because v1 is the correct group for core objects such as Pods and Services, and the bare version string looks familiar, but workload controllers moved to named API groups.

  • ✓

    apiVersion: apps/v1

    Why this is correct

    Deployments moved from the deprecated extensions/v1beta1 to the stable apps/v1 group, which remains the required API version through Kubernetes v1.29 and beyond. Specifying apps/v1 satisfies the stem's modern-cluster constraint, ensuring the manifest is accepted rather than rejected as an unknown or removed resource type.

  • ✗

    apiVersion: apps/v1beta2

    Why it's wrong here

    apps/v1beta2 was superseded by apps/v1 and removed in v1.16, so v1.29 rejects it. It is tempting because it sits in the correct apps group and looks close to the current version, and would have been valid on clusters running Kubernetes 1.8 through 1.15.

About these practice questions

This KCNA question is part of Courseiva's 930-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 KCNA 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 KCNA exam.