跳到內容

第三階段 — 容錯移轉

第三階段在 第一階段 的區域基礎上新增健康檢查容錯移轉功能:F5 XC DNS 負載平衡器會根據資源池的健康狀態,對同一名稱回傳不同的解析結果,使流量自動切換至健康的資源池。

DNS 負載平衡器堆疊由三個 F5 XC 資源加上區域中的一筆記錄組成:

資源角色
xcsh_dns_lb_health_check探測每個成員(HTTP、HTTPS、TCP、ICMP 或 UDP)以判斷資源池的健康狀態
xcsh_dns_lb_pool一組成員,具有負載平衡模式(ROUND_ROBINPRIORITY 等)及健康檢查的參照
xcsh_dns_load_balancer依請求選擇資源池的規則,並設有備援資源池
lb_record(位於 xcsh_dns_zone 中)將區域中的名稱繫結至 DNS 負載平衡器

dns-lb 模組將實現上述資源,區域模組也將新增指向負載平衡器的 lb_record 項目,因此只需執行一次 terraform apply 即可建立完整的容錯移轉路徑。

模組發布後,容錯移轉演示將執行以下步驟:

  1. 在 DNS 負載平衡器後方部署兩個資源池(主要與次要),並配置健康檢查。
  2. 解析負載平衡名稱,確認其回傳主要資源池的解析結果。
  3. 使主要資源池進入不健康狀態,確認解析結果容錯移轉至次要資源池 — 就緒閘道會持續輪詢 dig 直至解析結果變更。
  4. 還原主要資源池,確認容錯回復正常運作。

在此之前,請繼續前往 第四階段 — 拆除 以移除第一階段的區域。