Configuring HARP¶
failover_manager がBDR
-Always-ONクラスターのデフォルトであるharp
に設定されている場合、TPAはHARPをインストールして構成します。
HARPのインストール¶
harp-manager およびharp-proxy
パッケージを提供する必要があります。これらのパッケージへのアクセスを取得するには、EDBに連絡してください。
HARPの構成¶
HARP構成の詳細については。
cluster_name |
`` |
クラスターの名前。 |
harp_consensus_protocol |
`` |
使用するコンセンサスレイヤー(etcd`または`bdr) |
harp_location |
location |
このインスタンスの場所(デフォルトは`location`パラメーター) |
harp_ready_status_duration |
10 |
ノードの準備状況が更新されない場合に持続する時間(秒)。 |
harp_leader_lease_duration |
6 |
リードマスターのリースが更新されない場合の秒単位の時間。 |
harp_lease_refresh_interval |
2000 |
リードマスターリースの更新間の時間(ミリ秒)。 |
harp_dcs_reconnect_interval |
1000 |
切断されたノードがDCSへの再接続を試行する間隔(ミリ秒単位)。 |
harp_dcs_priority |
500 |
2つのノードが等量のラグとリードマスターリースを取得するためのその他の適格な基準を持っている場合、これはあるノードを別のノードよりも優先するための追加のランキング値として機能します。 |
harp_stop_database_when_fenced |
false |
考えられるすべてのルーティングからノードを単に削除するのではなく、ノードがフェンスされたときにデータベースを停止します。 |
harp_fenced_node_on_dcs_failure |
false |
HARPがDCSに到達できない場合、ノードをフェンスします。 |
harp_maximum_lag |
1048576 |
リードマスターロックの取得が許可される前に、以前のリードマスターの最後に記録されたLSNとこのノードとの間の最大許容差異(バイト)。 |
harp_maximum_camo_lag |
1048576 |
このノードとそのCAMOパートナーの間で最後に受信したLSNと適用されたLSNの間の最大許容差異(バイト)。 |
harp_camo_enforcement |
lag_only |
CAMOキューの状態を厳密に適用するかどうか。 |
harp_use_unix_sock |
false |
マネージャーデータベースへのアクセスにはUNIXドメインソケットを使用します。 |
harp_request_timeout |
250 |
DCSへのクエリが成功するまでの時間(ミリ秒)。 |
harp_watch_poll_interval |
500 |
DCSのポーリング間でスリープするミリ秒。 `harp_consensus_protocol`が`bdr`の場合にのみ適用されます。 |
harp_proxy_timeout |
1 |
Lead Masterへの組み込みのプロキシ接続タイムアウト(秒単位)。 |
harp_proxy_keepalive |
5 |
ビルトインプロキシがキープアライブpingを送信する前にリードマスターへのアイドル接続で待機する時間。 |
harp_proxy_max_client_conn |
75 |
harp-proxyが受け入れる最大クライアント接続数 (max_client_conn) |
harp_ssl_password_command |
None |
標準入力で難読化されたsslpasswordを受け取り、処理されたsslpasswordをstdoutを介して提供するカスタムコマンド。 |
harp_db_request_timeout |
10s |
dcs -> request_timeoutに似ていますが、データベース自分自身への接続用です。 |
harp-config hook を使用できます |
HARP構成ファイルのインストール後にタスクを実行します(例、追加の構成ファイルをインストールします)。
コンセンサスレイヤー¶
tpaexec configure への--harp-consensus-protocol 引数は、
BDR-Always-ONアーキテクチャーには必須です。
etcd¶
--harp-consensus-protocol etcd オプションがtpaexec configure
に指定されている場合、TPAはconfig.ymlでharp_consensus_protocol
をetcd
に設定し、選択したレイアウトに応じてインスタンスの適切なサブセットにetcd
ロールを付与します。
HARP v2にはetcd v3.5.0以降が必要です。これは、EDBが提供するproducts/harp/releaseパッケージリポジトリで入手できます。
etcdには次のパラメーターを構成できます。
Variable |
Default value |
Description |
|---|---|---|
etcd_peer_port |
2380 |
ピア通信にetcdが使用するポート |
etcd_client_port |
2379 |
クライアントがetcdに接続するために使用するポート |
bdr¶
tpaexec configure に--harp-consensus-protocol bdr
オプションが指定されている場合、TPAはconfig.ymlでharp_consensus_protocol
をbdr
に設定します。この場合、既存のBDRインスタンスがコンセンサスに使用され、追加の設定は必要ありません。
harpプロキシ用に別のユーザーを設定する¶
harpプロキシで別の読み取り専用ユーザーを使用する場合は、
cluster_varsの下でharp_dcs_user: username を設定して指定できます。
TPAはharp_dcs_user
設定を使用して読み取り専用ユーザーを作成し、DCS構成で設定します。
カスタムSSLパスワードコマンド¶
harp_ssl_password_command
が提供するコマンドは、接続文字列で指定されたsslpassword
の難読化を解除するためにHARPによって使用されます。 sslpassword
が存在しない場合、 harp_ssl_password_command は無視されます。
sslpassword が難読化されていない場合、 harp_ssl_password_command
は必要ないため、指定しないでください。
harpサービスの設定¶
harpサービスには次のパラメーターを設定できます。
Variable |
Default value |
Description |
|---|---|---|
harp_manager_restart_on_failure |
false |
`true`の場合、`harp-manager`サービスはオーバーライドされるため、障害が発生すると再起動されます。 `harp-manager`パッケージによってインストールされるサービスに準拠するため、デフォルトは`false`です。 |