daemonset 中的 kubernetes 副本

kubernetes replicas in a daemonset

我有 logstash 运行 5 pods。

我无法获得将 pods 的数量更改为 2 的命令:

kuberctl scale --replicas=2 daemonset/logstash -n logstash

我试过它的各种变体,但仍然不满意。

有人可以告诉我或指出方向吗?

DaemonSet 确保所有(或部分)节点 运行 一个 Pod 的副本。您无法使用缩放选项控制其副本。您必须使用节点选择器来控制 replicas.You 需要指定 2 个您希望 lagstash 应该 运行 使用节点选择器的节点,因此 pods 将仅安排在这两个节点上。

参考以下代码并将节点选择器添加到您的 pod 配置中:

nodeSelector:
  logstash_allow: true

并将标签 logstash_allow: true 添加到您想要 lagstash

的两个节点

请注意,DaemonSet 为每个节点部署一个 pod。 pods 的数量将与节点一样多。你无法控制副本的数量。

您需要将对象更改为 Deployment 或 Statefulset 以管理副本计数