これは、PostgreSQLの人々によって貧弱な用語の選択のために、いくつかのために混乱することが、私と一緒にご負担くださいます...クラスタリングPostgreSQLのクラスタ
我々は、複数のPostgreSQL(PG)クラスタをサポートすることができるようにする必要がありますそれらを複数のサーバ上にクラスタリングします。 repmgr。たとえば、サーバーの可用性と各PGクラスタのPITRの両方をサポートするためです。サーバごとの単一のPGクラスタは、多くの場合高価すぎるため、データの分離やリカバリなどのために、別々のPGクラスタ上の複数のテナント(小規模な)顧客が、複製/以上。
PGクラスタに最も近い類推は、複数のDBをホストし、それぞれ独自のポートなどを持つことができるSQL Serverインスタンスです。SQL Serverと同様に、複数のインスタンス(PGクラスタ)を同じサーバー上で実行し、それぞれの複製を作成します。
基本的なrepmgr設定は問題ありません。これは、単一のPGクラスタモデルでは明らかです。しかし、repmgrを使って複数のPGクラスタに推奨/サポートされるアプローチはありますか? Repmgrが各PGクラスタが別々のrepmgrクラスタ(別々のrepmgr.conf、接続情報/ポートを持つ)になっていると考えるのは間違いありません。しかし、私はまだそれがうまくいくかどうかはわかりません。
私は通常、同じサーバー上のすべてのPGクラスタをフェイルオーバーすることを期待しています。一度に1つではありません。
私はこれがすべてのケースで最良のアイデアではないかもしれないと認識していますが、ほとんど可能なことを模索しています。私にはいくつかの選択肢がありますが、これは現在のシングルノードモデルに最も近いものです。
明確にするために、私は多くのサーバークラスタで数千人の顧客をサポートする必要があります。理想的には、各クラスタは、(例えば、メインPGクラスタ内の)同じrepmgr DBを使用し、本質的に他のサーバクラスタから単独で立っている。
おかげで...
私は本当にPostgreSQLに "cluster"という言葉を削除したいと思っています:私は代わりに "instance"を使用していますが、それに応じて編集する必要があります。このツールを使って - 有能な、人形など - と容器 - ドッカー、AWSなど –