2024 年 7 月 2 日 10:04,哔哩哔哩(以下简称 B 站)机房 A 的公网物理光缆 全部中断,导致该机房无法通过公网访问。B 站技术团队近日发布了详细的故障复盘报告,分析了此次事件中暴露的问题并提出了优化措施。
故障源于 B 站双公网接入点(POP)至机房 A 的链路同时中断,造成机房 A 公网完全脱网。B 站的网络架构采用 POP 与机房解耦设计,并建立了 B2-CDN 环网。在正常情况下,动态内容分发网络(DCDN)公网节点可通过双 POP 交叉回源站,应对单点故障。
故障发生后,站点可靠性工程师(SRE)与网络工程师迅速召开线上会议进行故障定位和止损。首先将单个运营商用户流量切向具有专线回源的 CDN 专线节点。随后,执行全站多活业务切流至机房 B,并对非多活业务流量执行降级,将用户流量切向 CDN 专线节点回源。
核心业务(如首页推荐、播放等)因配置了源站机房级别自动容灾而未受影响。然而,其他业务不同程度受到冲击。B 站在复盘中发现三个主要问题:机房极端断网故障定界较慢、部分多活业务仍需手动切流、非多活业务缺乏主动逃生机制。
针对这些问题,B 站提出了一系列技术优化措施:
1. 扩容 DCDN 专线节点算力及规模
2. 优化双公网 POP 出口异常情况下的调度预案
3. 提升故障定界效率,优化网络拓扑面板和告警展示方式
4. 持续推进多活建设并进行常态化演练
5. 为更多用户强感知场景配置机房级别自动容灾策略
6. 优化非多活流量的逃生方案
B 站表示,将在下半年重点关注多活风险治理,除了常态的切流演练外,还将启动南北向、东西向的断网演练。
(哔哩哔哩技术)