DaemonSet服务守护进程的使用场景是什么
这篇文章主要介绍“DaemonSet服务守护进程的使用场景是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“DaemonSet服务守护进程的使用场景是什么”文章能帮助大家解决问题。
DaemonSet又是什么?
DaemonSet是守护进程集,简写为ds;是在所有的节点或者匹配的节点上都部署一个Pod。
[root@k8s-master01 ~]# kubectl get nodesNAME STATUS ROLES AGE VERSIONk8s-master01 Ready <none> 8d v1.23.3k8s-master02 Ready <none> 8d v1.23.3k8s-master03 Ready <none> 8d v1.23.3k8s-node01 Ready <none> 8d v1.23.3k8s-node02 Ready <none> 8d v1.23.3
比如从上段代码中可以看到我们集群有五个节点,Daemon会在这五个节点都部署一个Pod;又或者我们只需要在node节点部署,那么可以利用标签的方式只在node节点上部署Pod。比如我们的calico网络插件就是用DaemonSet部署的。
DaemonSet 的使用场景:
监控数据收集:需要每个节点上收集数据
监控节点状态
负责每个节点的网络、存储等组件,如calico、ceph等
DaemonSet的使用:
apiVersion: apps/v1kind: DaemonSetmetadata: labels: app: nginx name: nginxspec: revisionHistoryLimit: 10 selector: matchLabels: app: nginx template: metadata: creationTimestamp: null labels: app: nginx spec: containers: - name: nginx image: nginx:1.18.0 imagePullPolicy: Always resources: {} terminationMessagePath: /dev/termination-log terminationMessagePolicy: File dnsPolicy: ClusterFirst restartPolicy: Always schedulerName: default-scheduler securityContext: {} terminationGracePeriodSeconds: 30
注意:没有副本数的参数
创建一个ds;然后查看可以看到每个节点上都生成了一个nginx副本。
[root@k8s-master01 ~]# kubectl create -f nginx-ds.yaml daemonset.apps/nginx created[root@k8s-master01 ~]# kubectl get pod -o wide NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATESbusybox 1/1 Running 21 (2m45s ago) 8d 172.27.14.193 k8s-node02 <none> <none>nginx-2c7xf 1/1 Running 0 2m2s 172.25.92.79 k8s-master02 <none> <none>nginx-kjdx8 1/1 Running 0 2m2s 172.25.244.200 k8s-master01 <none> <none>nginx-wwltz 1/1 Running 0 2m2s 172.27.14.199 k8s-node02 <none> <none>nginx-zl2lr 1/1 Running 0 2m2s 172.18.195.19 k8s-master03 <none> <none>nginx-znprg 1/1 Running 0 2m2s 172.17.125.7 k8s-node01 <none> <none>
需要注意的地方:
restartPolicy字段默认是Always
Daemon Set没有副本数
最大失败数需要写数字,建议1
更新策略建议使用OnDelete,保留历史版本为1
关于“DaemonSet服务守护进程的使用场景是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网行业资讯频道,小编每天都会为大家更新不同的知识点。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341