DaemonSets
DaemonSets manage Pods and are a resource in the apps
API group. They're useful when you need a replica of a particular Pod running on every node in the cluster. Some examples include monitoring Pods and logging Pods that you need to run on every node in the cluster.
As you'd expect, it implements a controller and a watch loop. This means that you can dynamically add and remove nodes from the cluster, and the DaemonSet will ensure you always have one Pod replica on each of them.
The following command shows two DaemonSets in the kube-system
namespace that exist on a newly installed three-node cluster.
The output is trimmed so that it fits the page:
kubectl get ds -n kube-system NAME DESIRED CURRENT READY NODE SELECTOR kube-proxy 3 3 3 beta.kubernetes.io/arch=amd64 weave-net 3 3 3 <none>
Notice that the desired state for each DaemonSet is three replicas. You do not need to specify this in...