適用於 Azure Cosmos DB for PostgreSQL 中可用性區域中斷復原
適用於: Azure Cosmos DB for PostgreSQL (由 PostgreSQL 的 Citus 資料庫延伸模組提供)
許多 Azure 區域都有可用性區域。 可用性區域 (AZ) 是區域內資料中心的分隔群組。 可用性區域既要夠接近,可對其區域內的其他可用性區域進行低延遲連線。 其透過高效能網路進行連線,而往返延遲小於 2 毫秒。
同時,可用性區域又要相距夠遠,以降低一個以上的可用性區域受當地中斷或天氣影響的可能性。 可用性區域擁有獨立的電源、冷卻和網路基礎結構。 其設計目的是當某個區域遇到中斷時,跨各種 Azure 服務的其餘區域能夠支援區域服務。
Azure Cosmos DB for PostgreSQL 支援可用性區域,以提高可靠性和災害復原能力。 可用性區域的優點各有不同,取決於 Azure Cosmos DB for PostgreSQL 叢集上是否啟用了高可用性。
區域服務元件的可用性區域中斷復原
每個支援的 Azure 區域中有許多 Azure Cosmos DB for PostgreSQL 服務元件,不屬於個別叢集,但是執行受控服務的重要部分。 這些元件允許持續執行所有管理作業,例如佈建新叢集和調整現有叢集,以及監視節點健康情況等所有內部作業。
當 Azure 區域支援可用性區域時,所有這些服務元件都會設定為 AZ 備援。 這表示所有 Azure Cosmos DB for PostgreSQL 服務元件都可以維持 AZ 中斷,換句話說,可以復原單一 AZ 中斷。
叢集是否設定高可用性,其進行中的作業取決於這些服務元件。 服務元件的 AZ 備援是 Azure Cosmos DB for PostgreSQL 中可用性區域中斷復原的重要元素。
無論叢集是否具備高可用性,可用性區域都會對其造成影響
叢集中的所有節點都會佈建到一個可用性區域。 慣用 AZ 設定可讓您將所有叢集節點放在部署應用程式所在的相同可用性區域中。 包含相同 AZ 中的所有節點可確保節點之間低延遲,進而改善整體叢集效能。
在叢集上啟用高可用性時,所有主要節點都會在一個 AZ 中建立,而所有待命節點都會佈建到另一個 AZ。 在下列事件期間,節點可以在可用性區域之間移動:
- 已啟用 HA 的主要節點發生故障。 在此情況下,主要節點的待命將會變成新的主要節點,而待命節點的 AZ 將會是該主要節點的新 AZ。
- 叢集上發生排程維護事件。 在維護結束時,叢集中的所有主要節點都會位於相同的 AZ 中。
如果啟用了高可用性,叢集會在整個 AZ 中斷期間繼續提供使用,且在受影響的 AZ 中的主要節點上可能會進行容錯轉移。 如果叢集上未啟用高可用性,則只有部署節點的 AZ 中斷會影響叢集可用性。
您可以使用 Azure 入口網站,或使用 REST API 等程式設計方法,檢查每個主要節點的可用性區域。
若要取得可用性區域的復原優點,您的叢集必須位於其中一個 Azure 區域,在此區域中,Azure Cosmos DB for PostgreSQL 設定為 AZ 中斷復原。
下一步
- 查看 Azure Cosmos DB for PostgreSQL 中針對 AZ 中斷復原設定的區域
- 了解 Azure 中的可用性區域
- 了解如何在叢集中啟用高可用性