千家信息网

DaemonSet服务守护进程的使用场景是什么

发表于:2025-01-21 作者:千家信息网编辑
千家信息网最后更新 2025年01月21日,这篇文章主要介绍"DaemonSet服务守护进程的使用场景是什么"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"DaemonSet服务守护进程的使用场景是什么"
千家信息网最后更新 2025年01月21日DaemonSet服务守护进程的使用场景是什么

这篇文章主要介绍"DaemonSet服务守护进程的使用场景是什么"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"DaemonSet服务守护进程的使用场景是什么"文章能帮助大家解决问题。

DaemonSet又是什么?

DaemonSet是守护进程集,简写为ds;是在所有的节点或者匹配的节点上都部署一个Pod。

[root@k8s-master01 ~]# kubectl get nodesNAME           STATUS   ROLES    AGE   VERSIONk8s-master01   Ready       8d    v1.23.3k8s-master02   Ready       8d    v1.23.3k8s-master03   Ready       8d    v1.23.3k8s-node01     Ready       8d    v1.23.3k8s-node02     Ready       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                nginx-2c7xf   1/1     Running   0                2m2s   172.25.92.79     k8s-master02              nginx-kjdx8   1/1     Running   0                2m2s   172.25.244.200   k8s-master01              nginx-wwltz   1/1     Running   0                2m2s   172.27.14.199    k8s-node02                nginx-zl2lr   1/1     Running   0                2m2s   172.18.195.19    k8s-master03              nginx-znprg   1/1     Running   0                2m2s   172.17.125.7     k8s-node01                

需要注意的地方:

  • restartPolicy字段默认是Always

  • Daemon Set没有副本数

  • 最大失败数需要写数字,建议1

  • 更新策略建议使用OnDelete,保留历史版本为1

关于"DaemonSet服务守护进程的使用场景是什么"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注行业资讯频道,小编每天都会为大家更新不同的知识点。

0