拆解「跨站 L2 Stretched VLAN 就能零中斷」的迷思
打造雲時代真正穩健的高可用 (HA) 架構
延伸同一個 VLAN 到不同機房,看似能讓任何站點故障「瞬間接手」。
為什麼這種方案在傳統資料中心工程師之間層出不窮?
真的能帶來安全感,還是其實只是把所有風險集中在網路層?
一、為什麼大家堅持要跨站 L2?
- 心理層面的「熱備」安全感
- 在傳統觀念裡,只要 IP/MAC 不變、VRRP 能飄動,應用就能無縫接手。
- 對決策者來說,「零改動、零中斷」聽起來最保險。
- 對 Layer 2 機制的誤解
- 許多人只看到 平時 能 Ping、能 vMotion,就認定技術可行;
但忽略 ARP 廣播延遲、STP 迴圈、Split‑brain 等「異常情境」。
- 平台文件的「示意圖誤導」
- VMware VCF / NSX 等文件的 Stretched Cluster 圖例,把兩站畫成同一 VLAN。
- 很多讀者直接把示意圖等同「官方最佳實踐」,卻沒注意附帶條件:
距離必須極近、RTT < 5 ms,且要有昂貴專線與 L2 延伸設備。
- 跨層協作成本被低估
- 如果改用 L3,勢必要修改防火牆規則、Application 參數、甚至調整部署流程。
- 「只要網路拉通,其他人都不用動」 聽起來省事,於是變成最小阻力的選擇。
二、把所有問題丟給網路:代價是什麼?
1. Split‑brain 危機
當 WAN 抖動或中斷時,兩站的心跳訊號會彼此失聯。
VRRP/HSRP 彼此都以為對方死掉,於是「雙主」同時對外服務。
資料寫入衝突、交易雙邊都失敗,往往比單點失效影響更大。
2. 廣播/多播風暴
L2 需要 ARP、GARP、STP 等廣播控制訊息。
若跨城市傳送,每個節點都得接收遠端廣播,
浪費頻寬,也讓整條 WAN 變成放大器,將任何 L2 攻擊面無限延伸。
3. 故障域放大
本來局限於單一機房的 L2 問題(如 MAC Flap、迴圈)
會瞬間擴散到另一個站點,讓兩邊同時當機。
排障時,光要確認「是哪個交換器在製造洪水」就可能花掉數小時。
4. 高昂且複雜的基礎建設
要確保跨站 L2 穩定,你通常需要:
- 專線或 MPLS/EVPN,保證低延遲、零丟包。
- L2 Gateway / DCI 方案(VXLAN/OTV 等)維運與授權成本。
- 24×7 網路監控與診斷工具,否則任何抖動都可能引爆「雙活」。
三、走向雲時代的健康路徑
1. 站點內 L2,站點間升級到 L3
- BGP/OSPF + Anycast VIP:讓服務 IP 在多站點同時公告,由路由收斂決定存活路徑。
- DNS 或 GSLB:以健康探測為基礎自動切換,用戶端感知最小。
- WAN 異常時僅影響跨站流量,站點內依舊正常,故障域被隔離。
2. 應用/資料層原生同步
- 資料庫:MySQL Group Replication、PostgreSQL Patroni、MS SQL AlwaysOn。
- 容器工作負載:Kubernetes StatefulSet + Volume Replication,或使用雲端的區域性儲存複寫。
- Session 管理:採 Token/Cookie 策略或 Redis Cluster,多站點讀寫一致。
3. Overlay 網路只用在短距離
- 同城雙機房、RTT ≤ 5 ms 時,可用 VXLAN/GENEVE + EVPN 做「小範圍」L2 延伸。
- 超過此範圍就應該切回 L3,否則延遲難以保證應用一致性。
4. 自動化部署與基礎設施即程式碼 (IaC)
- Terraform / Ansible / GitOps:一鍵佈署或修改 IP、Route、ACL。
- 把「改 IP 很痛」轉變成 CI/CD 流程的可重複腳本,大幅降低人為錯誤。
- 結合 Chaos Engineering / 定期演練,驗證切換腳本與監控告警確實可用。
四、結語
技術做得到,不代表風險可控。
把風險藏在跨站 L2,只是短期內讓其他團隊「不用動」,
卻在網路層累積了單點爆炸的技術債。
面對多雲、容器化與自動化的未來,
L3‑based HA + 應用層同步 + IaC 才是長久之計。
與其害怕改動,不如把改動標準化、程式化,
才能真正達成 高可用、易維運、低總成本 的現代化架構.