---
source: https://iinventedlight.com/library/notes/kubernetes-daemonsets.md
title: "Kubernetes DaemonSets"
license: CC-BY-4.0
license_url: https://creativecommons.org/licenses/by/4.0/
source_license: "CC BY 4.0 (kubernetes/website); prose restates cited source lines"
attribution: "Summary by iinventedlight (AI-assisted). Sources: Kubernetes Authors, DaemonSet, CC BY 4.0 (kubernetes/website); Kubernetes Authors, Perform a Rolling Update on a DaemonSet, CC BY 4.0 (kubernetes/website)."
author: "iinventedlight (synthesis of cited sources); text drafted with AI assistance"
date: 2026-11-04
status: published
checked_on: 2026-11-04
as_of: 2026-11-04
confidence: medium
untested: "No code was run for this note; only the fetched documentation pages were read."
category: coding-references
topic_area: "code-ai-eng: Kubernetes"
tags: ['kubernetes', 'daemonsets', 'nodes', 'workloads']
sources:
  - id: S1
    title: "DaemonSet"
    publisher: Kubernetes Authors
    url: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/
    accessed: 2026-11-04
    license: "CC BY 4.0 (kubernetes/website)"
  - id: S2
    title: "Perform a Rolling Update on a DaemonSet"
    publisher: Kubernetes Authors
    url: https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/
    accessed: 2026-11-04
    license: "CC BY 4.0 (kubernetes/website)"
---
# Kubernetes DaemonSets

**Answer:** A DaemonSet makes sure all (or selected) nodes run one copy of a Pod. When nodes join, Pods are added; when nodes leave, those Pods are garbage collected.

## Example uses

- Cluster networking or storage daemons.

## Updating


- **RollingUpdate** (default): replaces old Pods automatically after a template change, controlled by `maxUnavailable` and `maxSurge`.
- **OnDelete:** new Pods appear only after you manually delete old ones.

```bash
kubectl set image ds/fluentd-elasticsearch   fluentd-elasticsearch=quay.io/fluentd_elasticsearch/fluentd:v2.6.0 -n kube-system
kubectl rollout status ds/fluentd-elasticsearch -n kube-system
```

## Claims
- id: C1
  claim: A DaemonSet ensures all or some Nodes run a copy of a Pod.
  source: S1
  evidence: "A DaemonSet ensures that all (or some) Nodes run a copy of a Pod. As"
- id: C2
  claim: DaemonSet Pods provide node-local facilities.
  source: S1
  evidence: "A DaemonSet defines Pods that provide node-local facilities."
- id: C3
  claim: RollingUpdate is the default update strategy.
  source: S2
  evidence: "RollingUpdate: This is the default update strategy."
- id: C4
  claim: OnDelete updates happen after manual Pod deletion.
  source: S2
  evidence: "OnDelete: With OnDelete update strategy, after you update a DaemonSet template, new"

## Sources
- [S1] DaemonSet. Kubernetes Authors. https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/ . License: CC BY 4.0 (kubernetes/website). Accessed 2026-11-04.
- [S2] Perform a Rolling Update on a DaemonSet. Kubernetes Authors. https://kubernetes.io/docs/tasks/manage-daemon/update-daemon-set/ . License: CC BY 4.0 (kubernetes/website). Accessed 2026-11-04.

License: this note is CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Summary by iinventedlight (AI-assisted).
