这篇文章主要为大家介绍了使用DaemonSet服务守护进程的使用场景讲解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多计步
DaemonSet又是什么?
DaemonSet是守护进程集,简写为ds;是在所有的节点或者匹配的节点上都部署一个Pod。
[root@k8s-master01 ~]# kubectl get nodes
NAME STATUS ROLES AGE VERSION
k8s-master01 Ready <none> 8d v1.23.3
k8s-master02 Ready <none> 8d v1.23.3
k8s-master03 Ready <none> 8d v1.23.3
k8s-node01 Ready <none> 8d v1.23.3
k8s-node02 Ready <none> 8d v1.23.3
比如从上段代码中可以看到我们集群有五个节点,Daemon会在这五个节点都部署一个Pod;又或者我们只需要在node节点部署,那么可以利用标签的方式只在node节点上部署Pod。比如我们的calico网络插件就是用DaemonSet部署的。
DaemonSet 的使用场景:
- 监控数据收集:需要每个节点上收集数据
- 监控节点状态
- 负责每个节点的网络、存储等组件,如calico、ceph等
DaemonSet的使用:
apiVersion: apps/v1
kind: DaemonSet
metadata:
labels:
app: nginx
name: nginx
spec:
revisionHistoryLimit: 10
selector:
matchLabels:
app: nginx
template:
metadata:
creationTimestamp: null
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.18.0
imagePullPolicy: Always
resources: {}
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
dnsPolicy: ClusterFirst
restartPolicy: Always
schedulerName: default-scheduler
securityContext: {}
terminationGracePeriodSeconds: 30
注意:没有副本数的参数
创建一个ds;然后查看可以看到每个节点上都生成了一个nginx副本。
[root@k8s-master01 ~]# kubectl create -f nginx-ds.yaml
daemonset.apps/nginx created
[root@k8s-master01 ~]# kubectl get pod -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
busybox 1/1 Running 21 (2m45s ago) 8d 172.27.14.193 k8s-node02 <none> <none>
nginx-2c7xf 1/1 Running 0 2m2s 172.25.92.79 k8s-master02 <none> <none>
nginx-kjdx8 1/1 Running 0 2m2s 172.25.244.200 k8s-master01 <none> <none>
nginx-wwltz 1/1 Running 0 2m2s 172.27.14.199 k8s-node02 <none> <none>
nginx-zl2lr 1/1 Running 0 2m2s 172.18.195.19 k8s-master03 <none> <none>
nginx-znprg 1/1 Running 0 2m2s 172.17.125.7 k8s-node01 <none> <none>
需要注意的地方:
- restartPolicy字段默认是Always
- Daemon Set没有副本数
- 最大失败数需要写数字,建议1
- 更新策略建议使用OnDelete,保留历史版本为1
其他地方与Deployment和StatefulSet类似,就不说了,可以看我另外两篇!
以上就是DaemonSet服务守护进程的使用场景的详细内容,更多关于DaemonSet服务守护进程的资料请关注编程学习网其它相关文章!
沃梦达教程
本文标题为:DaemonSet服务守护进程的使用场景
基础教程推荐
猜你喜欢
- http请求报错:SSL Certificate Chain Error的原因和解决办法 2023-12-04
- LVS+DR+apache+keepalived负载均衡 2023-09-08
- Apache用户认证、域名跳转、Apache访问日志 2023-09-29
- Nginx geoip模块实现地区性负载均衡 2024-03-15
- Nginx负载均衡之upstream模块简介与使用详解 2022-11-26
- CentOS 7下的KVM网卡配置为千兆网卡 2023-09-24
- Target runtime Apache Tomcat v8.0 is not defined 2023-09-08
- http请求报错:Too Many Requests Error的原因和解决办法 2023-12-03
- https协议详解 2022-12-12
- 备份和恢复Windows IIS服务器设置的方法 2022-09-01
