k8s运行DaemonSet控制器管理pod
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了k8s运行DaemonSet控制器管理pod相关的知识,希望对你有一定的参考价值。
前面介绍了k8s的deployment和statefulset这两种控制器。deployment是属于无状态的服务,nginx,Tomcat,没有关联的pod
statefulset是属于有状态的服务。mysql,zk、etcd,集群形式的pod
下面我们来介绍一下第三种方式DaemonSet这种控制器模式
DaemonSet 的典型应用场景:
在集群的每个节点上运行存储 Daemon,比如:glusterd 或 ceph。
在每个节点上运行日志收集 Daemon,比如:flunentd 或 logstash。
在每个节点上运行监控 Daemon,比如:Prometheus Node Exporter 或 collectd。
DaemonSet 与 Deployment 的区别
Deployment 部署的副本 Pod 会分布在各个 Node 上,每个 Node 都可能运行好几个副本。
DaemonSet 的不同之处在于:每个 Node 上最多只能运行一个副本。
总结: DaemonSet这种控制器方式,主要是用来对node节点上面每个节点平均分配一个pod的,比如每个node节点上面运行的监控agent,或者是收集日志的agent。。。
----------------------------------------------------------------------------------、
接下来部署一个
cat daemonset.yaml
kind: DaemonSet
apiVersion: extensions/v1beta1
metadata:
name: nginx-ds
labels:
k8s-app: nginx
spec:
template:
metadata:
labels:
k8s-app: nginx
spec:
containers:
- image: nginx:1.7.9
name: nginx
ports:- name: http
containerPort: 80
- name: http
如果我们要是修改为deployment在测试一下
注意这里没有指定副本数量哈
看到了吧,这里只是启动了1个。DaemonSet这个还是比较简单的
今天讲解就到这里,欢迎大家私信留言
以上是关于k8s运行DaemonSet控制器管理pod的主要内容,如果未能解决你的问题,请参考以下文章
简洁实用轻松学会k8s的pod控制器DaemonSet(DS)
简洁实用轻松学会k8s的pod控制器DaemonSet(DS)