Choosing a deployment architecture

フェールオーバーマネージャーは、 Postgresストリーミングレプリケーションクラスターの状態を監視し、障害を迅速に検証する高可用性モジュールです。データベース障害が発生すると、フェールオーバーマネージャーはストリーミングレプリケーションスタンバイノードを書き込み可能プライマリノードに自動的にプロモートさせることができます。この機能により、継続的パフォーマンスが保証され、サービスの中断を最小限に抑えてデータロスを防ぐことができます。

フェールオーバーマネージャークラスターは、ネットワーク上の次のホストにあるフェールオーバーマネージャープロセスで構成されます。

  • プライマリノードは、サービスを提供しているプライマリデータベースサーバです。 データベースクライアント。

  • 1つ以上のスタンバイノードがストリーミングレプリケーションている プライマリノードに関連しています。

  • 監視ノードは、プライマリまたはアサーションのいずれかのアサーションを確認します フェイルオーバーシナリオでのスタンバイ。障害シチュエーション中に、 プライマリは、半分以上のノードがあるパーティションにあります。 プライマリのままです。そのため、フェールオーバーマネージャーは、 偶数のエージェントを持つクラスター。

Failover Managerは、 Postgres接続プーラーと接続ライブラリを使用して、EDBPostgres Advanced Serverにさまざまな高可用性オプションを提供します。これらのオプションは、高可用性アーキテクチャに影響を与えます。

データベースの高可用性を保証に、Failover Managerのコア機能をPostgres接続ライブラリ(クライアント接続フェイルオーバー)および接続プーラーと組み合わせることができます。

Failover Managerの機能により、 EDBは、高可用性環境を実行するための4つの基本アーキテクチャを設計しました。

  1. Failover Manager using VIP (virtual IP):フェールオーバーマネージャーには、VIPアドレスをすぐに管理できるキー機能があります。 VIPアドレスにより、アプリケーションは、プライマリデータベースサーバにルーティングされている単一のIPアドレスに接続できます。このアーキテクチャは、VIPアドレスが環境で利用可能な場合に実行する最も基本的なソリューションです。

2 .: libpqやjdbcなどのPostgreSQLクライアントライブラリでは、クライアント接続のフェイルオーバーが可能です。クライアント接続フェイルオーバーでは、接続文字列にマルチプルのサーバー(ホスト= srv1、srv2)が含まれ、クライアントライブラリが使用可能なホストをループして、使用可能で読み書き操作が可能な接続を見つけます。この機能により、クライアントはスイッチオーバー中にマスタを追跡できます。このソリューションは、仮想IPアドレスに依存しません。このようなクライアント構成を設定できるすべての環境で使用できます。

  1. Failover Manager with PgBouncer:PgBouncerは、コネクションプーリングやトラフィックを停止するオプションなどの機能を追加します。また、クライアントとPostgresデータベースサーバ間のプロキシとして使用することもできます。フェールオーバーマネージャーPgBouncerを使用して、トラフィックを正しいプライマリデータベースサーバにルーティングできます。

  2. Failover Manager with Pgpool:Pgpool-IIは、クライアントとPostgresデータベースサーバ間のプロキシとして使用される別のツール。 Pgpool-IIは、Watchdogを使用したクラスターモードでの実行、VIPの管理、読み取り専用のスケーラビリティなどの機能を追加します。フェールオーバーマネージャーには、Pgpool-IIと統合してデータベースフェイルオーバー操作中に別のプライマリにトラフィックをリダイレクトするネイティブ機能があります。

これらの機能は、各アーキテクチャでサポートされています。

クライアント接続フェイルオーバー

Features

Failover Manager with VIP

Failover Manager with client connect failover

Failover Manager with with PgBouncer

Failover Manager with with Pgpool

Connection pooling

Yes

Yes

Runs on cloud (no VIP)

Yes

Yes

Yes

Halt traffic option

Yes

Read-only scalability

Yes (using multiple connection factories)

Yes

Clustered proxy

Yes

Proxy integration

ssh

PCP

Minimum servers required

3

3

5

6

Complexity

Low

Low

Medium

High

Network hops

1

1

Failover duration

Low

Medium

Low

Low