守护进程集是否总是部署到所有节点?

Maa*_*eek 3 kubernetes daemonset

我想知道 kubernetes 中的守护进程是否总是部署到所有节点。

我的困惑来自于以下对守护进程的描述

DaemonSet 确保所有或部分kubernetes 节点运行 Pod 的副本。

“或某些”部分意味着在某些情况下某些节点不会运行 Pod。对于我的用例,所有节点都运行一个实例非常重要。在什么情况下节点不会运行 Pod 实例,即使它部署为守护进程集?

Sur*_*noi 5

这取决于选择哪个节点目标。

如果指定 .spec.template.spec.nodeSelector,则 DaemonSet 控制器将在与该节点选择器匹配的节点上创建 Pod。同样,如果您指定 .spec.template.spec.affinity,则 DaemonSet 控制器将在与该节点亲和力匹配的节点上创建 Pod。如果您两者都不指定,则 DaemonSet 控制器将在所有节点上创建 Pod。守护进程集

我还会检查Daemonset 的污染和容忍度。