Driver FixRecommendedSound, Wi-Fi or graphics acting up? Check drivers firstFind missing or outdated drivers fast.Check DriversHalloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsPC HealthRecommendedCrashes, freezes, slowdowns? Check your PC nowSpot repairable issues before they interrupt work.Check PC×
Skip to content
World desk4 min

Lab 1C, Step 5: Why `kubectl get ds` Shows 0—and How to Troubleshoot It

A DaemonSet showing zero usually calls for checking which nodes qualify. Learn how to distinguish a scheduling issue from Pods stuck starting, and what the LFS242 Kubernetes 1.24 forum case actually found.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

If Lab 1C, Step 5 reports a DaemonSet with DESIRED, CURRENT, and READY all at zero, first check whether any nodes match its scheduling rules. In the specific LFS242 forum case from May 2022, the reported cause was a Kubernetes 1.24 kubeadm control-plane taint that the lab manifest did not tolerate. A DaemonSet at zero is different from one whose Pods have been created but are stuck starting; those states call for different checks.

Start by checking the DaemonSet and its eligible nodes

Run these commands, substituting the name and namespace used by your lab:

As an Amazon Associate I earn from qualifying purchases.

kubectl get ds -A
kubectl describe ds fluentd-ds
kubectl get nodes --show-labels
kubectl describe node <node-name>
kubectl get pods -A -o wide
kubectl get pods -n kube-system

If the DaemonSet is not in the current namespace, use kubectl describe ds <name> -n <namespace>. The description includes status, events, selectors, and the Pod template. Check .spec.template.spec.nodeSelector, node affinity, and tolerations against the labels and taints actually present on your nodes.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

A DaemonSet runs a copy of a Pod on each node that qualifies under its configuration; it does not necessarily run on every cluster node. Kubernetes automatically adds certain tolerations to DaemonSet Pods, including one for the unschedulable taint, but that does not make every custom taint tolerable. The Kubernetes DaemonSet guide explains how node selection works, including how adding a required node label can make a node eligible.

#1 Best Overall

To review recent cluster events, run:

kubectl get events -A --sort-by=.lastTimestamp

The DaemonSet status fields help distinguish the stages: desiredNumberScheduled is how many nodes should run the daemon Pod, while currentNumberScheduled counts nodes running at least one Pod where one is supposed to run. The Kubernetes API reference also defines ready, available, and unavailable counts.

Read the counts as different troubleshooting signals

What you see What it suggests What to check next
DESIRED is 0 No nodes currently qualify for the DaemonSet, or its configuration filters them all out. Inspect node labels, the DaemonSet selector and affinity, and node taints versus Pod tolerations. Review the DaemonSet description and events.
DESIRED is positive; CURRENT is 0 Nodes are expected to run the Pod, but none currently have one running. Inspect DaemonSet events and Pod creation or scheduling details, then describe relevant Pods if they exist.
DESIRED and CURRENT are positive; READY or AVAILABLE is 0 Pods have been scheduled, but they are not ready or available. Describe the Pods and check events, node capacity, image availability, container health, and cluster networking.

These are diagnostic directions, not proof of a single cause. Use the actual events and Pod states to narrow down the fault.

What happened in the LFS242 forum report

In a May 2022 Linux Foundation LFS242 forum thread, a learner said the YAML command returned daemonset.apps/fluentd-ds created, but kubectl get ds showed all five workload counts at zero. The discussion identified a Kubernetes 1.24 kubeadm control-plane taint, node-role.kubernetes.io/control-plane, that the existing lab instructions did not account for. The suggested options were to add a toleration to the DaemonSet Pod template or remove the taint.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Treat those as options reported for that historical lab setup, not blanket advice for production clusters. First inspect the taints and confirm whether the cluster is intended to schedule workloads on control-plane nodes. Changing a taint or adding a toleration can alter where workloads are allowed to run.

If the DaemonSet Pod exists but stays Pending or ContainerCreating

Once a Pod has been created, a zero DESIRED count is no longer the main clue. Find the Pod and inspect its events:

kubectl get pods -A -o wide
kubectl describe pod <pod-name> -n <namespace>
kubectl get pods -n kube-system

Kubernetes lists insufficient node resources and faulty Pod templates—for example, a crashing container or unavailable image—among causes of an unsuccessful DaemonSet rollout. Check the messages in the Pod description and events rather than assuming the original node-eligibility issue is still responsible. The DaemonSet troubleshooting guide covers rollout failures.

In the LFS242 thread, after the count rose to one, the DaemonSet Pod remained Waiting/ContainerCreating and CoreDNS Pods were also stuck in ContainerCreating. The helper suspected a containerd/CNI configuration problem and suggested rebuilding the lab cluster with cri-dockerd and CNI configured. The learner later reported healthy CoreDNS and a working cluster. That thread records a troubleshooting outcome, but does not independently prove a universal containerd or CNI cause.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Apply version-specific advice to your cluster, not just the old lab

The control-plane taint diagnosis belongs to the reported Kubernetes 1.24 kubeadm environment in 2022. Kubernetes versions and course instructions can differ, so check your cluster’s current taints and the instructions for the version you are running before applying the old workaround. A selector or affinity rule may also intentionally restrict the DaemonSet to a subset of nodes.

  • Use node labels, selectors, affinity, taints, tolerations, and DaemonSet events to diagnose a zero desired count.
  • Use Pod descriptions and events to diagnose Pods that exist but are not ready.
  • If several unrelated Pods, including system Pods such as CoreDNS, are stuck starting, investigate broader node runtime and networking health as well as the DaemonSet itself.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
PC Slower Than It Used to Be?Free scan - under a minute
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.