问题描述
以DaemonSet方式部署日志收集插件服务之后,没有在Master节点上创建Pod实例。因此master节点的日志无法收集,但是我们希望Master节点中也运行Pod实例。
问题原因(正常情况)
因为从1.6版本开始,不会再将DaemonSet调度到主节点上。由于主节点上有node-role.kubernetes.io/master及NoSchedule污点,而Pod没有容忍该污点,所以不会调度到主节点上。
既然官方已经不建议这么做了,如果没有必要就不要向主机调度Pod了,除非是出于监控或者指标收集等原因。
解决办法(正常情况)
正确的解决办法其实是在DaemonSets的Pod定义中添加如下配置:
spec:
...
spec:
tolerations:
- key: node-role.kubernetes.io/master
effect: NoSchedule
网友评论