请问大家如何确定一个无状态应用何时应该横向扩容、何时应该纵向扩容?

2022-08-05 20:17:25 +08:00
 zhoudaiyu
用部署在 k8s 中举例,一个应用 A ,分给它的 limit 为:CPU:4 ,内存 8G ,有 4 个副本,这是一个偏向 I/O 密集型的应用,那么在什么情况下,应该对 A 进行横向扩容(增加副本数),什么情况下应该纵向扩容(增加单个 Pod 的 CPU 和内存)呢?有什么判断依据吗?
1423 次点击
所在节点    Kubernetes
7 条回复
my3157
2022-08-05 20:22:48 +08:00
3 以内,优先横向,3 以上,优先纵向,另外,一般轻应用,单个 Pod 控制在 8c16g 以内,如果超过,横向扩
zhoudaiyu
2022-08-05 20:30:09 +08:00
@my3157 #1 您说的 3 是指? CPU 、内存还是副本呢
my3157
2022-08-05 20:36:24 +08:00
@zhoudaiyu #2 副本数,只是经验之谈
crysislinux
2022-08-05 20:36:52 +08:00
我觉得 io 密集的就横向啊,这种情况纵向也不太顶用吧
bthulu
2022-08-06 13:33:25 +08:00
io 密集型, 还无状态, 主扩带宽, 次扩 CPU, 再次内存.
纵向还是横向扩容, 看性价比. 比如纵向扩容一倍, 价格翻 4 倍, 横向扩容一个副本, 价格仅翻一倍, 那就横向扩容.
partystart
2022-08-06 22:57:41 +08:00
纵向扩容: 加内存 换 CPU 换硬盘
横向扩容: 多部署服务实例,通过负载均衡避免单点故障

等通过部署实例 & 机器资源榨干之后 就可以考虑换硬件 加机器了
yyttrr
2022-08-09 14:09:38 +08:00
得考虑很多,节点大小,资源高峰周期,cpu 与内存比例,启动时间等等
重视快速扩容完成,还是整体成本尽量低都是不同的策略

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

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

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

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

© 2021 V2EX