這將是對一些容易混淆由於PostgreSQL的人窮術語的選擇,但請多多包涵......集羣PostgreSQL的集羣
我們需要能夠支持多個PostgreSQL(PG)集羣,並使用它們在多臺服務器上進行羣集,例如repmgr。例如,要支持每個PG羣集的服務器可用性和PITR。在許多情況下,每臺服務器的單個PG集羣成本太高,因此我們在單獨的PG集羣上進行數據分離,恢復等等的多租戶(小型)客戶,但也希望能夠通過複製/過度。
PG羣集最接近的類比是一個SQL Server實例 - 每個實例可以承載多個數據庫,擁有自己的端口等。與SQL Server類似,您可以在同一臺服務器上運行多個實例(PG羣集),並設置爲每個複製。
基本repmgr設置沒有問題 - 在單個PG羣集模型中似乎相當清楚。但是,是否有使用repmgr的多個PG羣集的推薦/支持方法?我可以想象假裝repmgr認爲每個PG集羣實際上是一個獨立的repmgr集羣(帶有單獨的repmgr.conf,連接信息/端口)。但是,我不確定這會起作用。
我通常會希望故障轉移到同一臺服務器上的所有PG羣集,而不是一次一個。
我認識到這可能不是所有情況下的最佳主意,但我主要探索什麼是可能的。我有一些選擇,但是這與我們目前的單節點模型最接近。
爲了澄清,我需要支持許多服務器羣集中的數千名客戶。理想情況下,每個集羣使用相同的repmgr DB(例如在主PG集羣中),並且基本上獨立於其他服務器集羣。
謝謝...
我真想PostgreSQL的砸術語「集羣」 :(。我用「實例」來代替。也許你應該修改相應澄清。無論如何,這聽起來像你節約了大量的單租戶的Postgres實例。考慮自動化這通過工具 - Ansible,Puppet等 - 和容器 - Docker,AWS等。 –