如果,如何自动伸缩后,保持每个 node 上都有这个 deployment 的 pod
有没有运维大佬指点一下
1
longfei210 2023-12-12 17:03:06 +08:00
容器编排的控制器改为 DaemonSet
|
2
midjourney 2023-12-12 17:07:58 +08:00 1
1. Deployment -> DaemonSet
2. hpa 最小为 node 数量,并开启 pod 节点反亲和 |
3
jitongxi OP 好了 , 谢谢两位运维大佬
|
4
kevin123456 2023-12-12 17:49:15 +08:00
2 楼的#2 是多余的吧
|
5
CivAx 2023-12-12 17:58:54 +08:00 2
@kevin123456 不多余。如果应用不适用于 DaemonSet ,比如我现有 5 个 Pod 跑在 3 个 node 上,当我的 node scaling 到 20 个的时候我希望 pod 能扩编到 12 个、且均匀分布在所有节点上时,HPA 的 autoscaling + podAntiAffinity 才是正确且优雅的解法,忽视场景粗暴使用 DaemonSet 会造成 Pod 数量过少,或者资源浪费。
|
6
lasuar 2023-12-13 00:20:29 +08:00
@kevin123456 #4 第一个方法太局限,第二个才是更普遍的做法。
|
7
jitongxi OP @midjourney 有个问题,如果用第二种方法,Deployment 特别多的时候,加一个 node ,然后每个都要去改吗
|
9
midjourney 2023-12-13 15:28:23 +08:00
@jitongxi 不需要 hpa 会自动扩容
|