说实话一开始我是犹豫的,超频这东西放在个人台式机上玩没问题,但服务器尤其是非官方超频支持的云服务器或者二手塔式/机架服务器,风险真的很大——烧CPU核心、主板电容鼓包、内存ECC报错甚至整台机器蓝屏重启都是常有的事,刚入行的新手别不信,我2021年接手过一台前同事贪便宜组的二手塔式Nginx服务器,他偷偷给CPU超了20%没告诉我压力测试就上线了,双11预售那天晚上8点整直接整个集群炸锅,前同事熬了两个通宵才把坏的主板电容换好、数据从备份恢复回来,还差点被老板炒鱿鱼。
那这次怎么办呢?总不能直接拒绝吧,毕竟合作了好几年的老客户。后来突然想到——哦对了,现在有些二手塔式/机架入门级服务器,还有部分特定云厂商(比如阿里云专有宿主机裸金属配置里的非超频型号,或者自己买的塔式戴尔R450/R550这类入门但CPU有睿频/手动小超空间的) 其实可以通过Linux内核工具cpupower来小幅度拉高下睿频上限,或者在bios里调个安全的电压/外频小参数,不用太激进,就超10%到15%,刚好够应付突发测试的小流量尖峰。
先拿戴尔R450二手塔式服务器(这家小公司在阿里云之外还留了一台做数据热备的备用机,刚好能临时当压力测试机)来做演示,云服务器的话我后面会补一下特定裸金属的情况。
首先第一步得进入服务器的BIOS界面确认硬件支持小超——戴尔R450的开机键按下去之后,连续按F2就能进BIOS,找到System Configuration → Processor Settings,先看CPU的型号(备用机是Intel Xeon E-2378G,8核16线程,基础频率2.8GHz,官方睿频最高5.1GHz),然后看有没有手动调整睿频上限、电压偏移的选项,E-2378G是有的,不过一开始不敢动电压,先拉小幅度的睿频上限。
然后回到Linux系统,先装cpupower工具,CentOS 7/8/Stream或者Ubuntu都能用,命令是sudo yum install kernel-tools -y(CentOS系列)或者sudo apt install linux-tools-common linux-tools-$(uname -r) -y(Ubuntu系列)。装完之后先看看当前CPU的频率和可用的频率范围,命令是cpupower frequency-info,备用机当前显示的可用最高频率是5.1GHz(官方睿频),不过刚才BIOS里可以手动调到5.3GHz,小超200MHz,差不多7%的提升,暂时不动外频。

不过光调睿频上限没用,还得把CPU的调频策略改成“performance”模式,这样CPU才会在需要的时候立刻冲到最高频率,不会像默认的“ondemand”那样慢慢升上去,错过流量尖峰的应对时间,命令是sudo cpupower frequency-set -g performance,临时生效,重启之后会变回默认,如果需要永久生效的话,CentOS Stream 9可以用sudo systemctl enable cpupower,然后编辑/etc/sysconfig/cpupower文件,把里面的“GOVERNOR=”改成“performance”;Ubuntu 22.04/24.04可以编辑/etc/default/cpufrequtils文件,把“GOVERNOR=”改成“performance”,然后重启服务或者直接生效。
调完之后立刻用stress-ng工具做压力测试,备用机的CPU温度本来是35度左右,拉到性能模式小超7%之后,跑10分钟的8核全核压力测试,温度升到了68度,二手塔式服务器的原装散热完全压得住,内存ECC也没有报错,系统后台的响应时间从原来的200ms左右降到了170ms,刚好够应付这家小公司的自提高峰测试。
踩过这个坑(前同事2021年的炸锅事件)才明白,服务器超频绝对不能像个人台式机那样追求极限频率,更不能忽略散热和电压的控制——新手一般 先拉官方睿频上限的10%以内,电压最好不要动,如果动的话,每升50MHz电压加0.01V就够了,而且一定要装温度监控工具,比如sudo yum install lm_sensors -y(CentOS系列),然后执行sudo sensors-detect一路回车,最后用sensors命令看温度,CPU温度超过80度(塔式/机架入门级)或者75度(1U机架式)一定要立刻降频。
云服务器的话,大部分突发性能或者通用型的是不支持用户手动超频的,只有特定的裸金属专有宿主机配置(比如阿里云的ecs.g8r.8xlarge裸金属,自己可以进BIOS调,不过裸金属的价格也不便宜,不如升级普通小规格),或者亚马逊EC2的c7g/graviton4实例,官方有一个Turbo Boost的优化选项,但其实也不算真正的手动超频。
你们在运维工作中有没有遇到过预算不够只能挖硬件潜力的情况?欢迎在评论区分享你的经验!

评论列表 (0条):
加载更多评论 Loading...