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接続フォーマットに従います。