Configuring pgd-proxy

TPAは、role にpgd-proxy を含むインスタンスに、PGD 5を使用したPGD-Always-ONアーキテクチャのpgd-proxyをインストールして構成します。

(デフォルトでは、 PGD-Always-ON architecture

すべての場所のすべてのデータノードでpgd-proxy を実行しますが、代わりに--add-proxy-nodes-per-location 3 を使用して追加のプロキシインスタンスをいくつでも作成できます。)

構成

pgd-proxy は、 SQL関数を介してPGDレベルで構成されます。

Hash

Function

Description

pgd_proxy_options

bdr.alter_proxy_option()

pgd-proxy構成、例ポート

bdr_node_groups

bdr.alter_node_group_option()

プロキシのノードグループの構成、例`enable_proxy_routing`

bdr_node_options

bdr.alter_node_option()

個々のPGDノードのルーティング構成

詳細については、PGDのドキュメントを参照してください。

bdr_node_groups

pgd-proxyに関連するグループレベルのオプションは、他のノードグループオプションとともにbdr_node_groups の下で設定できます。

cluster_vars:
  bdr_node_groups:
  - name: group1
    options:
      enable_proxy_routing: true

グループでpgd-proxyを有効にするには、 enable_proxy_routing をtrue に明示的に設定する必要があることに注意してください。

bdr_node_options

pgd-proxyに関連するノードレベルのオプションは、任意のPGDインスタンスのbdr_node_options の下で設定できます。

instances:

- Name: first
  vars:
    bdr_node_options:
      route_priority: 42

pgd_proxy_options

アタッチされているグループまたはノードではなく、pgd-proxyインスタンス自分自身のオプションは、cluster_vars (すべてのプロキシに適用)の下のdefault_pgd_proxy_options の下、またはpgd-proxyインスタンスのpgd_proxy_options の下で設定できます。

cluster_vars:
  default_pgd_proxy_options:
    listen_port: 6432

instances:

- Name: someproxy
  vars:
    pgd_proxy_options:
      listen_port: 9000

この場合、他のインスタンスはcluster_vars からlisten_port 設定を取得しますが、 someproxy はそのデフォルト設定をオーバーライドし、インスタンスの vars セクションで独自のlisten_port を構成します。

PGDプロキシhttp(s)ヘルスプローブ

プロキシの状態を監視するためのapiエンドポイントを提供するPGDプロキシのhttp(s)サービスを有効にして構成できます。

cluster_vars の下のpgd_http_options またはインスタンスvars は、 pgd-proxy-config.yml のproxy トップセクションのhttp サブセクションの下にあるhttp(s) APIを定義するすべての設定を保存します。

変数には、次のキーを含めることができます。

enable: false
secure: false
cert_file: "/etc/tpa/harp_proxy/harp_proxy.crt"
key_file: "/etc/tpa/harp_proxy/harp_proxy.key"
host: <inventory_hostname>
port: 8080
probes:
  timeout: 10s
endpoint: "<valid dsn>"

secure: true を使用し、独自の証明書とキーを使用する場合は、 cert_file およびkey_file キーの両方が必要です。

deploy を実行する前に、証明書とキーの両方がターゲットノード上の指定された場所で利用可能であることを確認する必要があります。

クラスター固有のCA証明書を使用してTPAで証明書とキーを生成する場合は、 cert_file と key_file の両方を空のままにします。 TPA CA証明書は「よく知られた」ものではありません。エンドポイントをプローブする各マシンのトラストストアにこの証明書を追加する必要があります。 CA証明書は、TPAノードのクラスターディレクトリにあります。<cluster_dir>/ssl/CA.crt after deploy 。

使用可能なapiエンドポイントの詳細については、pgd-proxyドキュメントを参照してください。