All Tools View Categories About Contact Privacy

DaemonSet YAML Generator

Build a valid Kubernetes DaemonSet (apps/v1) - one pod per node - from selector labels, pod labels and containers.

Runs entirely in your browser - nothing is uploaded and no cluster connection is made.
0
containers
0
selector labels
Your generated DaemonSet YAML will appear here.

About DaemonSet YAML Generator

A DaemonSet is how you run a pod on every node in the cluster - log shippers, metrics agents, network plugins and other node-level daemons. Kubernetes schedules one pod per node automatically, so there is no replicas field to set; the node count decides how many pods exist. The DaemonSet YAML Generator writes that manifest from a form so you do not have to recall the apps/v1 schema.

You set the DaemonSet name and, optionally, a namespace and top-level labels. Then you define the selector matchLabels - the labels the DaemonSet uses to find its pods - which must match the labels on the pod template. The generator keeps those in two clearly separated sections so the relationship stays obvious. Add containers with a name, image, ports and environment variables, and the resulting YAML is valid apps/v1 ready to apply with kubectl.

The name is validated as an RFC 1123 label, at least one container with a name and image is required, and the selector must have at least one match label. Problems are reported in a clear panel. Everything runs locally and nothing is uploaded.

Features

  • No replicas field - one pod per node, scheduled by Kubernetes.
  • Selector matchLabels - must match the pod template labels.
  • Pod template labels - separate, selector-aligned section.
  • Multiple containers - name, image, ports and env per container.
  • Validation - RFC 1123 name, at least one container and selector label.
  • Copy / Download / Print - get daemonset.yaml wherever you need it.

How to Use

  1. Name the DaemonSet. Type a valid RFC 1123 name and, optionally, a namespace.
  2. Add selector matchLabels. These identify the pods the DaemonSet manages.
  3. Add pod labels. They must match the selector.
  4. Add containers. For each, set a name, image, ports and env.
  5. Watch the preview. The DaemonSet YAML appears on the right.
  6. Export. Copy, download daemonset.yaml, or print.

Examples

Example 1 - Log agent. name fluentd, one container fluentd:latest with a port.

Example 2 - Monitor. name node-exporter with container ports 9100.

Example 3 - Env. Lines LOG_LEVEL=info become env entries.

Example 4 - Labels match. Selector app=agent and pod label app=agent stay aligned.

Example 5 - Namespaced. Setting namespace scopes it.

Benefits

  • No schema guesswork - valid apps/v1 output.
  • Correct wiring - selector and pod labels kept aligned.
  • Multi-container ready - add as many containers as needed.
  • Validated - names, selector and required fields checked.
  • Clean output - empty fields omitted.
  • Private - everything runs in the browser.
  • Copy, download or print - get the manifest where you need it.

Frequently Asked Questions

What is a DaemonSet?
A DaemonSet runs a copy of a pod on every node (or a selected set of nodes). It is used for node-level tasks like log collectors, monitors and network plugins.
Does a DaemonSet have replicas?
No. The number of pods is driven by the number of nodes, so there is no replicas field. Kubernetes schedules one pod per matching node.
How do I limit it to some nodes?
Use nodeSelector or node/pod affinity on the pod template to constrain which nodes run the DaemonSet pod.
What are selector matchLabels?
They are the labels the DaemonSet uses to find its pods and must match the labels on the pod template.
Is the name validated?
Yes. The DaemonSet name must be a valid RFC 1123 label (lowercase letters, numbers and hyphens).
Does this connect to a cluster?
No. Everything is assembled in your browser and nothing is uploaded.
Can I download it?
Yes. Copy the YAML, download daemonset.yaml, or print it.