2、冗余架构设计原则:高可用性目标、故障域隔离、冗余层级划分、N+1与2N冗余模型

各位同学,咱们接着聊。上一章我讲了为什么PIS系统需要冗余,这一章咱们深入一点,聊聊设计原则。说白了,就是告诉你「怎么搭」才靠谱。

我做了十几年PIS项目,见过太多「伪冗余」——设备是双份的,但一断电全趴窝。嗯,这种坑我踩过不少。今天我把核心原则掰开揉碎讲给你听。

2.1 高可用性目标:你到底想要几个9?

先问个问题:你的PIS系统一年能宕机多久?

很多人张口就说「我们要高可用」。但高可用是个模糊词。在工程上,我们用「几个9」来衡量。

可用性等级 年停机时间 典型场景
99%(2个9) 87.6小时 非关键信息屏
99.9%(3个9) 8.76小时 普通车站PIS
99.99%(4个9) 52.56分钟 换乘枢纽、地铁线路
99.999%(5个9) 5.26分钟 机场快线、高铁调度

我个人习惯,做设计前先跟业主确认目标。你想想看,如果业主说「我们要5个9」,但预算只够买两台交换机,那这活儿就没法干。

核心观点:高可用性不是技术问题,是成本问题。每增加一个9,成本大概翻一倍。

我在广州某地铁项目里遇到过,业主一开始要求4个9。结果一算,光冗余交换机就要40台。后来改成3个9,省了一半预算。所以,先谈目标,再谈设计。

2.2 故障域隔离:别让一个雷炸翻全局

什么叫故障域?说白了,就是「一个设备挂了,影响范围有多大」。

我见过最离谱的设计:整个车站的PIS终端都挂在同一台交换机上。那台交换机一重启,全站黑屏。这就是典型的故障域太大。

故障域隔离的原则很简单:

  • 物理隔离:不同车厢、不同站厅的网络设备用独立机柜
  • 逻辑隔离:用VLAN把广播域切开,别让一个ARP风暴搞死全网
  • 电源隔离:冗余设备接不同UPS,甚至不同配电柜

避坑指南:我曾经在一个项目里,两台核心交换机放在同一个机柜里。结果机柜空调坏了,两台一起过热宕机。从那以后,我要求冗余设备必须分开放,最好隔一个防火分区。

你想想看,如果列车中间车厢的PIS全挂了,至少两端车厢还能报站。这就是故障域隔离的价值——把损失控制在最小范围。

2.3 冗余层级划分:从设备到链路,层层设防

冗余不是堆设备,而是分层设防。我一般把PIS网络冗余分成四个层级:

  1. 设备级冗余:核心交换机双机热备、服务器主备切换
  2. 链路级冗余:双链路、聚合链路、环网保护
  3. 网络级冗余:双平面、双星型、双环型拓扑
  4. 站点级冗余:控制中心双活、异地灾备

每个层级解决不同的问题。设备级冗余防硬件故障,链路级冗余防光纤被挖断,网络级冗余防交换机整机挂掉,站点级冗余防地震火灾。

我的经验:别试图在一个层级解决所有问题。我曾经见过有人用一台超级贵的核心交换机,号称99.999%可靠。结果电源模块坏了,整机换下来花了4小时。还不如两台普通交换机做堆叠,坏一台自动切换。

嗯,这里要注意:层级越多,成本越高,运维复杂度也越高。一般地铁线路做到网络级冗余就够了,高铁调度中心才需要站点级冗余。

2.4 N+1与2N冗余模型:选哪个?看预算

这两个模型是冗余设计的经典套路。我直接说人话:

  • N+1:你需要N台设备干活,我多备1台。比如你需要3台服务器,我放4台。坏1台不影响。
  • 2N:你需要N台,我直接放2N台。完全镜像,坏一半还能跑。

举个例子,PIS系统的视频流服务器:

模型 设备数量 容错能力 成本
无冗余 N 0
N+1 N+1 1台故障
2N 2N N台故障

我在北京某线路的设计中,核心交换机用了2N模型——两台完全独立的交换机,各自带一半终端。一台挂了,另一台接管全部流量。但接入层交换机我只做了N+1,因为接入层坏一台只影响一个车厢,没必要花双倍钱。

决策建议:关键路径用2N,非关键路径用N+1。比如列车广播控制链路必须2N,但乘客信息查询终端用N+1就够了。

说白了,2N是「土豪玩法」,N+1是「性价比之选」。我建议你根据故障影响范围来定——影响全线的用2N,影响局部的用N+1。

小结

这一章咱们聊了四个原则:

  • 先定可用性目标,再谈设计
  • 故障域要切小,别让一个雷炸翻全局
  • 冗余要分层,从设备到站点层层设防
  • N+1省钱,2N保命,看场景选

下一章我会讲具体的网络拓扑设计,包括环网、双星型、双平面这些实战套路。到时候我会拿我踩过的坑当案例,保证让你少走弯路。

记住:冗余设计不是堆设备,是堆逻辑。设备再多,逻辑不对,照样宕机。