Configuring PGD CLI
===================

PGD
CLIは、PGDクラスターに接続できる任意のシステムにインストールできます。
PGD CLIを使用するには、
PGDスーパーユーザー権限または同等のユーザーが必要です。スーパーユーザー権限を持つPGDユーザーは
 :ref:`bdr_superuserのロールとレプリケーション <bdr_superuserのロールとレプリケーション>` 
です。同等のユーザーの例は、BigAnimal分散高可用性クラスターのedb_adminです。

PGD CLIとデータベース接続文字列
-------------------------------

データベース接続文字列は必要ない場合があります。たとえば、Trused
Postgres ArchitectはシステムにPGD
CLIをインストールすると、PGDクラスターへの接続も構成します。これは、 PGD
CLIが実行時にクラスターに接続できることを意味します。

PGD CLIを手動でインストールする場合は、 PGD
CLIにデータベース接続文字列を指定して、どのPGDクラスターに接続するかを認識する必要があります。

..  Important Setting passwords::
   PGD CLIは対話型でパスワードの入力を求めません。次のいずれかの方法を使用してパスワードを渡す必要があります。

-  `.pgpass <https://www.postgresql.org/docs/current/libpq-pgpass.html>`_ にエントリを追加します。これには、ホスト、ポート、データベース名、ユーザー名、パスワードが含まれます。
   - ``PGPASSWORD`` 環境変数にパスワードを設定する。 -
   接続文字列にパスワードを含めます。

他のオプションは複数のデータベースでうまく拡張できないか、パスワードの機密性が危険にさらされるため、最初のオプションをお勧めします。

.. ::
   PGDを利用した展開のデータベース接続文字列がわからない場合は、 :ref:`Discovering connection strings <Discovering connection strings>` を参照してください。これは、クラスターに適切な接続文字列を見つけるのに役立ちます。

その情報を入手したら、続行できます。

接続するデータベースの構成
--------------------------

PGD CLIは、 PGD
CLI構成ファイルまたはコマンドラインからデータベース接続情報を取得します。

コマンドラインでデータベース接続文字列を使用する
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

``--dsn`` オプションを使用して、接続文字列を\ ``pgd``
に直接渡すことができます。詳細については、
 :ref:`sample use case <Using PGD CLI>` を参照してください。例

.. code:: shell

   pgd --dsn "host=bdr-a1 port=5432 user=enterprisedb" show-version

構成ファイルを使用する
^^^^^^^^^^^^^^^^^^^^^^

``pgd-cli-config.yml``
構成ファイルを使用して、クラスターのデータベース接続文字列を指定します。構成ファイルには、クラスター内の少なくとも1つのPGDノードのデータベース接続文字列が含まれている必要があります。クラスター名はオプショナルであり、検証されません。

例

.. code:: yaml

   cluster:
     name: cluster-name
     endpoints:
     - "host=bdr-a1 port=5432 dbname=bdrdb user=enterprisedb"
     - "host=bdr-b1 port=5432 dbname=bdrdb user=enterprisedb"
     - "host=bdr-c1 port=5432 dbname=bdrdb user=enterprisedb"

デフォルトでは、 ``pgd-cli-config.yml`` は\ ``/etc/edb/pgd-cli``
ディレクトリにあります。 PGD CLIは、次の場所で\ ``pgd-cli-config.yml``
を検索します。優先順位は高から低です。

1. ``/etc/edb/pgd-cli`` デフォルト2.\ ``$HOME/.edb/pgd-cli``

構成ファイルがこれらのディレクトリのいずれにもない場合は、 ``pgd``
コマンドでオプションの\ ``-f`` または\ ``--config-file``
フラグを使用して、構成として読み取るようにファイルを設定できます。
 :ref:`sample use case <Using PGD CLI>` を参照してください。
