#DaemonSet 也是 Kubernetes 提供的一个 default controller,它实际是做一个守护进程的控制器 #首先能保证集群内的每一个节点都运行一组相同的 pod,主要用于与在所有node执行所有相同的操作的场景,DaemonSets可以指定运行在某个节点上; #当增加node节点时,这个节点会自动创建一个pa副本 #当删除node节点时,pa副本会自动删除 #而且它会跟踪每个 pod 的状态,当这个 pod 出现异常、Crash 掉了,会及时地去 recovery 这个状态。 #删除daemonset会删除它们创建的pod #使用场景 # 需要在每一个node节点运行一个存储服务,例如gluster,ceph # 需要在每一个node节点运行一个日志收集服务,例如fluentd,logstash # 需要在每一个node节点运行一个监控服务,例如Prometheus Node Exporter,zabbix agent等 apiVersion: apps/v1 kind: DaemonSet metadata: # DaemonSet的名称 name: daemonset-nginx # 命名空间 namespace: kube-system labels: # DaemonSet 标签 la-nginx: daemonset-nginx spec: # 标签选择器 selector: # 匹配拥有哪些标签的pod matchLabels: # 使用 k2-nginx: daemonset-nginx2 标签的template k2-nginx: daemonset-nginx2 # 定义模板 template: metadata: labels: # 定义标签 k2-nginx: daemonset-nginx2 spec: # DaemonSet将在node1节点上创建Pod nodeName: localhost7F.localdomain # 定义容忍度,容忍哪些污点 tolerations: - key: node-role.kubernetes.io/master effect: NoSchedule # 定义容器 containers: - name: c-nginx image: nginx
标签:node,控制器,nginx,DaemonSet,pod,节点,daemonset From: https://www.cnblogs.com/Yuanbangchen/p/17188511.html