McAfee Secure

CNCF CKA Bundle

Exam Code: CKA

Exam Name Certified Kubernetes Administrator

Certification Provider: CNCF

Corresponding Certification: CKA

CNCF CKA Bundle $44.99

100% CNCF CKA Guaranteed Success With Testking Training Materials

Get Real CKA Exam Questions & Expert Verified Answers as Experienced on the Real Exam!

  • Questions & Answers

    CKA Questions & Answers

    58 Questions & Answers

    The ultimate exam preparation tool, Questions & Answers mirrors the actual CKA exam while allowing you to hone and measure every aspect of your test-taking ability.

  • CKA Video Course

    CKA Training Course

    138 Video Lectures

    CKA Video Course is developed by CNCF Professionals to help you pass the CKA exam.

    Description

    This course will improve your knowledge and skills required to pass Certified Kubernetes Administrator exam.
  • Study Guide

    CKA Study Guide

    268 PDF Pages

    Developed by industry experts, this 268-page guide spells out in painstaking detail all of the information you need to ace CKA exam.

Certified Kubernetes Administrator (CKA) Practice Tests

Satisfaction Guaranteed

Money Back Guarantee

Testking provides hassle-free money back guarantee with our products. That is because we have 100% trust in the abilities of our professional and experience product team, and our record is a proof of that.

99.6% PASS RATE
Total Cost: $194.97
Bundle Price: $149.98

Purchase Individually

  • Questions & Answers

    Questions & Answers

    58 Questions

    $124.99
  • CKA Video Course

    Training Course

    138 Video Lectures

    $39.99
  • Study Guide

    Study Guide

    268 PDF Pages

    $29.99

CNCF CKA Practice Test 99

Question 980

At Horizon observability, in a disposable simulated environment during a monitored release window: CronJob hourly-rollup in namespace observability unexpectedly stops launching runs; its spec has suspend: true after an old maintenance window. Work only within the stated target and verify before declaring success. Which operational control most directly prevents this failure or configuration drift?

  1. Add labels, readiness and EndpointSlice checks to Service deployment acceptance tests.
  2. Maintain an inventory of dedicated-node taints and explicitly reviewed workload tolerations.
  3. Validate registry credentials and image digests before rollout to constrained clusters.
  4. Assign ownership for resuming CronJobs and review concurrency policy when maintenance ends.

Explanation

Correct Answer

D:

Assign ownership for resuming CronJobs and review concurrency policy when maintenance ends. This reduces recurrence of the specific operational failure. It reinforces the action: Run kubectl -n observability patch cronjob hourly-rollup --type=merge -p '{"spec":{"suspend":false}}' after verifying schedules and missed-run policy. The relevant mechanism is: A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid.

Incorrect Answers

A:

This routine guards against another mechanism: A Service may exist without usable backends because labels or Pod readiness do not match expected routing. The recurring exposure in the current case is: A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid. The matching preventive check is “Assign ownership for resuming CronJobs and review concurrency policy when maintenance ends”.

B:

The suggested review tracks a different technical risk: A NoSchedule taint excludes Pods lacking a matching toleration even if the Node has free resources. Here the sustained control must address: A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid. Choose “Assign ownership for resuming CronJobs and review concurrency policy when maintenance ends”.

C:

That safeguard is relevant to: ImagePullBackOff indicates failed image retrieval; cluster DNS, credentials, registry availability and image names are distinct potential causes. The current failure instead follows from: A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid. Its prevention measure is “Assign ownership for resuming CronJobs and review concurrency policy when maintenance ends”.

Question 981

At Pinecrest logistics, in a sandbox Kubernetes cluster during a recovery tabletop exercise: CronJob nightly-sync in namespace fulfillment unexpectedly stops launching runs; its spec has suspend: true after an old maintenance window. Work only within the stated target and verify before declaring success. Which command or initial safe diagnostic step best addresses the stated lab task?

  1. Run kubectl -n fulfillment get deployment dispatch-api -o yaml and inspect immutable selector and Pod-template labels before planning controlled replacement.
  2. Run kubectl -n fulfillment patch cronjob nightly-sync --type=merge -p '{"spec":{"suspend":false}}' after verifying schedules and missed-run policy.
  3. Run kubectl -n fulfillment describe pod dispatch-api and inspect readiness failure events and probe configuration.
  4. Run kubectl -n fulfillment describe pod dispatch-api and compare last termination reason, memory limit and measured working set.

Explanation

Correct Answer

B:

Run kubectl -n fulfillment patch cronjob nightly-sync --type=merge -p '{"spec":{"suspend":false}}' after verifying schedules and missed-run policy. This is the appropriate command-line action or first safe diagnostic. The technical reason is: A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid. Validate the result with: Run kubectl -n fulfillment get cronjob nightly-sync -o yaml and verify suspend is false; observe a scheduled Job in the next eligible window. Execute changes only in an authorized disposable lab or after normal production change controls.

Incorrect Answers

A:

The proposed action belongs to the mechanism: A Deployment selector identifies Pods it owns and is generally immutable after creation; patching Service selectors alone does not repair ownership. Here the stated fault follows a different mechanism: A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid. The corrective choice is “Run kubectl -n fulfillment patch cronjob nightly-sync --type=merge -p '{"spec":{"suspend":false}}' after verifying schedules and missed-run policy”.

C:

This alternative is a response to another technical cause: A running container is not necessarily Ready; failing readiness can remove a Pod from ready Service endpoints. The reported case instead depends on: A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid. The action that directly addresses it is “Run kubectl -n fulfillment patch cronjob nightly-sync --type=merge -p '{"spec":{"suspend":false}}' after verifying schedules and missed-run policy”.

D:

The proposed action belongs to the mechanism: The container runtime can terminate a container when it exceeds its memory cgroup limit; increasing CPU requests does not repair a memory limit failure. Here the stated fault follows a different mechanism: A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid. The corrective choice is “Run kubectl -n fulfillment patch cronjob nightly-sync --type=merge -p '{"spec":{"suspend":false}}' after verifying schedules and missed-run policy”.

Question 982

At Pinecrest logistics, in a sandbox Kubernetes cluster during a recovery tabletop exercise: CronJob nightly-sync in namespace fulfillment unexpectedly stops launching runs; its spec has suspend: true after an old maintenance window. Work only within the stated target and verify before declaring success. Which Kubernetes behavior best explains the required change or diagnosis?

  1. Authentication establishes identity but authorization still requires permitted verbs, resources and scope in matching RBAC bindings.
  2. The Service routes to its configured backend target port; working DNS does not establish that the destination process is listening there.
  3. A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid.
  4. HPA CPU utilization is computed from reported metrics relative to requests; missing metrics or requests can prevent scaling decisions.

Explanation

Correct Answer

C:

A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid. This explains the stated condition. The corresponding action is: Run kubectl -n fulfillment patch cronjob nightly-sync --type=merge -p '{"spec":{"suspend":false}}' after verifying schedules and missed-run policy. The direct acceptance evidence is: Run kubectl -n fulfillment get cronjob nightly-sync -o yaml and verify suspend is false; observe a scheduled Job in the next eligible window.

Incorrect Answers

A:

The offered statement is true for this other mechanism: Authentication establishes identity but authorization still requires permitted verbs, resources and scope in matching RBAC bindings. It does not explain the facts described here, which follow from: A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid.

B:

This principle describes a separate cause: The Service routes to its configured backend target port; working DNS does not establish that the destination process is listening there. The reported condition is governed by: A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid. The two mechanisms should not be conflated.

D:

The offered statement is true for this other mechanism: HPA CPU utilization is computed from reported metrics relative to requests; missing metrics or requests can prevent scaling decisions. It does not explain the facts described here, which follow from: A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid.

Question 983

At Pinecrest logistics, in a sandbox Kubernetes cluster during a recovery tabletop exercise: CronJob nightly-sync in namespace fulfillment unexpectedly stops launching runs; its spec has suspend: true after an old maintenance window. Work only within the stated target and verify before declaring success. Which observation best verifies the requested outcome rather than an unrelated state?

  1. Run kubectl -n fulfillment get pod dispatch-api and inspect matching EndpointSlices after correcting the probe or backend.
  2. Verify the replacement Deployment has matching immutable selector and template labels plus desired available replicas.
  3. Confirm the scheduler events clear and the Pod is assigned after capacity or request adjustments.
  4. Run kubectl -n fulfillment get cronjob nightly-sync -o yaml and verify suspend is false; observe a scheduled Job in the next eligible window.

Explanation

Correct Answer

D:

Run kubectl -n fulfillment get cronjob nightly-sync -o yaml and verify suspend is false; observe a scheduled Job in the next eligible window. This validates the affected object or control path, rather than only showing a command completed. The underlying reason is: A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid. The intended action is: Run kubectl -n fulfillment patch cronjob nightly-sync --type=merge -p '{"spec":{"suspend":false}}' after verifying schedules and missed-run policy.

Incorrect Answers

A:

This observation would test a different technical dependency: A running container is not necessarily Ready; failing readiness can remove a Pod from ready Service endpoints. The current issue is governed by: A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid. Its decisive check is “Run kubectl -n fulfillment get cronjob nightly-sync -o yaml and verify suspend is false; observe a scheduled Job in the next eligible window”.

B:

The alternative verifies a different condition: A Deployment selector identifies Pods it owns and is generally immutable after creation; patching Service selectors alone does not repair ownership. The current case instead depends on: A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid. Confirm that “Run kubectl -n fulfillment get cronjob nightly-sync -o yaml and verify suspend is false; observe a scheduled Job in the next eligible window”.

C:

That test belongs to another control with this basis: The scheduler places Pods by requested resources and constraints, not the current shell's observed free CPU alone. In the current case, the governing reason is: A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid. The direct verification is “Run kubectl -n fulfillment get cronjob nightly-sync -o yaml and verify suspend is false; observe a scheduled Job in the next eligible window”.

Question 984

At Pinecrest logistics, in a sandbox Kubernetes cluster during a recovery tabletop exercise: CronJob nightly-sync in namespace fulfillment unexpectedly stops launching runs; its spec has suspend: true after an old maintenance window. Work only within the stated target and verify before declaring success. Which operational control most directly prevents this failure or configuration drift?

  1. Assign ownership for resuming CronJobs and review concurrency policy when maintenance ends.
  2. Add labels, readiness and EndpointSlice checks to Service deployment acceptance tests.
  3. Test probe paths, startup time and port assumptions before rolling out new workloads.
  4. Monitor CSI provisioning events and test StorageClass compatibility in advance.

Explanation

Correct Answer

A:

Assign ownership for resuming CronJobs and review concurrency policy when maintenance ends. This reduces recurrence of the specific operational failure. It reinforces the action: Run kubectl -n fulfillment patch cronjob nightly-sync --type=merge -p '{"spec":{"suspend":false}}' after verifying schedules and missed-run policy. The relevant mechanism is: A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid.

Incorrect Answers

B:

That safeguard is relevant to: A Service may exist without usable backends because labels or Pod readiness do not match expected routing. The current failure instead follows from: A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid. Its prevention measure is “Assign ownership for resuming CronJobs and review concurrency policy when maintenance ends”.

C:

This routine guards against another mechanism: A running container is not necessarily Ready; failing readiness can remove a Pod from ready Service endpoints. The recurring exposure in the current case is: A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid. The matching preventive check is “Assign ownership for resuming CronJobs and review concurrency policy when maintenance ends”.

D:

The suggested review tracks a different technical risk: A PVC binds only to compatible available storage or successful dynamic provisioning; absent provisioners, quotas or delayed binding can leave it Pending. Here the sustained control must address: A suspended CronJob skips creating scheduled Jobs even while its controller and time expression are valid. Choose “Assign ownership for resuming CronJobs and review concurrency policy when maintenance ends”.

Question 985

At Northstar finance, in an isolated training cluster during a scheduled maintenance rehearsal: DaemonSet invoice-api in namespace ledger reports fewer Ready than desired node Pods following a node pool change. Work only within the stated target and verify before declaring success. Which command or initial safe diagnostic step best addresses the stated lab task?

  1. On worker-a, run sudo systemctl status kubelet and sudo journalctl -u kubelet -n 80 --no-pager along with kubectl describe node worker-a from an admin context.
  2. Run kubectl -n ledger describe pod invoice-api and compare last termination reason, memory limit and measured working set.
  3. Run kubectl -n ledger describe daemonset invoice-api and compare target node eligibility, taints and Pod events.
  4. Run kubectl -n ledger get deployment invoice-api -o yaml and inspect immutable selector and Pod-template labels before planning controlled replacement.

Explanation

Correct Answer

C:

Run kubectl -n ledger describe daemonset invoice-api and compare target node eligibility, taints and Pod events. This is the appropriate command-line action or first safe diagnostic. The technical reason is: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers. Validate the result with: Run kubectl -n ledger get daemonset invoice-api and inspect desired/ready counts after the specific node issue is fixed. Execute changes only in an authorized disposable lab or after normal production change controls.

Incorrect Answers

A:

The offered action targets: Node readiness depends on the kubelet and node conditions; application restarts cannot fix a stopped kubelet service. The case facts point instead to: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers. Implement “Run kubectl -n ledger describe daemonset invoice-api and compare target node eligibility, taints and Pod events” to address that specific condition.

B:

This alternative is a response to another technical cause: The container runtime can terminate a container when it exceeds its memory cgroup limit; increasing CPU requests does not repair a memory limit failure. The reported case instead depends on: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers. The action that directly addresses it is “Run kubectl -n ledger describe daemonset invoice-api and compare target node eligibility, taints and Pod events”.

D:

The offered action targets: A Deployment selector identifies Pods it owns and is generally immutable after creation; patching Service selectors alone does not repair ownership. The case facts point instead to: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers. Implement “Run kubectl -n ledger describe daemonset invoice-api and compare target node eligibility, taints and Pod events” to address that specific condition.

Question 986

At Northstar finance, in an isolated training cluster during a scheduled maintenance rehearsal: DaemonSet invoice-api in namespace ledger reports fewer Ready than desired node Pods following a node pool change. Work only within the stated target and verify before declaring success. Which Kubernetes behavior best explains the required change or diagnosis?

  1. HPA CPU utilization is computed from reported metrics relative to requests; missing metrics or requests can prevent scaling decisions.
  2. Cluster DNS search domains and dnsPolicy control short-name resolution; resolving a public hostname is not proof of Kubernetes Service resolution.
  3. The scheduler places Pods by requested resources and constraints, not the current shell's observed free CPU alone.
  4. DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers.

Explanation

Correct Answer

D:

DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers. This explains the stated condition. The corresponding action is: Run kubectl -n ledger describe daemonset invoice-api and compare target node eligibility, taints and Pod events. The direct acceptance evidence is: Run kubectl -n ledger get daemonset invoice-api and inspect desired/ready counts after the specific node issue is fixed.

Incorrect Answers

A:

This principle describes a separate cause: HPA CPU utilization is computed from reported metrics relative to requests; missing metrics or requests can prevent scaling decisions. The reported condition is governed by: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers. The two mechanisms should not be conflated.

B:

Cluster DNS search domains and dnsPolicy control short-name resolution; resolving a public hostname is not proof of Kubernetes Service resolution. That explanation applies to a different technical failure. Here the controlling principle is: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers.

C:

The offered statement is true for this other mechanism: The scheduler places Pods by requested resources and constraints, not the current shell's observed free CPU alone. It does not explain the facts described here, which follow from: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers.

Question 987

At Northstar finance, in an isolated training cluster during a scheduled maintenance rehearsal: DaemonSet invoice-api in namespace ledger reports fewer Ready than desired node Pods following a node pool change. Work only within the stated target and verify before declaring success. Which observation best verifies the requested outcome rather than an unrelated state?

  1. Run kubectl -n ledger get daemonset invoice-api and inspect desired/ready counts after the specific node issue is fixed.
  2. Run kubectl -n ledger get pod invoice-api -o wide after an approved matching label or selector correction and confirm a suitable node.
  3. Verify the exact toleration or deliberate taint removal and confirm that the Pod schedules to an eligible node.
  4. Verify the replacement Deployment has matching immutable selector and template labels plus desired available replicas.

Explanation

Correct Answer

A:

Run kubectl -n ledger get daemonset invoice-api and inspect desired/ready counts after the specific node issue is fixed. This validates the affected object or control path, rather than only showing a command completed. The underlying reason is: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers. The intended action is: Run kubectl -n ledger describe daemonset invoice-api and compare target node eligibility, taints and Pod events.

Incorrect Answers

B:

That test belongs to another control with this basis: A hard nodeSelector must match a Node's actual labels; tolerations or Service routing cannot bypass the unmatched selector. In the current case, the governing reason is: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers. The direct verification is “Run kubectl -n ledger get daemonset invoice-api and inspect desired/ready counts after the specific node issue is fixed”.

C:

This observation would test a different technical dependency: A NoSchedule taint excludes Pods lacking a matching toleration even if the Node has free resources. The current issue is governed by: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers. Its decisive check is “Run kubectl -n ledger get daemonset invoice-api and inspect desired/ready counts after the specific node issue is fixed”.

D:

The alternative verifies a different condition: A Deployment selector identifies Pods it owns and is generally immutable after creation; patching Service selectors alone does not repair ownership. The current case instead depends on: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers. Confirm that “Run kubectl -n ledger get daemonset invoice-api and inspect desired/ready counts after the specific node issue is fixed”.

Question 988

At Northstar finance, in an isolated training cluster during a scheduled maintenance rehearsal: DaemonSet invoice-api in namespace ledger reports fewer Ready than desired node Pods following a node pool change. Work only within the stated target and verify before declaring success. Which operational control most directly prevents this failure or configuration drift?

  1. Review sizing and autoscaling headroom against known resource requests.
  2. Validate DaemonSet coverage whenever node labels, pools or taints change.
  3. Capture prior-container logs and restart reasons in workload incident runbooks.
  4. Monitor peak memory with appropriate safety margins and evaluate application leaks rather than unlimited resource increases.

Explanation

Correct Answer

B:

Validate DaemonSet coverage whenever node labels, pools or taints change. This reduces recurrence of the specific operational failure. It reinforces the action: Run kubectl -n ledger describe daemonset invoice-api and compare target node eligibility, taints and Pod events. The relevant mechanism is: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers.

Incorrect Answers

A:

That safeguard is relevant to: The scheduler places Pods by requested resources and constraints, not the current shell's observed free CPU alone. The current failure instead follows from: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers. Its prevention measure is “Validate DaemonSet coverage whenever node labels, pools or taints change”.

C:

The suggested review tracks a different technical risk: CrashLoopBackOff is a restart backoff symptom, not a root cause; the preceding container logs often preserve the terminating process error. Here the sustained control must address: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers. Choose “Validate DaemonSet coverage whenever node labels, pools or taints change”.

D:

That safeguard is relevant to: The container runtime can terminate a container when it exceeds its memory cgroup limit; increasing CPU requests does not repair a memory limit failure. The current failure instead follows from: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers. Its prevention measure is “Validate DaemonSet coverage whenever node labels, pools or taints change”.

Question 989

At Horizon observability, in a disposable simulated environment during a monitored release window: DaemonSet metrics-api in namespace observability reports fewer Ready than desired node Pods following a node pool change. Work only within the stated target and verify before declaring success. Which command or initial safe diagnostic step best addresses the stated lab task?

  1. Run kubectl -n observability get deployment metrics-api -o yaml and inspect immutable selector and Pod-template labels before planning controlled replacement.
  2. Run kubectl -n observability describe pvc metrics-data and kubectl get storageclass balanced-block before recreating either resource.
  3. Run kubectl -n observability get networkpolicy -o yaml and compare podSelector, peers, ports and CNI policy support.
  4. Run kubectl -n observability describe daemonset metrics-api and compare target node eligibility, taints and Pod events.

Explanation

Correct Answer

D:

Run kubectl -n observability describe daemonset metrics-api and compare target node eligibility, taints and Pod events. This is the appropriate command-line action or first safe diagnostic. The technical reason is: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers. Validate the result with: Run kubectl -n observability get daemonset metrics-api and inspect desired/ready counts after the specific node issue is fixed. Execute changes only in an authorized disposable lab or after normal production change controls.

Incorrect Answers

A:

This alternative is a response to another technical cause: A Deployment selector identifies Pods it owns and is generally immutable after creation; patching Service selectors alone does not repair ownership. The reported case instead depends on: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers. The action that directly addresses it is “Run kubectl -n observability describe daemonset metrics-api and compare target node eligibility, taints and Pod events”.

B:

The proposed action belongs to the mechanism: A PVC binds only to compatible available storage or successful dynamic provisioning; absent provisioners, quotas or delayed binding can leave it Pending. Here the stated fault follows a different mechanism: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers. The corrective choice is “Run kubectl -n observability describe daemonset metrics-api and compare target node eligibility, taints and Pod events”.

C:

The offered action targets: NetworkPolicy allows only explicitly selected paths once Pod ingress or egress isolation applies, and both directions may matter. The case facts point instead to: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers. Implement “Run kubectl -n observability describe daemonset metrics-api and compare target node eligibility, taints and Pod events” to address that specific condition.

Question 990

At Horizon observability, in a disposable simulated environment during a monitored release window: DaemonSet metrics-api in namespace observability reports fewer Ready than desired node Pods following a node pool change. Work only within the stated target and verify before declaring success. Which Kubernetes behavior best explains the required change or diagnosis?

  1. DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers.
  2. Node readiness depends on the kubelet and node conditions; application restarts cannot fix a stopped kubelet service.
  3. HPA CPU utilization is computed from reported metrics relative to requests; missing metrics or requests can prevent scaling decisions.
  4. NetworkPolicy allows only explicitly selected paths once Pod ingress or egress isolation applies, and both directions may matter.

Explanation

Correct Answer

A:

DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers. This explains the stated condition. The corresponding action is: Run kubectl -n observability describe daemonset metrics-api and compare target node eligibility, taints and Pod events. The direct acceptance evidence is: Run kubectl -n observability get daemonset metrics-api and inspect desired/ready counts after the specific node issue is fixed.

Incorrect Answers

B:

The offered statement is true for this other mechanism: Node readiness depends on the kubelet and node conditions; application restarts cannot fix a stopped kubelet service. It does not explain the facts described here, which follow from: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers.

C:

This principle describes a separate cause: HPA CPU utilization is computed from reported metrics relative to requests; missing metrics or requests can prevent scaling decisions. The reported condition is governed by: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers. The two mechanisms should not be conflated.

D:

NetworkPolicy allows only explicitly selected paths once Pod ingress or egress isolation applies, and both directions may matter. That explanation applies to a different technical failure. Here the controlling principle is: DaemonSets schedule according to node selection and toleration rules; unavailable node agents can break networking or logging on selected workers.