一个 rs 管理的 pod 如何副本数均等的调度到 2 个节点上?

2021-08-24 10:45:20 +08:00
 css3

有这么个需求,需要将 1 个 deploy 下的 rs 管理的 pod 分别按相同数量的副本调度,如下所示,有啥合理的办法吗?

node1: mypod1 mypod2 mypod3 mypod4

node2: mypod1 mypod2 mypod3 mypod4

1200 次点击
所在节点    程序员
10 条回复
ericls
2021-08-24 10:49:35 +08:00
RS -> Replica Set
lfzyx
2021-08-24 10:54:26 +08:00
eudore
2021-08-24 11:00:29 +08:00
pod 污点亲和, 相同 dp 间污点,不同 dp 间亲和,污点让在存在 pod1 的 node 上不再继续调度来 pod1 (避免资源充足时多副本在一个 node ),亲和让 pod2 调度到存在 pod1 的 node 上(让 pod 和关联的 pod 优先在一起)。
caoyouming
2021-08-24 11:18:25 +08:00
没办法做到这么精确吧。指定两个 node 也会存在随机分配的情况
GreatTony
2021-08-24 11:24:07 +08:00
用两个 deployment 加节点选择器不就搞定了
hzfyjgw
2021-08-24 11:35:52 +08:00
无状态的 pod 没必要调度这么精准
css3
2021-08-24 11:55:29 +08:00
@lfzyx
@eudore 新知识,还完全没接触过这个,发帖前看过,不是特别明白。多谢
dier
2021-08-24 14:45:08 +08:00
如果你的集群只有这两个节点,而且每个应用的 pod 数量只有两个,那直接配置 pod 之间非亲和就可以了。如果有多个节点,那就对这几个应用配置节点选项,然后再加上 pod 之间非亲和配置就可以实现。如果你觉得官方的英文文档不好理解,其实也可以参考一下国内几大云厂家的文档。
css3
2021-08-24 15:46:09 +08:00
@dier 官方文档支持中文了,主要是概念对我是全新的,也没实操过,要亲和,非亲和细看一下实操下才有更深的认知,多谢老哥点播
liuhan907
2021-08-24 21:08:16 +08:00
@css3
亲和性解决不了你的问题。亲和可以让 pod 尽量分散,但是无法绝对平衡 pod 分配。我觉得你应该从别的方向入手。比方说,为何同一个部署下会需要这么多 pod ?节点资源只有这么多,增加 pod 并不能增加吞吐。减小 pod 数量到 2 再用亲和就可以。如果说你的一个 pod 只能使用有限的资源导致利用率不满,那就给容器配置资源限制让 k8s 自己根据资源容量调度。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/797644

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX