Kubernetes 之 DaemonSet 根本原理

打印 上一主题 下一主题

主题 1013|帖子 1013|积分 3039

Kubernetes 之 DaemonSet 根本原理

DaemonSet 界说

DaemonSet 确保全部(或者某些)节点上运行一个 Pod 的副本。 当有节点参加集群时, 也会为他们新增一个 Pod 。 当有节点从集群移除时,这些 Pod 也会被接纳。删除 DaemonSet 将会删除它创建的全部 Pod。它最经常被使用在收集集群日志的用途上。
DaemonSet 使用

  1. apiVersion: apps/v1
  2. kind: DaemonSet
  3. metadata:
  4.   name: fluentd-elasticsearch
  5.   namespace: kube-system
  6.   labels:
  7.     k8s-app: fluentd-logging
  8. spec:
  9.   selector:
  10.     matchLabels:
  11.       name: fluentd-elasticsearch
  12.   template:
  13.     metadata:
  14.       labels:
  15.         name: fluentd-elasticsearch
  16.     spec:
  17.       tolerations:
  18.       # 这些容忍度设置是为了让该守护进程集在控制平面节点上运行
  19.       # 如果你不希望自己的控制平面节点运行 Pod,可以删除它们
  20.       - key: node-role.kubernetes.io/control-plane
  21.         operator: Exists
  22.         effect: NoSchedule
  23.       - key: node-role.kubernetes.io/master
  24.         operator: Exists
  25.         effect: NoSchedule
  26.       containers:
  27.       - name: fluentd-elasticsearch
  28.         image: quay.io/fluentd_elasticsearch/fluentd:v2.5.2
  29.         resources:
  30.           limits:
  31.             memory: 200Mi
  32.           requests:
  33.             cpu: 100m
  34.             memory: 200Mi
  35.         volumeMounts:
  36.         - name: varlog
  37.           mountPath: /var/log
  38.       # 可能需要设置较高的优先级类以确保 DaemonSet Pod 可以抢占正在运行的 Pod
  39.       # priorityClassName: important
  40.       terminationGracePeriodSeconds: 30
  41.       volumes:
  42.       - name: varlog
  43.         hostPath:
  44.           path: /var/log
复制代码
  1. root@k8s-master1:~# kubectl get ds -n kube-system
  2. NAME                    DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR            AGE
  3. fluentd-elasticsearch   3         3         3       3            3           <none>                   112s
  4. kube-proxy              3         3         3       3            3           kubernetes.io/os=linux   18d
  5. root@k8s-master1:~# kubectl get pods -n kube-system -owide -l name=fluentd-elasticsearch
  6. NAME                          READY   STATUS    RESTARTS   AGE    IP               NODE          NOMINATED NODE   READINESS GATES
  7. fluentd-elasticsearch-6fmkb   1/1     Running   0          3m8s   10.244.194.122   k8s-worker1   <none>           <none>
  8. fluentd-elasticsearch-pd4ps   1/1     Running   0          3m8s   10.244.159.156   k8s-master1   <none>           <none>
  9. fluentd-elasticsearch-tkkvq   1/1     Running   0          3m8s   10.244.126.2     k8s-worker2   <none>           <none>
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

吴旭华

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表