Courseiva
Application Design and BuildmediumMultiple ChoiceObjective-mapped

CKAD Application Design and Build Practice Question

You need to schedule a task that runs every day at 2:00 AM. The task should be allowed to run even if a previous instance is still running. Which concurrencyPolicy should you set in the CronJob spec?

⚠ Common exam trap

Test-takers frequently confuse concurrencyPolicy with restartPolicy or assume 'Ignore' is a valid option, but Kubernetes only supports Allow, Forbid, and Replace, and the default is Allow.

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

Allow

Setting `concurrencyPolicy: Allow` in a CronJob spec permits a new job instance to start even if a previous instance is still running. This is the default behavior when the field is omitted, and it directly satisfies the requirement that the task must run at 2:00 AM regardless of any overlapping executions.

Answer analysis

Option-by-option breakdown

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

  • Allow

    Why this is correct

    The concurrencyPolicy Allow (which is also the default) permits a new Job to be created even if a previous Job from the same CronJob is still running. For a daily 02:00 schedule, this ensures the task starts at the scheduled time regardless of whether the prior run completed. Since the requirement only says the task should run every day and imposes no restriction on overlapping execution, Allow is the correct and standard policy.

  • Replace

    Why it's wrong here

    The concurrencyPolicy Replace would terminate the still-running Job from the previous execution and then launch a new Job at the 02:00 schedule. This is wrong because it forcefully kills the current run, which can lose progress, corrupt partial results, or interrupt critical work. A daily task should be allowed to finish naturally; killing it just because the next day's interval starts is not desired.

  • Forbid

    Why it's wrong here

    The concurrencyPolicy Forbid causes the CronJob controller to skip the schedule if any Job created by this CronJob is still running. For a daily task that is expected to run every day, an execution that exceeds 24 hours would cause the next day's run to be silently skipped, violating the every-day guarantee. Since the requirement does not ask to prevent overlapping runs, Forbid is over-restrictive and incorrect here.

  • Ignore

    Why it's wrong here

    The concurrencyPolicy field in a CronJob spec only accepts Allow, Forbid, or Replace as valid enum values; Ignore does not exist. Attempting to set concurrencyPolicy: Ignore would be rejected during validation by the Kubernetes API server. Therefore, Ignore is not a viable option because it cannot actually be configured on a CronJob.

About these practice questions

Courseiva writes every CKAD question from scratch — 160 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or 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.