本文主要是介绍七、K8S之DaemonSet,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
DaemonSet
一、概念
DaemonSet 是一个针对节点的Pod控制器,确保全部或者某些节点上运行一个Pod副本。当有节点加入集群时,也会为他们新增一个Pod。节点从集群移除,Pod也会被回收,删除DaemonSet 将会删除它创建的所有Pod。
DaemonSet 常见的用法:
- 在每个节点上运行集群守护进程
- 在每个节点上运行日志收集守护进程
- 在每个节点上运行监控守护进程
二、配置文件
apiVersion: apps/v1
kind: DaemonSet
metadata:name: fluentd
spec:selector:matchLabels:app: logging # 必须要和spec.template.metadata.labels 相匹配,用来声明DaemonSet控制哪些Podtemplate:metadata:labels:app: loggingname: fluentdspec:# 节点匹配nodeSelector:app: log_nodescontainers:- name: fluentd-esimage: agilestacks/fluentd-elasticsearch:v1.3.0env:- name: FLUENTD_ARGSvalue: -qqvolumeMounts:- name: containersmountPath: /var/lib/docker/containers- name: varlogmountPath: /varlogvolumes:- hostPath:path: /data/docker/containersname: containers- hostPath:path: /data/docker/logname: varlog
上述文件中spec.template.spec.nodeSelector
指定了带有标签app=log_nodes
的节点上部署, 如果不指定的话就是所有
这篇关于七、K8S之DaemonSet的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!