View a markdown version of this page

關於路由控制 - Amazon Application Recovery Controller (ARC)

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

關於路由控制

路由控制會使用 Amazon Route 53 中的運作狀態檢查來重新導向流量,這些運作狀態檢查是以與復原群組中儲存格的最上層資源相關聯的 DNS 記錄所設定,例如 Elastic Load Balancing 負載平衡器。您可以將流量從一個儲存格重新導向到另一個儲存格,例如,將路由控制狀態更新為 Off(停止流量流到一個儲存格),並將另一個路由控制狀態更新為 On(啟動流量流到另一個)。變更流量流程的程序是與路由控制相關聯的 Route 53 運作狀態檢查,在 ARC 更新後,根據對應的路由控制狀態將其設定為運作狀態或運作狀態不佳。

路由控制支援跨具有 DNS 端點的任何AWS服務進行容錯移轉。您可以更新路由控制狀態,以容錯移轉流量進行災難復原,或偵測應用程式的延遲下降或其他問題。

您也可以設定路由控制的安全規則,以確保使用路由控制重新路由流量不會影響可用性。如需詳細資訊,請參閱建立路由控制的安全規則

請務必注意,路由控制本身並非監控端點基礎運作狀態的運作狀態檢查。例如,與 Route 53 運作狀態檢查不同,路由控制不會監控回應時間或 TCP 連線時間。路由控制是一種簡單的開關,可控制運作狀態檢查。一般而言,您會變更狀態以重新導向流量,而該狀態變更會將流量移至整個應用程式堆疊的特定端點,或防止路由至整個應用程式堆疊。例如,在簡單案例中,當您將路由控制狀態從 變更為 OnOff,它會更新與 DNS 容錯移轉記錄相關聯的 Route 53 運作狀態檢查,以將流量移出端點。

如何使用路由控制

若要更新路由控制狀態,以便重新路由流量,您必須連線到 ARC 中的其中一個叢集端點。如果您嘗試連線的端點無法使用,請嘗試使用另一個叢集端點變更狀態。您應該準備好變更路由控制狀態的程序,以輪換方式嘗試每個端點,因為叢集端點會循環顯示可用和無法使用的狀態,以進行定期維護和更新。

建立路由控制時,您可以設定 DNS 記錄,將路由控制運作狀態檢查與每個應用程式複本前面的 Route 53 DNS 名稱建立關聯。例如,若要控制兩個負載平衡器之間的流量容錯移轉,請在兩個區域中各建立一個路由控制運作狀態檢查,並將其與兩個 DNS 記錄建立關聯,例如具有容錯移轉路由政策的別名記錄,以及個別負載平衡器的網域名稱。

您也可以使用 ARC 路由控制搭配 Route 53 運作狀態檢查和 DNS 記錄集,並使用具有加權路由政策的 DNS 記錄,來設定更複雜的流量容錯移轉案例。若要查看詳細範例,請參閱下列AWS部落格文章中有關容錯移轉使用者流量的章節:使用 Amazon Application Recovery Controller (ARC) 建置高彈性的應用程式,第 2 部分:多區域堆疊

當您AWS 區域使用路由控制啟動 的容錯移轉時,由於流量流程涉及的步驟,您可能不會立即看到流量移出 區域。視用戶端行為和連線重複使用而定,區域中現有的進行中連線也可能需要一小段時間才能完成。根據您的 DNS 設定和其他因素,現有的連線可能會在幾分鐘內完成,或者可能需要更長的時間。如需詳細資訊,請參閱確保流量轉移快速完成

路由控制的優點

相較於使用傳統運作狀態檢查重新路由流量,ARC 中的路由控制有幾個好處。例如:

  • 路由控制可讓您容錯移轉整個應用程式堆疊。這與 Amazon EC2 執行個體根據資源層級運作狀態檢查容錯移轉堆疊的個別元件相反。

  • 路由控制為您提供安全、簡單的手動覆寫,您可以用來轉移流量以進行維護,或在內部監視器未偵測到問題時從故障中復原。

  • 您可以搭配使用路由控制與安全規則,以防止全自動化運作狀態檢查型自動化可能發生的常見副作用,例如容錯移轉到尚未準備好進行容錯移轉的待命基礎設施。

以下是將路由控制整合到您的容錯移轉策略中的範例,以改善應用程式的彈性和可用性AWS。

您可以透過跨區域執行多個 (通常是三個) 備援複本AWS,在 上支援高可用性AWS的應用程式。然後,您可以使用 Amazon Route 53 路由控制將流量路由到適當的複本。

例如,您可以將一個應用程式複本設定為作用中,並為應用程式流量提供服務,而另一個則是待命複本。當您的作用中複本發生故障時,您可以在該處重新路由使用者流量,以還原應用程式的可用性。您應該根據監控和運作狀態檢查系統的資訊,決定要離開或離開複本。

如果您想要啟用更快的復原,您可以為架構選擇的另一個選項是主動-主動實作。透過此方法,您的複本會同時處於作用中狀態。這表示您只需將流量重新路由到另一個作用中複本,即可將使用者移離受損的應用程式複本,從失敗中復原。