本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
了解 Amazon DocumentDB 叢集容錯能力
Amazon DocumentDB 叢集的設計可容錯。每個叢集的磁碟區跨越單一 中的多個可用區域 AWS 區域,且每個可用區域都包含叢集磁碟區資料的副本。此功能意味著叢集可承受可用區域故障,完全不會遺失資料,服務只會短暫中斷。
如果叢集中的主要執行個體失敗,Amazon DocumentDB 會以下列兩種方式之一自動容錯移轉至新的主要執行個體:
-
透過將現有的 Amazon DocumentDB 複本提升至根據每個複本的提升層設定選擇的新主要執行個體,然後為先前的主要執行個體建立取代。容錯移轉至複本執行個體通常需要不到 30 秒的時間。在此期間,讀取和寫入操作可能會短暫中斷。若要提高叢集的可用性,建議您在兩個或多個不同的可用區域中建立至少一個或多個 Amazon DocumentDB 複本。
-
建立新的主要執行個體。只有在叢集中沒有複本執行個體,而且可能需要幾分鐘的時間才能完成時,才會發生這種情況。
如果叢集有一或多個 Amazon DocumentDB 複本,Amazon DocumentDB 複本會在失敗事件期間提升為主要執行個體。失敗事件會導致短暫中斷,在此期間,讀取和寫入操作會失敗,並引發例外狀況。不過,服務通常會在 120 秒之內恢復,往往不超過 60 秒。若要提高叢集的可用性,建議您在兩個或多個不同的可用區域中建立至少一個或多個 Amazon DocumentDB 複本。
您可以透過為每個複本指派優先順序,自訂在失敗後將 Amazon DocumentDB 複本提升至主要執行個體的順序。優先順序從 0 (代表最高優先順序) 到 15 (代表最低優先順序)。如果主要執行個體失敗,具有最高優先順序的 Amazon DocumentDB 複本會提升為新的主要執行個體。您可以隨時修改 Amazon DocumentDB 複本的優先順序。修改優先順序不會觸發容錯移轉。您可以搭配 --promotion-tier
參數使用 modify-db-instance
操作。如需更多有關自訂執行個體容錯移轉優先順序的詳細資訊,請參閱Amazon DocumentDB 的故障。
多個 Amazon DocumentDB 複本可以共用相同的優先順序,進而產生提升層。如果兩個或多個 Amazon DocumentDB 複本具有相同的優先順序,則大小最大的複本會提升為主要複本。如果兩個或多個 Amazon DocumentDB 複本具有相同的優先順序和大小,則會提升相同促銷層中的任意複本。
如果叢集不包含任何 Amazon DocumentDB 複本,則會在失敗事件期間重新建立主要執行個體。失敗事件會導致中斷,在此期間,讀取和寫入操作會失敗,並引發例外狀況。建立新的主要執行個體後,服務就會恢復,通常不超過 10 分鐘。將 Amazon DocumentDB 複本提升至主要執行個體比建立新的主要執行個體快得多。