网络拓扑规划:物理拓扑、逻辑拓扑、网络隔离策略

讲到分布式巡检集群,网络拓扑是地基。地基没打好,上层再漂亮的架构也是空中楼阁。

我见过不少团队,上来就堆服务器、配IP,结果联调时发现跨网段不通,或者监控流量把管理网络撑爆了。所以这一章,我们先把“怎么连”这件事捋清楚。

网络拓扑规划核心逻辑 物理拓扑 两层树型 + 冗余链路 逻辑拓扑 VLAN 隔离 + 子网划分 网络隔离策略 管理/业务/存储三平面 物理拓扑解决“设备怎么连”,逻辑拓扑解决“数据怎么走”,隔离策略解决“安全怎么保” 管理平面 业务平面 存储平面 监控、配置、告警 巡检结果、API调用 数据同步、日志归档 独立VLAN,低带宽 负载均衡,高带宽 专用通道,隔离IO 目标:不混跑、不串扰、不单点

物理拓扑:怎么连才靠谱

物理拓扑说白了就是设备之间怎么用网线连起来。分布式巡检集群对链路冗余要求很高,你不能让整个集群因为一根线断了就瘫痪。

我个人习惯用两层树型结构。核心交换机做汇聚,接入交换机连巡检节点。为什么呢?

  • 核心层:两台核心交换机做堆叠或VRRP,单台挂了不影响整体。
  • 接入层:每个机柜配一台接入交换机,上联到两台核心。
  • 节点接入:每个巡检服务器双网卡绑定(bonding),分别接到两台接入交换机。

链路冗余配置要点

  • 使用 LACP 做链路聚合,不要用主备模式——我在项目中遇到过主备切换时丢包的问题,LACP 能分担流量并自动故障转移。
  • STP 要开启 RSTP 或 MSTP,收敛时间控制在秒级。
  • 跨机柜互联推荐用光纤,距离超过100米时铜缆信号衰减太快。

我曾经吃过这方面的亏。有个项目图省事,全部节点接在同一台接入交换机上。结果一次交换机升级,整个集群失联三小时。从那以后,我规定每台接入交换机的节点数不能超过集群总数的40%。

逻辑拓扑:数据怎么走

物理拓扑拉好线,接下来得规划 IP 和 VLAN。这里我不建议把所有设备放在同一个广播域,你知道的,ARP 风暴会把管理网络打残。

我的做法是这样:

网络段 VLAN ID IP 段示例 用途
管理网络 100 10.0.100.0/24 SSH、监控、配置下发
业务网络 200 10.0.200.0/24 巡检任务调度、结果上报
存储网络 300 10.0.300.0/24 NFS/Ceph、日志同步
带外管理 400 10.0.400.0/24 BMC/iLO/IPMI

为什么要分这么细?你想,如果巡检任务流量和监控流量混在一起,万一业务峰值把带宽占满,你连 SSH 都登不上去,还怎么排查问题?

一个实用技巧:每个 VLAN 之间通过三层交换机做策略路由,默认拒绝所有跨段流量,只放行必要的端口。比如管理网络只能访问节点 22 和 443 端口,业务网络只能访问 8080 端口。这样哪怕一个段被攻破,横向移动也难。

还有个细节——子网掩码别贪大。我在一个项目里看到有人把所有巡检节点塞进一个 /16 段,结果广播风暴加上 MAC 表溢出,整个网络间歇性瘫痪。老老实实用 /24 甚至 /28,规模大了再划新区。

网络隔离策略:安全怎么保

隔离不是简单的物理隔开,而是要“该通的通,不该通的不通”。

我建议做三层隔离:

  1. 物理隔离:管理网络和业务网络使用独立的物理网卡甚至独立交换机。预算不够时至少使用 802.1Q 做 VLAN 硬隔离。
  2. 逻辑隔离:VACL 或 PACL 控制二层转发,防止 VLAN 间未经授权的通信。举个例子,存储 VLAN 不应该直接访问业务 VLAN 的广播域。
  3. 应用层隔离:即使 IP 能通,防火墙策略也要精确到端口。比如只允许调度中心 8080 访问节点的巡检服务,不允许反过来。

巡检集群特有的隔离需求

  • 节点之间不要互相暴露数据端口——分布式巡检经常涉及敏感配置,节点间通信要走专用的内部 。
  • 管理平台与巡检节点之间必须走加密通道(SSL/TLS),如果你还在用明文 HTTP,趁早改。
  • 日志收集走专用存储网络,别跟业务流量抢带宽。我有个项目因为日志量爆炸,把业务链路堵了,巡检任务超时率飙升到 30%。

曾经有一次,我在一个现场发现客户把所有网络平面混在一个交换机上,只是用 VLAN 做了逻辑隔离。结果有人误配了 Trunk 口,存储流量直接广播到了管理网络,导致 BMC 大规模掉线。原因就是缺少物理隔离的兜底。所以我现在坚持至少管理平面要独立硬件。

总结一下,网络拓扑不是画个图就完事的。物理拓扑保证链路不中断,逻辑拓扑保证流量不混乱,隔离策略保证安全不泄露。这三层叠起来,你的分布式巡检集群才能跑得稳。