鉴于 CPU 极其空闲,是否大幅降低服务器处理器的级别?

鉴于 CPU 极其空闲,是否大幅降低服务器处理器的级别?

我正在考虑将我的数据库迁移到新服务器。新服务器的 CPU 性能要差很多,但 RAM 更大,SSD 速度更快。而且,每月费用只有原来的一半。

根据可用的 CPU 基准测试,新 CPU 的处理能力可能比当前 CPU 低 50%,然而,根据我的 munin 图表,当前 CPU 空闲率 >95%:

Munin CPU 使用率

顶部

考虑到 CPU 的空闲情况,大幅降低 CPU 级别是否安全?

当负载高于 1 时,我认为瓶颈是 RAM 和磁盘,而不是 CPU,因此负载应该保持不变,如果不随着 RAM 的增加和 SSD 的速度加快而减少的话。

任何建议都值得感激。谢谢

答案1

根据您提供的信息,我认为您应该采取行动。看来您的工作负载占用的 CPU 很少,但占用的 RAM 却很多。

在确保数据库配置为不会使用超过可用内存量后,我还会考虑完全禁用交换。而且您还应该更频繁地打补丁和重启。:-)

答案2

主机指标不是容量评估,即使它们能够提供一些有根据的猜测。

他们无法预测,例如,由于组织的增长,这个盒子上的负载是否会增加 10 倍。他们也不会分析工作量。平均负载不会告诉你作业是否是单线程的,而并行运行可以完成更多的工作。


话虽如此,我们还是来猜测一下吧。

存储,不能说明太多。CPU 负载不会说明 IOPS 的任何信息,也不会说明吞吐量是否使存储系统饱和。更快的固态通常是一个好主意,是的。

内存可能略微利用不足。根据数据库的不同,这可能意味着可以稍微增加共享内存以获得更大的缓存。实际上,对于数据库来说,内存与 CPU 的比率似乎相对较小。

CPU 利用率很低,平均为 5%。这可能是一个功能就像 Stack Overflow 一样即使一个机器承担了所有负载,他们仍然对响应时间非常执着。或者这意味着你为太多的 CPU 付费,因为你的性能目标只需一半的 CPU 即可实现。

当负载高于 1 时,我认为瓶颈是 RAM 和磁盘,而不是 CPU,因此负载应该保持不变,如果不随着 RAM 的增加和 SSD 的速度加快而减少的话。

不,这不是平均负载 1 的意思。平均负载是准备运行的任务数,在 Linux 上还包括不间断睡眠。在这个 32 CPU 系统上,任何低于 32 的负载都意味着所有需要 CPU 的任务都会立即获得一个。它并没有说明整个系统的瓶颈在哪里。

要找出最慢的组件,请进行系统分析,例如USE 方法


您需要做出容量规划决策,是否按照建议使用更少的 CPU 和更快的 SSD。当前规格是否满足您的性能要求?如果您拥有硬件并只需支付电费,则成本结构将有所不同,而如果您租用硬件并且许多 CPU 盒的价格较高,则成本结构将有所不同。

由于撤消操作非常容易,因此您承担的风险会降低。如果您可以再次获得工作大小,则很容易迁移回来。


PS 安排一个维护窗口进行修补。任何 UNIX 或 Linux 在 412 天的正常运行时间内都有未应用的重要更新。

相关内容