Kubernetes

k8s基础之五 DaemonSet守护进程集

本文主要是介绍k8s基础之五 DaemonSet守护进程集,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

DaemonSet:守护进程集,缩写为ds,在所有节点或者是匹配的节点上都部署一个pod

运行集群存储的daemon,比如ceph,或者glusterd,
节点的CNI网络插件,calico
节点日志的收集:fluentd或者是filebeat
节点的健康:node exporter
服务暴露:ingress nginx

 

创建一个daemonSet

首先daemonset和deployment差别不大,daemonset和deployment的区别就是类型不一样,然后多了一个update字段

apiVersion: apps/v1
kind: DaemonSet
metadata:
  annotations:
    deprecated.daemonset.template.generation: "2"
  creationTimestamp: "2021-12-06T15:21:02Z"
  generation: 2
  labels:
    app: nginx
  name: nginx
  namespace: default
spec:
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      creationTimestamp: null
      labels:
        app: nginx
    spec:
      containers:
      - image: nginx:1.15.2
        imagePullPolicy: IfNotPresent
        name: nginx
        resources: {}
        terminationMessagePath: /dev/termination-log
        terminationMessagePolicy: File
      dnsPolicy: ClusterFirst
      nodeSelector:
        ds: "True"
      restartPolicy: Always
      schedulerName: default-scheduler
      securityContext: {}
      terminationGracePeriodSeconds: 30
  updateStrategy:
    rollingUpdate:
      maxUnavailable: 1
    type: RollingUpdate
status:
  currentNumberScheduled: 2
  desiredNumberScheduled: 2
  numberAvailable: 2
  numberMisscheduled: 0
  numberReady: 2
  observedGeneration: 2
  updatedNumberScheduled: 2

 

DaemonSet更新和回滚

kubectl set image ds nginx nginx=1.15.3 --record
# 吧标签ds = nginx的容器镜像更新为1.15.3

#更新建议使用ondelete不建议使用RollingUpdateRollingUpdate
#因为使用RollingUpdateRollingUpdate的话影响范围很大,因此使用ondelete更新完手动删除一个不太重要的节点,如果有问题影响的只是哪一个比较不重要的节点

 

这篇关于k8s基础之五 DaemonSet守护进程集的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!