Kubernetes 101 : DaemonSets
A DaemonSet is a kubernetes controller that ensures that one copy of a certain pod is running on each node of the cluster.
Programs that collect data are a good candidate for this. For example fluentd and Logstash.
Their purpose is to run daemon processes.
A Daemonset also guarantees that if we add a node to the cluster, the new node will also run a copy of the daemonSet pod.
Daemonsets and deplyoments:
A deployment will restart a pod on another node if the node on which the pod is running crashes.
A daemonSet would not, because it only runs one copy of a pod on each node.
Remark:
DaemonSets are not taken into account by the kubernetes Scheduler.
Below is the Yaml configuration file "daemonset_1.yaml" for the a DaemonSet for "fluend" pod, deployed in the "kube-system" namespace:
Comments