🛡️ FortiGate HA / FGCP / Config Sync 完整指南:主備切換、會議同步、版本相容
企業環境中,FortiGate 是常見的關鍵防火牆設備,而打造可用性高、不間斷服務的 HA(High Availability)架構更是不可忽略的一環。 本篇將完整解析 FortiGate HA 的核心技術 FGCP、主備切換原理、版本相容性、Session 同步、負載平衡,以及 Config Sync 行為。
一、FortiGate HA 模式總覽(FGCP 架構)
Fortinet 的 HA 架構稱為 FGCP(FortiGate Clustering Protocol),負責選舉主機(Primary)、同步設定、監控心跳、比對設備狀態。
HA 模式類型
| 模式 | 說明 |
|---|---|
| Active-Passive(主備) | 最常見;Primary 處理全部流量,Secondary 瞬時接手。 |
| Active-Active(負載平衡) | 多台設備共同進行 UTM/IPS/AV 分流處理。 |
| Virtual Cluster(VC) | 多 VDOM 環境可讓不同 VDOM 各自選主機。 |
必要條件
- 型號需相同(例:FG201E + FG201E)才支援全功能 FGCP。
- FortiOS 版本需相同或「支援相容性」版本。
- 需使用 Heartbeat 介面相互連接。
二、FGCP 主備選舉(Primary Selection)機制
當 HA 啟動時,FGCP 會進行主機選舉,主要依據以下順序:
- Override Priority(手動優先值)
- 設備 Uptime(運作最久者優先)
- 序號大小(SN)
設定 Priority 範例
config system ha
set mode a-p
set priority 200
set override enable
end
啟用 override 後,Priority 最高的設備會成為 Primary。
三、主備切換(Failover)觸發條件
當 Primary 出現問題時,Secondary 會立即接管流量。主要觸發條件如下:
- Heartbeat 連線中斷
- 監控的 Port/Interface Down
- 高 CPU / Memory 狀況導致 FGCP 判斷異常
- 主機重開機或 Firmware Crash
監控 Interface(link-monitor)設定
config system ha
set monitor "wan1" "lan"
end
若監控的介面變成 Down,將直接引發 Failover。
四、Session Sync(會話同步)原理
若沒有 Session Sync,Failover 時使用者連線會被中斷。
FGCP 會同步以下資訊:
- TCP/UDP Session 表
- NAT Mapping
- UTM 狀態(IPS/AV/Proxy)
查看 Session Sync 狀態
get system ha status
diagnose sys ha status
diagnose sys session sync
若 Sync 延遲過高,常見原因:
- HA 心跳使用速率太低的 Port
- 主備設備硬體效能不同(不建議)
- 大量 Session 產生瞬間塞滿 Heartbeat
五、Config Sync(設定同步)行為說明
在 FGCP 中,只能從 Primary → Secondary 單向同步。
可同步項目
- 所有 config system / firewall / policy 設定
- VIP / IP Pool / Routing / Objects
不會同步的項目
- HA 本身設定(mode/priority)
- Interface 物理設定(例如:硬體 MAC)
- Log / Report 資料
六、版本相容性(Firmware Compatibility)
FGCP 的版本容忍度比想像中高,但仍有原則:
| 版本差異 | 是否可 HA |
|---|---|
| 相同 minor(例 7.2.5 vs 7.2.6) | ✔ 完全支援 |
| 跨 minor(例 7.0.x vs 7.2.x) | ❌ 不支援 |
| 跨 major(例 6.4 vs 7.0) | ❌ 不支援 |
建議進行 HA 前,先查看 Release Notes → HA Compatibility。
七、Active-Active 的負載平衡(Load Sharing)
Active-Active 並不是流量平均分配,而是採用:
- Content delegation(IPS/AV 等 UTM 負載分流)
- Session delegation(部分 Session 轉交 backup device)
適合大流量 + UTM 高負載場合。
八、常見 HA 問題排查
1. 心跳斷線(Heartbeat Lost)
- 檢查 HA Port 是否支援 Jumbo / Auto-negotiation
- 避免使用 Switch,建議直連
2. Session 未同步
- 檢查
diagnose sys session sync - 是否大量短連線(如 53/UDP)導致壓力上升
3. Secondary 一直變成 Master
- 檢查是否啟用 override
- Priority 設定是否正確
九、部署建議與最佳實務
- Heartbeat Port 務必使用高速(1G / 10G)
- 避免讓 HA 流量經 Switch,最好直連
- 禁用 STP / Port Security 避免不必要延遲
- Policy 改動前建議拍 Snapshot(FGVM 適用)
- Firmware 升級必須先 Secondary → 再 Primary
沒有留言: