Installation

HARPの標準インストールには、2つのシステムサービスが含まれます。

  • 管理対象ノードのHARP Manager(harp-manager )

*他の場所でのHARPプロキシ(harp-proxy )

これらのサービスをインストールして構成し、適切なクォーラムベースの接続ルーティングのためにPostgresを管理するには2つの方法があります。

ソフトウェアバージョン

HARPは外部ソフトウェアに依存しています。これらは、ここにリストされている最小バージョンに適合する必要があります。

Software

Min version

etcd

3.4

PgBouncer

1.14

TPAExec

HARPをインストールして構成する最も簡単な方法は、クラスターの展開と管理にEDB TPAexecユーティリティを使用することです。本ソフトウェアの詳細は、

TPAexec product page を参照してください。

注釈

TPAExecは現在、特にEDB Postgres分散クラスター展開専用のEULAを介してのみ入手できます。 TPAExec URLにアクセスできない場合は、営業またはアカウント担当者にお問い合わせください。

TPA config.yml ファイルに次の属性が含まれていることを確認して、クラスタールーティングがHARPを介して管理されていることを認識するようにTPAexecを構成します。

cluster_vars:
  failover_manager: harp

注釈

21.1より前のTPAexecのバージョンでは、少し異なるアプローチが必要です。

cluster_vars:
  enable_harp: true

この後、クラスターを変更するためのtpaexec コマンドを呼び出して、 HARPをインストールします。

tpaexec provision ${CLUSTER_DIR}
tpaexec deploy ${CLUSTER_DIR}

クラスター固有の考慮事項を除き、他の変更は必要ありません。

パッケージのインストール

現在、CentOS / RHELパッケージはEDBパッケージインフラストラクチャによって提供されています。詳細は、HARP product pageを参照してください。

etcdパッケージ

現在、多くの一般的なLinuxディストリビューションのetcd パッケージは、標準のパブリックリポジトリでは利用できません。したがって、EDBはRHELおよびCentOSバージョン7および8、Debian、およびUbuntu LTSなどのバリアント用にetcd をパッケージしました。これらのライブラリを使用するには、 HARPパッケージリポジトリにアクセスする必要があります。

コンセンサスレイヤー

HARPの動作には分散コンセンサスレイヤーが必要です。現在、これはbdr またはetcd のいずれかである必要があります。 3つ未満のBDRノードを使用する場合、 etcd に依存する必要がある場合があります。それ以外の場合、 BDRサービスが停止すると、コンセンサスレイヤーが単一のノードに削減されるため、ノードのコンセンサスが妨げられ、Postgresルーティングが無効になります。

etcd

コンセンサスレイヤーとしてetcd を使用している場合、 etcd はPostgresノードに直接インストールするか、アクセスできる別の場所にインストールする必要があります。

etcd をコンセンサスレイヤーとして設定するには、このコードをHARP config.yml 構成ファイルに含めます。

dcs:
  driver: etcd
  endpoints:
    - host1:2379
    - host2:2379
    - host3:2379

TPAExecを使用する場合、設定済みのetcdエンドポイントはすべてここに自動的に入力されます。

BDR

bdr ネイティブコンセンサスレイヤーは、 BDR 3.6.21および3.7.3から利用できます。このコンセンサスレイヤーモデルでは、 EDB Postgres分散クラスターのルーティングを管理する際に補助ソフトウェアは必要ありません。

クラスターでクォーラムを使用できるようにするには、ノードのメンテナンスまたは停止中にBDRのコンセンサスレイヤーが応答し続けるように、常に3つ以上のノードを使用します。

BDRをコンセンサスレイヤーとして設定するには、これを config.yml 構成ファイルに含めます。

dcs:
  driver: bdr
  endpoints:
    - host=host1 dbname=bdrdb user=harp_user
    - host=host2 dbname=bdrdb user=harp_user
    - host=host3 dbname=bdrdb user=harp_user

BDRコンセンサスレイヤーのエンドポイントは、標準のPostgres DSN接続フォーマットに従います。