k8s控制器,daemonset

一、DaemonSet 是什么?

DaemonSet = 守护进程集 核心作用:保证集群里 每一个节点 都运行 一个 Pod

  • 不需要写 replicas(节点数 = Pod 数)
  • 新增节点 → 自动创建 Pod
  • 删除节点 → 自动删除 Pod
  • 每个节点 永远只跑一个

二、典型应用场景

  1. 节点监控node-exporter(Prometheus 采集监控)
  2. 日志收集fluentdfilebeat
  3. 网络 / 存储插件calicoceph
  4. 其他 agent:各种监控代理、安全客户端

三、完整标准 YAML

node1,node2上运行

复制代码
vim k8s-ds.yaml

apiVersion: apps/v1
kind: DaemonSet
metadata:
  name: ds
  namespace: default
  labels:
    app: ds
spec:
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.20.2
        resources:
          limits:
            memory: 200Mi
          requests:
            cpu: 100m
            memory: 200Mi
        volumeMounts:
        - name: localtime
          mountPath: /etc/localtime
      terminationGracePeriodSeconds: 30
      volumes:
      - name: localtime
        hostPath:
          path: /usr/share/zoneinfo/Asia/Shanghai

kubectl apply -f k8s-ds.yaml

master(容忍),node1,node2上运行

复制代码
vim k8s-ds-tole.yaml

apiVersion: apps/v1
kind: DaemonSet
metadata:
  name: ds
  namespace: default
  labels:
    app: ds
spec:
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      tolerations:
      - key: node-role.kubernetes.io/control-plane #节点的污点是这个 → 必须匹配!
        operator: Exists # 存在即可,不用写value
        effect: NoSchedule # 容忍"不调度"污点
      containers:
      - name: nginx
        image: nginx:1.20.2
        resources:
          limits:
            memory: 200Mi
          requests:
            cpu: 100m
            memory: 200Mi
        volumeMounts:
        - name: localtime
          mountPath: /etc/localtime
      terminationGracePeriodSeconds: 30
      volumes:
      - name: localtime
        hostPath:
          path: /usr/share/zoneinfo/Asia/Shanghai

kubectl apply -f k8s-ds-tole.yaml
相关推荐
江畔柳前堤9 小时前
GO01-Go 语言与主流编程语言深度对比
开发语言·人工智能·后端·微服务·云原生·golang·go
探索云原生14 小时前
终于搞懂 Kueue:5 个核心对象一次讲透
linux·docker·ai·云原生·kubernetes
众人皆醒我独醉14 小时前
etcd,其实不是你以为的"数据库"——Kubernetes 大脑的六个反直觉真相
面试·kubernetes
月落星还在16 小时前
Spring MVC 与 Spring Boot:从“手动挡”到“自动驾驶”的进化论,兼谈前后端分离的哲学
spring boot·spring·云原生·mvc
蜀道山老天师17 小时前
从零读懂 K8s:核心概念、集群架构与工作原理
容器·架构·kubernetes
静待雨落19 小时前
Docker 高频命令
docker·容器
Database_Cool_19 小时前
数据库性能不够用,升级到什么方案好?阿里云 PolarDB(云原生数据库领导者,兼容 MySQL/PostgreSQL/Oracle)平滑升级与百倍弹性
数据库·阿里云·云原生
霸道流氓气质19 小时前
微服务架构核心概念业务示例
微服务·云原生·架构
ai_coder_ai20 小时前
编写自动化脚本,在自己后端服务中使用云原生Baas服务进行数据库相关操作
数据库·云原生·自动化
OsDepK20 小时前
Windows快速部署Docker
运维·docker·容器