23-k8s中的控制器资源-DaemonSet控制器

一、概述

daemonset资源:简称ds资源;

他可以实现与pod反亲和性同样的目的,每个节点分别创建一个相同的pod;

换句话说:如何再集群中每个节点上,分别创建一个相同的pod?

1,利用pod的反亲和性

2,使用daemonset资源创建pod;

daemonset资源能够确保所有节点上运行一个相同的pod;

典型的用法:

1,在每个节点上运行集群的守护进程(例如:flannel)

2,在每个节点上运行日志收集的守护进程(例如:filebeat)

3,在每个节点上运行监控的守护进程(例如:zabbix、prometheus)

温馨提示:

1,当有新的节点加入集群,也会在新的节点上创建pod;

2,当有节点被集群移除,这些pod也会被收回;

3,伤处daemonset资源,也会删除它所创建的pod;

4,如果节点被打了污点,且daemonset没有定义五点容忍,则pod并不会被调度到该节点上;

二、ds资源清单的创建

1,编辑资源清单

root@k8s231 daemonset# cat daemonset.yaml

apiVersion: apps/v1

kind: DaemonSet

metadata:

name: ds-01

spec:

selector:

matchLabels:

k8s: xinjizhiwa

template:

metadata:

labels:

k8s: xinjizhiwa

spec:

tolerations:

effect: NoSchedule

containers:

  • name: c1

image: nginx:1.20.1-alpine

2,创建ds资源

root@k8s231 daemonset# kubectl apply -f daemonset.yaml

3,查看验证,是否每个节点都创建了pod

验证成功,daemonset控制器资源,学习完毕;

相关推荐
分布式存储与RustFS11 小时前
镜像仓库的层别堆本地盘:用 RustFS 给 Docker Registry 当 S3 后端
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
闲云自留地18 小时前
K8s 的记忆大脑!ETCD 集群部署、etcdctl 命令与备份恢复全通关
容器·kubernetes·etcd
weirong21 小时前
Operator 上生产前补的 6 件事,和 5 件我明确不做的
kubernetes
孙克旭_1 天前
k8s基础组件与创建资源
运维·docker·容器·kubernetes
孙克旭_1 天前
云原生基础之Containerd容器运行时
运维·云原生
分布式存储与RustFS1 天前
RustFS 自建对象存储实战目录:110 篇按场景分类(持续更新)
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
java_logo2 天前
Docker 部署 EmulatorJS:轻松搭建浏览器复古游戏平台
游戏·docker·容器·复古游戏·轩辕镜像·emulatorjs·红白机
吴声子夜歌2 天前
Kubernetes权威指南——网络原理(一)
网络·容器·kubernetes
方便面不加香菜2 天前
Docker Container --容器及容器的操作案例详解
运维·docker·容器
无言听风雨丶2 天前
Kubernetes Service Mesh 与 mTLS 实战:从网络可达走向零信任服务通信
网络·kubernetes·service_mesh