溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

DaemonSet服務守護進程的使用場景是什么

發(fā)布時間:2022-03-19 09:00:50 來源:億速云 閱讀:196 作者:iii 欄目:開發(fā)技術

這篇文章主要介紹“DaemonSet服務守護進程的使用場景是什么”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“DaemonSet服務守護進程的使用場景是什么”文章能幫助大家解決問題。

DaemonSet又是什么?

DaemonSet是守護進程集,簡寫為ds;是在所有的節(jié)點或者匹配的節(jié)點上都部署一個Pod。

[root@k8s-master01 ~]# kubectl get nodes
NAME           STATUS   ROLES    AGE   VERSION
k8s-master01   Ready    <none>   8d    v1.23.3
k8s-master02   Ready    <none>   8d    v1.23.3
k8s-master03   Ready    <none>   8d    v1.23.3
k8s-node01     Ready    <none>   8d    v1.23.3
k8s-node02     Ready    <none>   8d    v1.23.3

比如從上段代碼中可以看到我們集群有五個節(jié)點,Daemon會在這五個節(jié)點都部署一個Pod;又或者我們只需要在node節(jié)點部署,那么可以利用標簽的方式只在node節(jié)點上部署Pod。比如我們的calico網絡插件就是用DaemonSet部署的。

DaemonSet 的使用場景:

  • 監(jiān)控數(shù)據(jù)收集:需要每個節(jié)點上收集數(shù)據(jù)

  • 監(jiān)控節(jié)點狀態(tài)

  • 負責每個節(jié)點的網絡、存儲等組件,如calico、ceph等

DaemonSet的使用:

apiVersion: apps/v1
kind: DaemonSet
metadata:
  labels:
    app: nginx
  name: nginx
spec:
  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

注意:沒有副本數(shù)的參數(shù)

創(chuàng)建一個ds;然后查看可以看到每個節(jié)點上都生成了一個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 GATES
busybox       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沒有副本數(shù)

  • 最大失敗數(shù)需要寫數(shù)字,建議1

  • 更新策略建議使用OnDelete,保留歷史版本為1

關于“DaemonSet服務守護進程的使用場景是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關的知識,可以關注億速云行業(yè)資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。

AI