1.1. 服务器
如果把互联网比作人,那么服务器可以看做是人的大脑。
采购服务器时,服务器型号和配置并不是越高越好,也不是越贵越好,因为企业的需求和应用场景是不同的,不可能一个普遍的配置推荐适合所有人,但是服务器选择的一些原则性问题,需要根据业务的场景来考量,下面我会针对物理机裸机使用场景和虚拟化场景来推荐服务器。
小贴士:服务器的性能随着时间也会在不断提升,如果你是在未来几年后看到的信息,请不要类比。
1.1.1. 物理裸机服务器
这种场景一般会用在需要运行仿真软件、设计软件、大型数据库场景下,对服务器的CPU内存IO性能要求较高。
以下参考数据来源《IC设计平台搭建》。
首先,服务器应该选择高主频的CPU,比如 3.0GHz 以上。单CPU要求16core以上, 整台服务器核心32core以上。因为CPU可以睿频,要注意一下睿频后的性能。其次,内存选择,请注意两个方面:通道数量和内存频率。目前内存可以买3200MHz,一般双路服务器内存整台服务器会有24个以上DIMM,那么最好插满16个 DIMM,并且要按厂家的要求插入对应DIMM。新一代XEON 6300和AMD ZEN3都支持32个DIMM。最后还要注意服务器的存储部件,比如SSD盘,网络接口,比如10G或者25G网络接入能力。也要注意一些远程管理口,因为我们大部时候维护服务器都是远程,而不是现场。 Intel CPU 服务器,建议以1.5T以内内存需求的服务器,配置2路即可。两个CPU,在Intel CPU为主的环境中,目前可以配置24 DIMM *64G=1536GB。
选择服务器的 CPU有个网站www.spec.org ,可以依次进入Benchmarks->CPU->SPEC CPU 2017->Published Results
主要有四部分的结果可以参考:
Speed:
[ SPECspeed 2017 Integer, SPECspeed 2017 Floating Point ]
Throughput:
[ SPECrate 2017 Integer, SPECrate 2017 Floating Point ]
这四部分分别的意思是:
SPECspeed 2017 Integer,服务器只用一个CPU core 的时候,其最快的单核整数计算性能;
SPECspeed 2017 Floating Point,服务器只用一个CPU core 的时候,其最快的单核浮点计算性能;这里要介绍一下整数计算和浮点计算,一般我们大量 EDA 工具是以整数计算为主,但是模拟的 Spice 仿真属于典型的浮点计算为主。
SPECrate 2017 Integer,服务器的所有 CPUcore 都参与,其最快的总体整数计算能力。因为多核心的互相影响,我们并不能简单的用 SPECSpeed 2017 Intger* Core 数量=
SPECspeed 2017 Integer,往往 SPECspeed 2017 Integer 会远低于单核心计算能力*Core 数。当然,如果越接近其总数,那么 CPU 内部核心之间的设计并行效果越好。比如 Intel 6254,36core,单核 Base 为 10.2,总体吞吐为 252。 252/10.2*36=0.686 AMD 7H12 128core,单核心 Base Int 为 8.45,总体为 695。 695/8.45*128 = 0.6425 AMD 7542 64core,单核心Base Int 8.74,总体 418。 418/64*8.74=0.747。
SPECrate 2017 Floating Point,服务器的所有 CPUcore 都参与,其最快的总体浮点计算能力。
从 Spec 上查看,AMD 的服务器性能在吞吐上更好。建议大量小型仿真,比如 VCS 可以考虑购买。但是,CPU 的选型还需要考虑 License 等因素,很多软件的 license都是以 Core 来授权的。
Intel CPU 的服务器,我们一般会选择 6254/6246R/6242R 等 CPU,基础频率更好,性价比更高。不过要注意第三代可扩展 CPU,很多型号比上一代更具有性价比。基于 Intel CPU 的服务器可以选择 Dell R740、Huawei 2288H V5、HP DL380 Gen10、Lenovo SR650 等。如果是第三代可扩展 CPU,就要对应选择下一代服务器了,比如 Dell R750。
Dell R740 的内部布局图,可以看到支持 24 根内存,2 个 CPU,还有各种配置的接口卡。硬盘方面支持也很丰富,可以支持包括 NVME 盘在内的多种磁盘组合。
Dell 服务器的优势是配置标准,稳定,价格适当。选购 Dell 服务器一定要小心的是,市场上有很多代理商,自行批量采购 Dell 低端配置服务器,然后自己更换内存、CPU 等配件,重新组合后销售出去,赚取更多利润。这个做法可能存在稳定性风险,服务器故障后,无法找到 Dell 做售后。
华为服务器的优势是本地化支持好,质量可靠。缺点是,在目前美国制裁下,部分部件可能存在供货风险,网上也爆出了华为服务器类似荣耀全盘卖掉的消息。
还有一种是刀片服务器,刀片服务器是一种紧凑独立服务器,在一个机箱中包含多个服务器模块(“刀片服务器”)的服务器体系结构。它被广泛应用于数据中心,以节省空间和提高系统管理。无论是独立安装还是机架安装,机箱都提供电源,每个刀片都有自己的CPU、RAM和存储。刀片服务器通常提供自己的管理系统,并可能包括网络或存储交换机,与刀片式PC形成对比。
刀片服务器,优点是它整合度高,节约机柜空间,但是缺点是散热差,影响CPU性能,还有就是同配置情况下成本会更高且不易于扩展,一般情况不推荐。
1.1.2. 虚拟化服务器
目前用到的最多的虚拟化产品是商用的VMware vSphere或者是开源的KVM,下面我们介绍的主要是VMware虚拟化下的服务器选型场景。
虚拟化服务器运行多少虚拟机取决于虚拟机上跑的应用软件类型,比如简单的1c2g的web服务器,部署100台都没问题,如一些大型的数据库服务器或者exchange服务器,一台主机只能承载少量虚拟机。总的来说,选择虚拟化服务器还是要根据业务场景具体情况具体分析。
选择服务器硬件参数主要有4个标准:CPU、内存、磁盘、网络。
1)cpu选择:在集群vMotion或者DRS调度时,vsphere会检查集群的EVC状态CPU兼容性是否一致,所以在选择主机时尽量选择同品牌型号的CPU服务器。
注意事项:EVC 是 Enhanced vMotion Compatibility 的简称,是VMware群集功能的一个参数。EVC 允许在不同代 CPU 之间迁移虚拟机EVC 不允许 AMD 和 Intel CPU 与 vMotion 兼容。已启用 EVC 的群集仅允许来自群集中单个供应商的 CPU。 vCenter Server 不允许将来自不同 CPU 供应商的主机添加到已启用 EVC 的群集。因为 EVC 允许在不同代 CPU 之间迁移虚拟机,因此凭借 EVC,管理员可以在同一群集里混合使用较旧和较新代服务器,并且可以在这些主机之间使用 vMotion 迁移虚拟机。 这使得管理员可以更轻松地将新硬件添加到现有基础架构中,并有助于扩展现有主机的价值。 凭借 EVC,无需任何虚拟机停机即可实现完整群集升级。在将新主机添加到群集时,可以将虚拟机迁移到新主机并停用旧主机。
2)网卡选择:虚拟化服务器上一般会划分至少三种以上不同的网络:管理网、业务网、存储网,以便于区分业务数据类型,便于数据流管控。
管理网带宽要求不是很高,主要是Esxi的协议通信数据和vMotion数据,可以选择2*1G或2*10G光接口。业务网络主要是虚拟机的对外通信数据,在跑数据备份、大量SQL读写时会有突发流量,一般建议最少配置一组2*10G或者2*40G光接口网络,存储网络主要是虚拟机的磁盘读写,对网络时延要求比较高,最低要求也需要达到2*10G以上。
所以综上,一台服务器最少需要配置2块4*10Gbps网卡,分别在两块网卡各取一个端口组成一组链路聚合,并交叉连接至堆叠交换机,避免因光模块、网卡、交换机的单点故障造成业务影响。
3)磁盘选择:虚拟化服务器磁盘只需要两块磁盘做raid 1用作跑OS。而数据磁盘一般考虑用FC SAN存储或者超融合,在后面的存储章节中会详细介绍存储的选择。
4)内存选择:内存一般选择DDR4,DDR5,32G或者64G,建议采购服务器时备注原厂内存条,否则故障原厂不保修。内存大小:一般的2U服务器建议配置到1TB或者1.5TB。
5)服务器型号选择:目前主流的虚拟化操作系统还是VMware的Esxi,在选择服务器时也要考虑OS的兼容性,VMware的母公司EMC也已被DELL收购,在一些特性功能的支持和兼容性方面会更合适,所以会优先考虑DELL R750 R950系列服务器,不用担心OS驱动问题。不过目前只要是主流的虚拟化软件和主流厂商的品牌服务器,基本不会出现驱动异常的问题。
最后最求性价比可以选择华为、联想、曙光、HPE等国内的老牌服务器,本地化服务支持比较好。