搞 IT 的都该懂点服务器硬件:CPU、内存、硬盘、RAID 一篇讲明白 搞 IT 的都该懂点服务器硬件CPU、内存、硬盘、RAID 一篇讲明白做 IT 这行不管你是开发、运维还是测试天天都要跟服务器打交道。但我发现很多人包括工作了好几年的对服务器硬件的了解都停留在「能开机就行」的水平。CPU 几核几线程有啥区别内存为什么要插成双数RAID 0/1/5/10 怎么选硬盘 SAS 和 SATA 差在哪这些问题很多人都答不上来。我是做硬件集成的天天跟服务器打交道拆过的服务器没有一百也有八十了。今天就用大白话给大家讲讲服务器硬件的那些事儿。看完这篇不敢说你成专家但至少跟人聊起来不会露怯买服务器也不会被销售忽悠。一、CPU服务器的大脑先从 CPU 说起这是服务器的大脑决定了计算能力。1. 核心和线程别再傻傻分不清很多人买服务器销售说「8 核 16 线程」就觉得好厉害但到底啥是核心啥是线程打个比方核心Core就像工位一个核心就是一个工位线程Thread就像干活的人一个线程就是一个工人那「8 核 16 线程」是什么意思就是 8 个工位每个工位安排两个人轮班干。人休息工位不休息干活效率更高。这就是英特尔的「超线程」Hyper-Threading技术AMD 叫「同步多线程」SMT一个意思。那是不是线程越多越好也不一定。大部分情况下多线程确实能提高效率但也不是线性增长的。8 核 16 线程性能大概相当于 10~12 个物理核心不是翻倍的关系。而且有些软件对多线程优化不好线程多了也没用。不过大部分服务器场景虚拟化、数据库、Web 服务多线程还是有用的。市面上有很多国外服务器上面拆下来的大核心多线程CPU他们打着军工级航天级神U的幌子号称能够畅玩3A大作无痛吃鸡打瓦来欺骗消费者实际上只能进行办公上3A大作会非常吃力。希望读者不要上当受骗。2. 主频越高越快吗主频就是 CPU 的工作频率单位是 GHz。很多人觉得主频越高越快其实不全对。主频就像工人干活的速度主频高就是工人手脚快。但如果工人数量少核心少再快也干不过人多的。比如一个 4 核 3.5GHz 的 CPU和一个 8 核 2.5GHz 的 CPU哪个快 答案是看场景。单线程任务比如某些老软件主频高的快多线程任务比如虚拟化、编译核心多的快这里顺便说一句服务器和家用电脑的侧重点完全不一样。服务器同时跑几十个甚至上百个任务多任务并行所以核心数比主频重要。你主频再高核心少了任务排队等着也快不起来。家用电脑/游戏电脑一般就开一个游戏或者几个软件单线程性能更重要所以主频高了体验更好。这也是为什么游戏CPU主频都很高但核心数不一定多。 我见过很多人买服务器的时候拿家用电脑的思路去选一味追求高主频结果选了个4核的高频CPU跑几个虚拟机就卡得不行就是这个道理。3. Intel 还是 AMD现在服务器 CPU 主要就两家英特尔Intel和 AMD。Intel 至强Xeon市场占有率高生态成熟兼容性好大部分软件都优化过AMD EPYC霄龙核心多性价比高这几年势头很猛尤其是核心数量上碾压 Intel怎么选求稳、怕出问题选 Intel用的人多踩坑的人多解决方案也多追求性价比、需要超多核心选 AMD同价位核心数多很多我个人的感觉是现在 AMD 已经很成熟了不是以前那个「兼容性差」的 AMD 了。如果不是有特殊的软件必须用 IntelAMD 性价比更高。4. 几 U 是什么意思经常听人说「1U 服务器」「2U 服务器」这个 U 是什么UUnit是服务器的高度单位1U 4.445 厘米。1U 服务器最薄最节省空间但扩展性差硬盘位少2U 服务器最常用空间和扩展性平衡硬盘位、PCIe 插槽都够4U 服务器更厚扩展性最好可以装很多硬盘和显卡但占地方常见服务器 CPU 一览 国外主流1. Intel 至强Xeon市场老大哥生态最成熟、兼容性最好分铜牌 / 银牌 / 金牌 / 铂金从入门到旗舰适合求稳、怕出问题的场景2. AMD EPYC霄龙核心多、性价比高这几年势头很猛最高 96 核虚拟化 / 云计算利器适合需要超多核心、追求性价比 国产 CPU信创主力1. 海光x86 架构性能最强最接近国际水平软件兼容性好迁移成本低主要用在金融、电信等对性能要求高的行业2. 鲲鹏华为ARM 架构华为出品性能强、能效比高华为生态完善服务器 OS 数据库全套主要用在云计算、大数据、华为生态客户3. 飞腾ARM 架构政务信创领域用得多安全性高项目认可度高主要用在政务、国企、事业单位4. 龙芯完全自主的「龙架构」真正自主可控性能提升很快生态在建设中主要用在军工、航天等对自主可控要求极高的领域5. 兆芯x86 架构能直接跑 Windows价格便宜主打中低端主要用在办公电脑、入门级服务器 怎么选国外求稳选 Intel要多核选 AMD国产要性能选海光政务选飞腾华为生态选鲲鹏纯自主选龙芯二、内存服务器的工作台如果说 CPU 是大脑那内存就是工作台。CPU 要处理的数据都先放到内存里。1. 内存容量多大才够这个问题没有标准答案看你干嘛用。给大家一个大概的参考小型文件服务器、官网16G~32G 够用一般的 Web 应用、中小型数据库32G~64G大型数据库、虚拟化宿主机64G 起步上不封顶大数据、缓存服务器128G 以上越大越好2. ECC 内存服务器内存和普通内存有啥区别服务器内存一般都是 ECC 内存比普通台式机内存贵不少。ECC 是啥ECCError Correcting Code错误校验码简单说就是能自动检测和纠正内存错误。普通内存如果传输出错了数据就错了可能导致程序崩溃、系统蓝屏。服务器 7x24 小时跑着内存又大出错的概率其实不低。ECC 内存就能在出错的时候自动纠正保证数据正确。对服务器来说稳定性比啥都重要所以贵点也得用 ECC 内存。3. 内存通道为什么内存要插成双数很多人都听过「内存要插成双数」「要组成双通道」这是啥意思内存通道就像马路。单通道就是单车道双通道就是双车道四通道就是四车道。车道越多数据传输越快。现在的服务器 CPU 一般都是4通道、6通道甚至8通道的。要组成完整的通道内存就得按规则插。比如4通道的CPU你插1条内存就是单通道插2条可能是双通道插4条才是完整的四通道。插法不对性能差一半。我见过太多人买了4条内存乱插一通结果只跑在双通道模式下浪费一半带宽。怎么插才对看主板说明书不同主板插槽编号不一样一般是插 1、3 或者 2、4或者 1、2、3、4 全插。别想当然说明书上写得明明白白的。4. 内存混插问题经常有人问不同品牌、不同频率、不同容量的内存能一起用吗答案是一般能点亮但不推荐。不同频率会自动降频到最低的那条的频率高频率的浪费了不同容量可以用但可能组成不了双通道 / 四通道性能受影响不同品牌一般没问题但偶尔会有兼容性问题服务器上尽量还是用同品牌、同型号、同频率的内存稳定性最重要。别为了省点钱搞得出问题得不偿失。三、硬盘数据的家硬盘是存数据的地方CPU 和内存再快数据还得从硬盘读出来。1. HDD vs SSD机械硬盘和固态硬盘这个大家应该都懂了HDD机械硬盘里面有盘片转啊转磁头读数据。容量大、便宜但是慢而且怕震动SSD固态硬盘闪存颗粒存数据没有机械结构。快、不怕震但是贵容量相对小现在新配的服务器系统盘一般都用 SSD 了数据盘看需求。2. SAS 和 SATA接口有啥区别服务器硬盘常见的接口有 SAS 和 SATA还有更猛的 NVMe。SATA跟你台式机上的硬盘接口一样最常见便宜速度一般大概 500MB/s 左右SAS服务器专用的接口比 SATA 更稳定、更快大概 1~2GB/s支持热插拔但是贵NVMe走 PCIe 通道的 SSD超级快3~7GB/s 甚至更高但是更贵而且服务器上的 NVMe 槽位一般不多简单说就是SATA 便宜够用SAS 稳定高速NVMe 超快但贵。怎么选冷数据、备份、大容量存储SATA HDD性价比最高一般业务、虚拟机、数据库SAS HDD 或 SATA SSD高 IOPS 场景、高频访问的数据NVMe SSD3. 硬盘容量为什么 1TB 实际只有 930GB很多人都有这个疑问我买的 1TB 硬盘怎么系统里看只有 930GB 左右是不是被骗了不是被骗了是计算方式不一样厂商按十进制算1TB 1000GB 1000*1000MB ...系统按二进制算1TB 1024GB 1024*1024MB ...所以 1TB 的硬盘系统里显示大概就是 931GB 左右这是正常的不是缺斤短两。容量越大差得越多。比如 8TB 的硬盘系统里大概只有 7.2TB 左右。四、RAID多块硬盘组队干活重点RAID 这个东西很多人搞不懂但其实很重要。做运维、做系统集成的RAID 是基本功。1. 什么是 RAIDRAIDRedundant Array of Independent Disks独立磁盘冗余阵列简单说就是把多块硬盘组成一个阵列当成一块逻辑硬盘来用。为什么要这么干两个目的提高性能多块盘一起读比一块盘快提高安全性一块盘坏了数据不丢还能接着用就像一个人干活慢也容易请假几个人组队干又快又不容易停工。2. 常见 RAID 级别对比RAID 有好几种级别最常用的就那么几个我给大家掰扯清楚RAID 0条带化至少需要几块盘2 块容量所有硬盘容量加起来比如 2 块 1TB就是 2TB性能最快读写都翻倍安全性最差一块盘坏了所有数据全没适用场景对速度要求高但数据不重要、丢了也无所谓的场景比如缓存、临时文件简单说就是速度拉满安全为零。一般不推荐存重要数据。RAID 1镜像至少需要几块盘2 块容量总容量的一半比如 2 块 1TB只能用 1TB性能读性能还行写性能一般安全性很高一块盘坏了另一块还有完整数据换上新盘自动同步适用场景重要数据、容量要求不高的场景比如系统盘简单说就是两块盘一模一样一块坏了另一块顶上。安全性高但是容量利用率低只有 50%。RAID 5最常用的至少需要几块盘3 块容量n-1 块盘的容量比如 3 块 1TB就是 2TB 可用性能读性能不错写性能一般因为要算校验安全性比较高允许坏 1 块盘坏了换上新盘能重建适用场景一般业务、文件服务器、Web 服务器最常用的 RAID 级别RAID 5 是性价比最高的既保证了一定的性能和安全容量利用率也不错n-1。大部分中小公司用 RAID 5 就够了。RAID 6比 RAID 5 更安全至少需要几块盘4 块容量n-2 块盘的容量比如 4 块 1TB就是 2TB 可用性能和 RAID 5 差不多写性能更差一点因为要算两份校验安全性很高允许坏 2 块盘适用场景非常重要的数据、硬盘数量多的场景RAID 6 就是比 RAID 5 多了一份校验能扛住两块盘同时坏。硬盘数量多、数据特别重要的时候用。RAID 10也叫 RAID 10先镜像再条带至少需要几块盘4 块而且得是偶数容量总容量的一半性能很快读和写都不错安全性很高只要不是同一组镜像的两块盘都坏就没事适用场景对性能和安全都要求高的场景比如数据库RAID 10 就是先两两做 RAID 1镜像然后再把这些镜像组做 RAID 0条带。兼顾性能和安全就是贵容量只有一半。3. 怎么选 RAID 级别给大家一个简单的选择指南系统盘2 块盘做 RAID 1安全第一一般业务、文件存储3~4 块盘做 RAID 5性价比最高重要数据、大容量存储多块盘做 RAID 6更安全数据库、高 IOPS 场景4 块以上 SSD 做 RAID 10性能安全都有4. 硬 RAID 和软 RAID还有个概念硬 RAID 和软 RAID。硬 RAID用专门的 RAID 卡来做 RAID所有计算都由 RAID 卡完成不占 CPU 资源。性能好、稳定服务器一般都用这个软 RAID靠操作系统和 CPU 来算 RAID不用额外的卡但是占 CPU 资源性能差点服务器上一般都用硬 RAID配个 RAID 卡省心。好一点的 RAID 卡还有缓存还能掉电保护性能更好更安全。5. 热备盘是什么热备盘Hot Spare就是平时闲着不干活等着「替补上场」的硬盘。阵列里有盘坏了热备盘会自动顶上开始重建数据不用等你人工换盘再重建。相当于多了一层保险。重要的业务环境建议配个热备盘多花一块盘的钱换个安心。五、其他硬件简单了解一下1. 网卡服务器网卡也很重要数据进出都靠它。千兆网卡最常见大部分场景够用便宜万兆网卡速度快10Gbps大概 1GB/s 的传输速度。虚拟化、存储网络、大数据场景用得多光口 vs 电口光口用光纤传输距离远、抗干扰电口用网线便宜、方便一般服务器至少两块网卡做绑定bonding既提高带宽又做冗余一块坏了另一块还能接着用。2. 电源服务器电源也很重要没电啥都白搭。服务器一般都是冗余电源就是两个电源模块同时工作分担负载。一个坏了另一个能扛住全部负载服务器不会断电。就像两个人抬水一个人累了或者受伤了另一个人还能接着抬水不会洒。重要的服务器一定要用冗余电源而且最好两个电源接不同的供电线路一条线路断电了另一条还能供电。3. 散热服务器发热量很大散热不好会降频甚至死机。服务器散热主要靠风扇一般都是好几个暴力风扇转速很高噪音也大。所以服务器都放机房不放办公室 —— 太吵了跟飞机起飞似的。现在新一点的服务器有智能调速负载低的时候风扇慢一点噪音小点。但高负载的时候该吵还是吵。六、不同场景服务器配置推荐说了这么多给大家几个实际的配置参考买服务器的时候可以照着来。1. 小型公司官网 / 文件服务器CPU4 核 8 线程就够比如 Xeon Silver 铜牌或者更低内存16G~32G硬盘2 块 1TB SATA HDD 做 RAID 1或者 2 块 500GB SSD网卡千兆双口价格大概一万多块钱2. 中小型公司数据库服务器CPU8 核 16 线程以上主频尽量高点内存64G 起步越大越好数据库吃内存硬盘SSD 或者 SAS 15K 转硬盘做 RAID 5 或 RAID 10网卡至少千兆最好万兆价格三万起步上不封顶3. 虚拟化宿主机跑虚拟机CPU核心越多越好16 核起步32 核不嫌多内存越大越好128G 起步256G 很常见硬盘看需求一般 SAS 或 SSD 做 RAID5 或 RAID10网卡最好万兆多块网卡做绑定价格五万起步贵的几十万都有4. 高 IOPS 场景缓存、大数据CPU不用太好够就行内存512/1024GB硬盘SATA SSD/NVMe SSDRAID 5 或 10网卡万兆以上最好 25G 或 100G价格看容量NVMe 盘贵得很写在最后以上就是服务器硬件的入门知识了。其实硬件这东西没那么玄乎见得多了、用得多了自然就懂了。不用死记硬背遇到不懂的查一查慢慢就积累起来了。很多人觉得「我是做开发 / 运维的懂硬件干嘛」其实不是的。懂点硬件知识你就能理解为什么这个程序跑这么慢、为什么数据库性能上不去、为什么加了内存还是卡。知其然更知其所以然才能更好地解决问题。我是做硬件集成的后面还会写一些更实战的内容比如 RAID 怎么配置、IPMI 远程管理怎么用、新服务器到手怎么验收、常见硬件故障怎么排查等等。感兴趣的可以关注一下。如果有什么问题或者想了解哪方面的内容欢迎在评论区留言。我看到了会尽量回复