栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

《Kubernetes知识篇:Kubernetes之Daemonset控制器》

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

《Kubernetes知识篇:Kubernetes之Daemonset控制器》

文章目录
  • 一、DaemonSet概述
  • 二、DaemonSet工作原理
  • 三、Daemonset应用场景
  • 四、DaemonSet与Deployment区别
  • 五、DaemonSet资源清单文件编写技巧
  • 总结:整理不易,如果对你有帮助,可否点赞关注一下?


一、DaemonSet概述

DaemonSet(守护进程集)和守护进程类似,它在符合匹配条件的节点上均部署一个Pod。DaemonSet确保全部(或者某些)节点上运行一个Pod副本。当有新节点加入集群时,也会为它们新增一个Pod。当节点从集群中移除时,这些Pod也会被回收,删除DaemonSet将会删除它创建的所有Pod。


二、DaemonSet工作原理

Daemonset的控制器会监听kuberntes的Daemonset 对象、pod 对象、node 对象,这些被监听的对象之变动,就会触发syncLoop循环让kubernetes集群朝着Daemonset对象描述的状态进行演进。


三、Daemonset应用场景

1、在集群的每个节点上运行存储,比如:glusterd 或 ceph。
2、在每个节点上运行日志收集组件,比如:flunentd 、 logstash、filebeat 等。
3、在每个节点上运行监控组件,比如:Prometheus、 Node Exporter 、collectd 等。


四、DaemonSet与Deployment区别

Deployment部署的副本Pod会分布在各个Node上,每个Node都可能运行一个或多个副本;而DaemonSet的不同之处在于每个Node上最多只能运行一个副本。


五、DaemonSet资源清单文件编写技巧
#查看定义Daemonset资源需要的字段
[root@k8s-client-17 yaml]# kubectl explain ds
KIND:     DaemonSet
VERSION:  apps/v1

DEscriptION:
     DaemonSet represents the configuration of a daemon set.

FIELDS:
   apiVersion	 #资源使用的api版本,与上述VERSION:  apps/v1相同
   kind	  #资源类型,与上述KIND:     DaemonSet相同
   metadata	 #元数据信息
   spec	 #定义容器信息
   status	 #状态信息,不能修改


#查看DaemonSet的spec字段
[root@k8s-client-17 yaml]# kubectl explain ds.spec
KIND:     DaemonSet
VERSION:  apps/v1

RESOURCE: spec 

DEscriptION:
     The desired behavior of this daemon set. More info:
     https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status

     DaemonSetSpec is the specification of a daemon set.

FIELDS:
   minReadySeconds	 #当新的pod启动多少秒后,再kill掉旧的pod
   revisionHistoryLimit	 #历史版本
   selector	 -required- #必须字段,用于匹配pod的标签选择器
   template	 -required- #必须字段,定义pod模板
   updateStrategy	 #升级策略
 

总结:整理不易,如果对你有帮助,可否点赞关注一下?

更多详细内容请参考:企业级K8s集群运维实战

转载请注明:文章转载自 www.mshxw.com
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号