什么是DaemonSet
DaemonSet 确保全部(或者一些)Node 上运行一个Pod的副本。
当有Node 加入集群时,也会为他们新增一个Pod。当有Node从集群移除时,这些Pod 也会被回收。删除DaemonSet 将会删除它创建的所有Pod。
使用DaemonSet的一些典型用法:
- 运行集群存储 daemon,例如在每个Node 上运行glusterd、ceph
- 在每个Node 上运行日志收集 daemon,例如fluentd、logstash
- 在每个Node 上运行监控daemon,例如Prometheus Node Exporter、collectd、Datadog代理、New Relic代理,或Ganglia gmond
apiVersion: apps/v1
kind: DaemonSet
metadata:
name: deamonset-example
labels:
app: deamonset
spec:
selector:
matchLabels:
name: deamonset-example ## 必须要与上面metadata中name相同
template:
metadata:
labels:
name: deamonset-example
spec:
containers:
- name: deamonset-example
image: wangyanglinux/myapp:v1