2. 硬件与网络规划:服务器选型、网络拓扑与IP规划
大家好,我是你们的老朋友。今天咱们聊聊集群部署里最“烧钱”也最“烧脑”的一步——硬件与网络规划。说实话,我见过太多项目,代码写得漂漂亮亮,结果上线前发现服务器扛不住,或者网络成了瓶颈。嗯,这章咱们就把这些坑提前填上。
2.1 服务器选型:CPU、内存、磁盘怎么搭?
选服务器,说白了就是“按需分配”。别一上来就追求顶配,也别抠门到连基本负载都扛不住。我个人习惯先问三个问题:跑什么业务?数据量多大?峰值并发多少?
2.1.1 CPU:核心数与主频的博弈
CPU选型,核心看两点:计算密集型还是IO密集型。
- 计算密集型(比如AI训练、视频转码):主频越高越好,核心数也要够。我建议至少32核起步,主频3.0GHz以上。
- IO密集型(比如Web服务器、消息队列):核心数多比主频高更重要。我曾经给一个高并发API网关配了64核低主频CPU,效果比32核高主频好得多。
2.1.2 内存:越大越好?不,够用就好
内存这东西,少了卡死,多了浪费。我一般按这个公式估算:
总内存 = 操作系统预留(2-4GB) + 应用内存 + 缓存内存 + 20%余量
举个例子,一个跑着Java应用的节点,JVM堆设了16GB,操作系统和缓存再占4GB,那我至少配32GB。为什么?因为GC的时候内存会飙高,留点余量防止OOM。
2.1.3 磁盘:SSD还是HDD?这是个问题
磁盘选型,我总结了一个“三看”原则:
- 看IOPS需求:数据库、日志收集这类高随机读写场景,必须上NVMe SSD。我曾经用SATA SSD跑MySQL,结果IO等待飙到80%。
- 看容量需求:冷数据存储、备份归档,用HDD组RAID5或RAID6,性价比最高。
- 看可靠性:关键业务节点,建议SSD+HDD混合。SSD放热数据,HDD放冷数据,再用缓存加速。
对了,磁盘接口也别搞混。NVMe走PCIe通道,延迟最低;SATA SSD虽然便宜,但4K随机读写差很多。你想想看,一个集群几百台机器,每台慢一点,整体性能就崩了。
2.2 网络拓扑设计:交换机、路由器、防火墙怎么摆?
网络拓扑,说白了就是“怎么把机器连起来”。我见过最惨的案例:一个团队把所有服务器接到同一台交换机上,结果广播风暴直接干趴了整个集群。
2.2.1 分层架构:核心层、汇聚层、接入层
标准做法是三层架构:
- 核心层:负责高速转发,用万兆甚至40G交换机。别省钱,这里出问题整个集群都废了。
- 汇聚层:做策略控制、VLAN间路由。我习惯在这里做链路聚合,提高带宽和冗余。
- 接入层:直接连服务器。端口密度要高,支持PoE更好(方便管理IPMI)。
2.2.2 交换机选型:背板带宽和包转发率
选交换机,别只看端口数。两个核心指标:
- 背板带宽:决定了交换机能不能“线速转发”。公式:端口数 × 端口速率 × 2。比如48口万兆交换机,背板带宽至少960Gbps。
- 包转发率:每秒能处理多少数据包。一般用Mpps(百万包/秒)衡量。我建议不低于100Mpps。
我曾经图便宜买了个背板带宽不够的交换机,结果集群内部通信延迟从0.1ms飙到5ms,排查了三天才发现是交换机瓶颈。嗯,从那以后我再也不省这个钱了。
2.2.3 防火墙:南北向与东西向
防火墙部署,我分两个维度:
- 南北向:集群入口和出口。用硬件防火墙做NAT、端口映射、DDoS防护。吞吐量至少10Gbps。
- 东西向:集群内部流量。用软件防火墙(比如iptables、Open vSwitch)做微隔离。我习惯在每个节点上做白名单策略。
2.3 IP地址规划与子网划分
IP规划,看着简单,但做不好后面全是坑。我见过一个团队把管理IP和业务IP混在一起,结果网络故障时连不上服务器。
2.3.1 子网划分原则
我一般按功能划分VLAN和子网:
| 用途 | 网段示例 | 掩码 | 可用IP数 |
|---|---|---|---|
| 管理网络 | 10.0.0.0/24 | 255.255.255.0 | 254 |
| 业务网络 | 10.0.1.0/22 | 255.255.252.0 | 1022 |
| 存储网络 | 10.0.4.0/24 | 255.255.255.0 | 254 |
| 高可用VIP | 10.0.5.0/28 | 255.255.255.240 | 14 |
为什么要分开?你想想看,如果管理流量和业务流量抢带宽,你连SSH都卡,还怎么排查问题?
2.3.2 IP地址分配策略
我习惯用静态分配+DHCP保留的方式:
- 核心节点(控制节点、网关):静态IP,写在配置里,永不改变。
- 计算节点:DHCP保留,基于MAC地址分配固定IP。方便扩容,又不担心IP冲突。
- 临时节点(测试、CI/CD):DHCP动态分配,用完回收。
2.3.3 子网掩码与CIDR
别再用传统的A/B/C类划分了,CIDR才是正道。举个例子:
# 传统方式
192.168.1.0 255.255.255.0 → 254个IP
# CIDR方式
192.168.1.0/24 → 254个IP
192.168.1.0/25 → 126个IP(更灵活)
我一般用/24作为最小单位,/22作为业务网段。为什么?因为/24刚好256个IP,去掉广播和网络地址,剩254个,够一个机柜用了。
2.4 知识体系总览
说了这么多,咱们用一张图把核心逻辑串起来。下面这张SVG图,展示了我做硬件与网络规划时的思考框架:
这张图我每次做集群规划都会先画一遍。你想想看,服务器选型决定了性能上限,网络拓扑决定了通信效率,IP规划决定了管理复杂度。三者缺一不可。
好了,这章的内容就到这儿。记住,硬件规划是地基,地基不稳,上面盖的楼再漂亮也没用。下一章咱们聊聊操作系统和基础环境配置,到时候见。