跳至內容

我該如何使用 Route 53 的運作狀態檢查來進行 DNS 容錯移轉?

2 分的閱讀內容
0

我想要使用 Amazon Route 53 的運作狀態檢查來設定 DNS 容錯移轉。

簡短說明

您可以使用 Route 53 檢查資源的運作狀態,並且只在回應 DNS 查詢時傳回運作正常的資源。DNS 容錯移轉組態有三種類型:

  1. 主動-被動: Route 53 會主動傳回主要資源。如果發生故障,Route 53 會傳回備份資源。Route 53 會透過容錯移轉政策設定此方法。
  2. 主動-主動: Route 53 會主動傳回多個資源。如果發生故障,Route 53 會回復至運作正常的資源。Route 53 會透過除容錯移轉以外的任何路由政策設定此方法。
  3. 組合: 多個路由政策 (例如以延遲為基礎和加權) 會組合成樹狀結構,以設定較複雜的 DNS 容錯移轉。

解決方法

**注意:**如果 Amazon CloudFront 是您的主要目標,那麼以下解決方法不適用。

主動-被動容錯移轉

主動-被動 DNS 容錯移轉是最簡單的方法,其會使用一個主要資源和一個次要資源。

**注意:**在您繼續之前,請務必為主要資源建立 Route 53 運作狀態檢查

使用容錯移轉別名記錄的值來為主要與次要資源建立兩筆資源記錄。對於每一筆記錄,請完成下列步驟:

  1. 輸入您資源的 Name (名稱),(例如 resource.example.com)。
    **注意:**兩個資源請使用相同的名稱。
  2. Type (類型) 中,選擇 A - IPv4 address (A - IPv4 位址)。
  3. Alias (別名) 中,選擇 Yes (是)。
  4. Alias Target (別名目標) 中,輸入主要資源的 DNS 名稱。接著會顯示 Alias Hosted Zone ID (別名託管區域 ID)。
  5. Routing Policy (路由政策) 中,選擇 Failover (容錯移轉)。
  6. 對於主要記錄,在 Failover Record Type (容錯移轉記錄類型) 中選擇 Primary (主要)。在 Set ID (設定 ID) 中輸入唯一的名稱 (例如 elb-Primary)。
  7. 對於次要記錄,在 Failover Record Type (容錯移轉記錄類型) 中選擇 Secondary (次要)。在 Set ID (設定 ID) 中輸入唯一的名稱 (例如 elb-Secondary)。
  8. Evaluate Target Health (評估目標運作狀態) 中,為主要記錄選擇 Yes (是)。為次要記錄選擇 No (否)。
  9. 對於主要記錄,在 Associate with Health Check (與運作狀態檢查建立關聯) 中選擇 Yes (是)。在 Health Check to Associate (要關聯的運作狀態檢查) 中,選擇您為主要資源建立的運作狀態檢查。
  10. 選擇 Create (建立) 以建立您的記錄。

這些記錄現在會將網域指向您的主要資源,或在發生故障時容錯移轉至次要資源。

主動-主動容錯移轉

主動-主動 DNS 容錯移轉會在回應 DNS 查詢時傳回多個資源。當其中一個資源運作狀態不良時,Route 53 會容錯移轉至另一個資源。

**注意:**在您繼續之前,請務必為兩個資源建立 Route 53 運作狀態檢查。

使用容錯移轉別名記錄的值,為每個資源建立一筆記錄。對於每一筆記錄,請完成下列步驟:

  1. 輸入您資源的 Name (名稱),(例如 resource.example.com)。
    **注意:**請務必為每一筆記錄使用相同的 Name (名稱)。
  2. 選擇記錄的 Type (類型) (例如 A - IPv4 address (A - IPv4 位址))。
    **注意:**資源的所有記錄都必須使用相同的 Type (類型)。
  3. Alias (別名) 中,選擇 Yes (是)。
  4. Alias Target (別名目標) 中,輸入資源的 DNS 名稱。接著會顯示 Alias Hosted Zone ID (別名託管區域 ID)。
  5. 選擇 Routing Policy (路由政策),並輸入該政策適用的值 (例如針對 Weighted policy (加權政策) 的 Weight (權重))。在 Set ID (設定 ID) 中,為此資源輸入唯一的名稱 (例如 Resource 1)。
    **注意:**對於加權路由政策,請將所有記錄設定為相同的權重 (例如 10)。或是將所有記錄設定為不同的權重 (例如 20 和 10,其中權重為 20 的記錄會接收兩倍的流量)。
  6. Evaluate Target Health (評估目標運作狀態) 中,選擇 Yes (是)。
  7. Associate with Health Check (與運作狀態檢查建立關聯) 中,選擇 Yes (是)。
  8. Health Check to Associate (要關聯的運作狀態檢查) 中,選擇您為此資源建立的運作狀態檢查。
  9. 選擇 Create (建立) 以建立您的記錄。

組合式容錯移轉

您可以結合多個路由政策與運作狀態檢查,以建立複雜的容錯移轉機制。透過這些機制,Route 53 會在傳回適當的記錄之前,周遊多個記錄階層。

假設您有三個端點。您可以在端點 A 與 B 之間進行流量負載平衡。當前兩個端點未通過運作狀態檢查時,您可以回復至端點 C。於此組態中,您會有兩個路由階層。在較低的路由階層中,Route 53 會使用記錄的運作狀態檢查來確認端點 A 與 B 的運作狀態正常。接著,流量會平均路由至兩個主要資源。如果端點 A 與 B 未通過運作狀態檢查,流量就會容錯移轉至較高的路由階層。在較高的路由階層中,Route 53 會將流量路由至端點 C 作為次要後援資源。

若要建立此組態,請完成下列步驟:

  1. 為全部三個端點建立 Route 53 運作狀態檢查,並將它們與運作狀態檢查記錄建立關聯。
  2. 在較低的路由階層中,為端點 A 與 B 的網域名稱建立兩筆權重相同的加權記錄。
    **重要:**請務必將端點 A 與 B 的運作狀態檢查與其加權記錄建立關聯。此步驟可讓 Route 53 判斷每筆記錄的運作狀態,並依據結果在它們之間進行流量負載平衡。
  3. 在較高的路由階層中,為端點 C 的網域名稱建立容錯移轉記錄 (例如 domain.example.com)。
    **重要:**請務必確認主要記錄是別名記錄,且其指向您在步驟 2 中建立的 resource.example.com 記錄。同時請確認次要記錄將端點 C 指定為容錯移轉資源。
  4. 設定 Route 53 以判斷主要容錯移轉記錄的運作狀態。建立自訂運作狀態檢查,以判斷兩筆加權記錄的運作狀態 (例如計算式運作狀態檢查)。或者,使用記錄選項來評估目標運作狀態

此容錯移轉組態會使用下列工作流程:

  1. 用戶端會請求 domain.example.com
  2. 如果主要記錄通過運作狀態檢查,Route 53 會將流量傳送至 resource.example.com 的負載平衡主要資源記錄。這會將用戶端指向端點 A 或 B。
  3. 如果主要記錄未通過運作狀態檢查 (端點 A 與 B 未通過運作狀態檢查),主要記錄會標示為運作狀態不良。主要記錄會容錯移轉至次要記錄。接著,Route 53 會將用戶端請求傳送至端點 C (後援資源)。
  4. 當主要記錄再次通過運作狀態檢查時,Route 53 會自動回復至主要資源記錄 (端點 A 與 B)。

相關資訊

當設定了運作狀態檢查時,Route 53 如何選擇記錄

AWS 官方已更新 3 年前