簡體   English   中英

Postgres 數據庫的多區域可用性能夠為我們的客戶提供 4+9 的可用性?

[英]Multi-Region Availability for Postgres Database to be able to offer our clients 4+ 9's of availability?

我們使用 Google Cloud SQL,在高可用性模式下部署時,它提供 99.95% 的 SLA。 Google 仍然在同一區域內提供其高可用性,只是在不同的區域內。 我們有客戶要求 99.99% 的 SLA,並願意支付 99.999% 的費用。

我們唯一想到的是在另一個區域創建一個只讀副本,如果發生這種中斷,我們可以故障轉移到該區域。 不過,這樣的故障轉移將是手動的。 我們必須 1. 關閉我們的主數據庫。 2. 提升只讀副本 3. 重新部署我們的服務器,更改我們數據庫的環境變量。

由於一切都是如此手動,似乎很難將其作為我們 SLA 的一部分提供,因為這樣的更改需要大約 30 分鍾。 我們需要設置一些自動的東西。

當然,這不是一個普遍的問題。 必須有更好的方法來實現 postgres 的更高可用性。 其他公司是做什么的?

我一直在管理 PostgreSQL 高可用性集群。 我們在 VMWare 上進行了多區域部署的故障轉移測試。 您需要以下步驟進行故障轉移:

  1. 使用pg_promote DR 區域中的備用服務器
  2. 在promoted done 上運行CHECKPOINT ,以便將加入這個新提升節點的其他節點獲得最新信息。
  3. 使用pg_rewind將其他集群節點加入這個新提升的節點,僅用於差異同步。 如果部署新節點,則需要使用pg_basebackup加入這個新節點。

額外提示:如果支持復制槽,則應在執行步驟 1 后立即為每個其他集群節點創建復制槽。

以上所有步驟都需要使用一些工具作為 sidecar 監控執行

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM