Registering a Postgres server#

PEMでデータベースサーバーを管理またはモニタする前に、データベースサーバーをPEMに登録し、以前に登録したPEMエージェントにデータベースサーバーをバインドする必要があります。 データベースサーバーをリモートエージェント別のホストにあるエージェントにバインドできます。ただし、エージェントが別のホストにある場合、インスタンスに関するすべての統計情報にアクセスできません。

Postgresサーバーを登録するとどうなりますか?#

サーバーを登録すると、次の2つのことが行われます。

  • PEM Webアプリケーションのサーバーツリーにサーバーを追加し、ユーザーがWebアプリケーションからサーバーへの接続を開くことができます。 - サーバーを特定のエージェントにバインドします。つまり、エージェントがサーバーへの接続を開き、プローブとスケジュールされたジョブを実行します。

登録後、エージェントは指定されたデータベースへの接続を開きます。この接続を使用して、同じユーザーで接続できる他のデータベースを判断し、それぞれに1つの接続を生成します。

サーバーを登録するには3つの方法があります。

pemworkerユーティリティを使用してサーバーを登録する#

pemworkerユーティリティを使用して、Postgresサーバーを登録できます。登録時に、pemworkerユーティリティは、登録コマンドを呼び出したシステムにあるエージェントに新しいサーバーをバインドします。

Linuxホストでサーバーを登録するには、次のコマンドを使用します。

pemworker --register-server

Windowsホストにサーバーを登録するには、次のコマンドを使用します。

pemworker.exe REGISTER-SERVER

pemworkerユーティリティを呼び出すときに、コマンド文字列にコマンドラインオプションを追加します。各オプションの後には、対応する値を続けます。

Option

Description

--pem-user

サーバーの詳細をPEMデータベースに書き込むために使用するPEMサーバー上のPEM管理ユーザーpem_adminロールが必要な名前を指定します。必須。

Server parameters

これらのパラメーターは、PEM Webアプリケーションに接続プロパティを設定するために使用されます。これらは、ユーザーがPEM Webアプリケーションから監視対象サーバーに接続するときに使用されます。これらは、エージェントサーバーバインディングパラメーターでオーバーライドされない限り、エージェントから監視対象サーバーへの接続にも使用されますこの表の エージェントサーバーバインディングパラメーター を参照してください。

--server-addr

監視対象サーバーのIPアドレスまたは完全修飾ドメイン名を指定します。 Linuxシステムでは、アドレスフィールドを空白のままにして、ローカルマシン上のデフォルトのPostgreSQL Unixドメインソケットを使用できます。または、PostgreSQLソケットを含む代替パスに設定できます。パスを入力する場合、パスはスラッシュ/で始まる必要があります。必須。

--server-port

監視対象サーバーのポート番号を指定します。必須。

--server-database

接続する監視対象サーバー上のデータベースの名前を指定します。必須。

--server-user

監視対象サーバーへの接続に使用するユーザーの名前を指定します。必須。

--server-service-name

監視対象のPostgresサーバー、たとえば、Linuxのsystemdサービスユニットを管理するオペレーティングシステムサービスの名前を指定します。オプショナル。

Agent-server binding parameters

これらのパラメーターを使用して、サーバーパラメーターをオーバーライドします。 PEM Webアプリケーションで使用される資格情報とは異なる資格情報を使用してエージェントを監視対象サーバーに接続する場合、これらを使用します。

--asb-host-name

監視対象サーバーのIPアドレスまたは完全修飾ドメイン名を指定します。オプショナル。指定しない場合、デフォルトの`--server-addr`。

--asb-host-port

監視対象サーバーのポート番号を指定します。オプショナル。指定しない場合、デフォルトの`--server-port`。

--asb-host-db

エージェントが接続する監視対象サーバー上のデータベースの名前を指定します。オプショナル。指定しない場合、デフォルトの`--server-database`。

--asb-host-user

エージェントが監視対象サーバーに接続するために使用するユーザーの名前を指定します。オプショナル。指定しない場合、デフォルトの`--server-user`。

--asb-ssl-mode

接続に使用するSSL認証のタイプを指定します。サポートされている値には、prefer、require、disable、verify-CA、および`verify-full`が含まれます。オプション、デフォルトは`prefer`です。

Server metadata

これらのパラメーターは、PEM Webアプリケーションでサーバーがどのように表示されるかを決定します。

--group

サーバーが表示されるグループの名前を指定します。オプショナル。

--team

監視対象サーバーが属するチームとして割り当てられるPEMサーバー上のPostgresロールを指定します。このロールを持つユーザーのみがサーバーにアクセスできます。オプショナル。デフォルトはnoneで、すべてのユーザーがアクセスできます。

--owner

監視対象サーバーの所有者として割り当てるPEMサーバー上のPostgresユーザーを指定します。オプション、デフォルトは`--pem-user`です。

--display-name <name>

監視対象データベースサーバーの表示名を指定します。オプショナル、デフォルトはシステムホスト名です。

Other parameters

NA

--remote-monitoring

サーバーがエージェントと同じホストにない場合、yes`に設定します。リモート監視が有効になっている `yes、監視対象サーバーのエージェントレベルの統計はカスタムグラフとダッシュボードで利用できず、リモートサーバーは一部のPEMユーティリティAudit Manager、Capacity Manager、Log Managerなどからアクセスできません。 )。オプション、デフォルトは`no`です。

--efm-cluster-name

サーバーを監視するEDB Failover Managerクラスターの名前を指定します該当する場合。オプショナル。

--efm-install-path

EDB Failover Managerのインストールディレクトリへの完全なパスを指定します該当する場合。オプショナル。

--config-dir

エージェント構成ファイルのディレクトリパスを指定します。オプション、デフォルトは`<pemworker path>/../etc`です。

環境変数PEM_SERVER_PASSWORD を設定してPEMサーバーのパスワードを提供し、pemworkerがPEM管理ユーザーとして接続できるようにします。

環境変数PEM_MONITORED_SERVER_PASSWORD を設定して、PEMエージェントによって登録および監視されるデータベースサーバーのパスワードを提供します。

パスワードを入力しない場合、パスワード認証エラーが発生します。 PEMサーバーは、サーバーが適切に登録されたことを確認します。

例#

この例では、必要なパラメーターのみを使用してサーバーを登録します。 ユーザーadmin01 は、PEMサーバーに接続するために使用されます。 --server-* パラメーターに指定された資格情報は、エージェントから監視対象サーバーへの接続を作成するために使用されます。同じ詳細は、PEM Webアプリケーションにサーバー接続の詳細を入力するために使用されます。

pemworker --register-server \
          --pem-user admin01 \
          --server-addr pg123.prod.infra.business \
          --server-port 5432 \
          --server-database postgres \
          --server-user prod_admin

次の例では、エージェントから監視対象サーバーへの接続に使用するさまざまなパラメーターを指定します。これらは、 --server-addr で提供された完全修飾ドメイン名を代わりにlocalhost でオーバーライドします。また、ユーザーをオーバーライドしてlocal_monitor ユーザーを使用します。 これは、たとえば、同じホストからのみ接続を許可されたユーザーである場合があります。

この例では、サービス名postgresql も指定します。これは、PEMエージェントがこのサーバーを再起動して構成変更を適用できることを意味します。

pemworker --register-server \
          --pem-user admin01 \
          --server-addr pg123.prod.infra.business \
          --server-port 5432 \
          --server-database postgres \
          --server-user prod_admin \
          --server-service-name postgresql \
          --asb-host-name localhost \
          --asb-host-user local_monitor

pemworkerユーティリティを使用してサーバーの登録を解除する#

pemworkerユーティリティを使用して、データベースサーバーの登録を解除できます。サーバーの登録を解除するには、pemworkerユーティリティを呼び出します。

Linuxホストでは、次のコマンドを使用します。

pemworker --unregister-server

Windowsホストでは、次のコマンドを使用します。

pemworker.exe UNREGISTER-SERVER

pemworkerユーティリティを呼び出すときに、コマンド文字列にコマンドラインオプションを追加します。各オプションの後には、対応する値を入力します。

Option

Description

--pem-user

PEM管理ユーザーの名前を指定します。必須。

--server-addr

サーバーホストのIPアドレスまたは完全修飾ドメイン名を指定します。 Unixベースのシステムでは、アドレスフィールドを空白のままにして、ローカルマシンでデフォルトのPostgreSQL Unixドメインソケットを使用できます。または、PostgreSQLソケットを含む代替パスに設定できます。パスを入力する場合、パスはスラッシュ/で始まる必要があります。必須。

--server-port

ホストのポート番号を指定します。必須。

--config-dir

エージェント構成ファイルのディレクトリパスを指定します。オプション、デフォルトは`<pemworker path>/../etc`です。

PEM_SERVER_PASSWORD 環境変数を使用してPEMサーバーのパスワードを提供し、pemworkerユーティリティが--pem-user としてPEMサーバーに接続できるようにします。

パスワードを入力しない場合、パスワード認証エラーが発生します。 PEMサーバーは、サーバーが登録解除されたことを確認します。

自動サーバー検出へのサーバーの登録#

モニタするサーバーがモニタリングエージェントと同じホストにある場合は、[ Auto Discovery ]ダイアログボックスを使用して登録とバインドのプロセスを簡素化できます。

特定のエージェントの自動検出を有効にするには、Server Auto Discoveryプローブを有効にする必要があります。これを行うには、PEMクライアントツリーでPEMエージェントを選択し、 Management > Manage Probes を選択します。 [ Manage Probes ]タブが開いたら、 Enabled? 列のスライダーが Yes に設定されていることを確認します。

Auto Discoveryダイアログボックスを開くには、PEMクライアントツリーでPEMエージェントを選択し、 Management > Auto Discovery を選択します。

[ Auto Discovery ]ダイアログボックスが開くと、[ Discovered Database Servers ]ボックスに、現在PEMエージェントによって監視されていないサーバーのリストが表示されます。サーバー名の横にあるボックスを選択して、 Server Connection Details ボックスにサーバーに関する情報を表示し、 Agent Connection Details ボックスにエージェントの接続プロパティを表示します。

Check All を使用して、表示されているすべてのサーバーの横にあるボックスを選択するか、 Uncheck All を使用してサーバー名の左側にあるすべてのボックスをクリアします。

Server Connection Details ボックスのフィールドは、PEMがモニタするサーバーに関する情報を提供します。

  • Name フィールドの監視対象サーバーの名前を受け入れるか、変更します。指定した名前はPEMクライアントのツリーに表示されます。

  • Server group リストを使用して、PEMクライアントツリーでサーバーが表示されるサーバーグループを選択します。

  • Host name/address フィールドを使用して、監視対象サーバーのIPアドレスを指定します。

  • Port フィールドには、サーバーによって監視されているポートが表示されます。このフィールドは変更できません。

  • Service ID フィールドにサービスの名前を入力します。一部のPEM機能を有効にするには、サービス名を提供する必要があります。

  • Maintenance Database フィールドは、初期接続とグローバルメンテナンス操作に使用するデータベースを指定します。インストールの メンテナンスデータベース フィールドの内容をカスタマイズします。

Agent Connection Details ボックスのフィールドは、サーバーへの接続時に使用するPEMエージェントのプロパティを指定します。

  • Host フィールドには、PEMエージェントのバインディングに使用されるIPアドレスが表示されます。

  • User name フィールドには、選択したサーバーに接続するときにPEMエージェントが使用する名前が表示されます。

  • Password フィールドには、指定されたユーザー名に関連付けられたパスワードが表示されます。

  • SSLmode フィールドを使用して、SSL接続設定を指定します。

モニタリングにバインドしているサーバーの接続プロパティの指定が終了したら、 OK を選択してサーバーを登録します。

OK を選択すると、新しく登録されたサーバーがPEMツリーに表示され、PEMサーバーによって監視されます。

データベースサーバーの手動登録#

PEMでデータベースサーバーを管理またはモニタするには、次のことを行う必要があります。

  • EDB Postgres Advanced ServerまたはPostgreSQLサーバーをPEMサーバーに登録します。

  • データベースサーバーをPEMエージェントにバインドします。

Create Serverダイアログボックスを使用して、サーバーの登録情報を提供し、PEMエージェントをバインドし、PEMクライアントツリーにサーバーを表示できます。 [ Create Server ]ダイアログボックスを開くには、 Object > Create > Server を選択します。

注釈

  • 接続する前に、登録しているPostgresサーバーの`pg_hba.conf` ファイルでPEMクライアントのホストからの接続が許可されていることを確認する必要があります。 - データベーススーパーユーザーまたは`pem_admin` ロールを持つユーザーのみがデータベースサーバーをPEMエージェントにバインドできます。

General タブを使用して、サーバーの一般的なプロパティを説明します。

  • Name フィールドを使用して、サーバーの名前を指定します。名前は、PEMブラウザツリー内のサーバーを識別します。

  • グループを使用して、ツリー内のサーバーとエージェントを整理できます。グループを使用すると、多数のサーバーをより簡単に管理できます。たとえば、実稼働グループ、テストグループ、またはLAN固有のグループを持つことができます。 Group リストを使用して、新しいサーバーを表示するサーバーグループを選択します。

  • Team フィールドを使用して、PostgreSQLロール名を指定します。このロールのメンバーであるPEMユーザー、最初にサーバーを作成した人、またはPEMサーバーのスーパーユーザー権限を持つPEMユーザーのみが、PEMにログインするときにこのサーバーを表示します。このフィールドを空白のままにした場合、デフォルトでは、すべてのPEMユーザーにサーバーが表示されます。 [ Server Configuration ]ダイアログボックスのshow_objects_with_no_team パラメーターを使用して、動作を変更できます。 show_objects_with_no_team がfalse に設定されている場合、チームのないサーバーは他のすべてのユーザーに表示されません。

  • Background カラーセレクターを使用して、サーバーに保存されているデータベースオブジェクトの背後にあるPEMツリーに表示する色を選択します。

  • Foreground カラーセレクターを使用して、サーバーに保存されているオブジェクトのPEMツリーのラベルのフォント色を選択します。

  • Save を選択するときに Connect now? を選択してサーバー接続を試行します。 PEMクライアントが、後の接続試行まで指定された接続パラメーターを検証したくない場合は、 Connect now? をクリアします。

  • Comments フィールドにサーバーに関するメモを入力します。

Connectionタブ を使用して、サーバーの接続の詳細を指定します。

  • Host name/address フィールドに、サーバホストのIPアドレスまたは完全修飾ドメイン名を指定します。 Unixベースのシステムでは、アドレスフィールドを空白のままにして、ローカルマシンでデフォルトのPostgreSQL Unixドメインソケットを使用します。または、PostgreSQLソケットを含む代替パスを設定できます。パスを入力する場合、パスはスラッシュ/で始まる必要があります。

  • Port フィールドにホストのポート番号を指定します。

  • Maintenance Database フィールドを使用して、インストールされたpgAgentスキーマとadminpackオブジェクトを含むことが予想される接続するPEMの初期データベースの名前を指定します両方オプショナル。 PostgreSQLバージョン8.1以降では、メンテナンスDBは通常postgres と呼ばれます。以前のバージョンでは template1 がよく使用されますが、テンプレートデータベースの混乱を避けるためにpostgres データベースを作成することをお勧めします。

  • 監視対象サーバーでKerberos認証を使用するには、 Kerberos Authentication を Yes に設定します。デフォルトでは、監視対象サーバーはPEMサーバーと同じ認証方法を使用します。監視対象サーバーがKerberos認証を使用したくない場合は、 config_local.py ファイルでALLOW_DATABASE_CONNECTION_WITHOUT_KERBEROS からTRUE を設定します。

  • Username フィールドにサーバーで認証するときに使用する名前を指定します。

  • 指定されたユーザーに関連付けられたパスワードを Password フィールドに入力します。

  • 後で再利用できるようにPEMバックエンドデータベースにパスワードを暗号化された形式で保存するには、 Savepassword? を選択します。各パスワードはユーザーごと、サーバーごとに保存され、他のチームメンバーと共有されません。 PEMは、保存されたパスワードを使用して、次回データベースサーバーに接続します。保存されたパスワードを削除するには、最初にデータベースサーバーを切断し、次に[ **Object > Clear Saved Password ]を選択します。

  • Role フィールドを使用して、サーバーに接続した後にクライアントが使用する特権を割り当てられたロールの名前を指定します。この値により、1つのロールとして接続し、接続が確立されたときに別のロールこのフィールドで指定したロールの権限を引き継ぐことができます。接続するロールは、指定されたロールのメンバーである必要があります。

SSL タブを使用して、SSLを構成します。

  • SSLmode フィールドで、サーバーが使用するSSL接続のタイプを選択します。 SSL暗号化の使用の詳細については、 the PostgreSQL documentation を参照してください。

プラットフォーム固有のファイルマネージャーダイアログボックスを使用して、SSL暗号化をサポートするファイルをサーバーにアップロードできます。ファイルマネージャーを開くには、次の各フィールドの右側にあるアイコンを選択します。

  • Clientcertificate フィールドを使用して、クライアントSSL証明書を含むファイルを指定します。このファイルは、PEMがデスクトップモードでインストールされている場合はデフォルトの~/.postgresql/postgresql.crt ファイルを置き換え、PEMがWebモードでインストールされている場合は<STORAGE_DIR>/<USERNAME>/.postgresql/postgresql.crt ファイルを置き換えます。 SSL接続が作成されない場合、このパラメーターは無視されます。

  • Clientcertificate key フィールドを使用して、クライアント証明書に使用される秘密キーを含むファイルを指定します。このファイルは、PEMがデスクトップモードでインストールされている場合はデフォルトの~/.postgresql/postgresql.key を、PEMがWebモードでインストールされている場合は<STORAGE_DIR>/<USERNAME>/.postgresql/postgresql.key を置き換えます。 SSL接続が作成されない場合、このパラメーターは無視されます。

  • ルート証明書 フィールドを使用して、SSL認証局を含むファイルを指定します。このファイルは、デフォルトの~/.postgresql/root.crt ファイルを置き換えます。 SSL接続が作成されない場合、このパラメーターは無視されます。

  • 証明書失効リスト フィールドを使用して、SSL証明書失効リストを含むファイルを指定します。このリストは、~/.postgresql/root.crl にあるデフォルトリストを置き換えます。 SSL接続が作成されない場合、このパラメーターは無視されます。

  • SSLcompression? が True に設定されている場合、SSL接続を介して送信されるデータは圧縮されます。デフォルト値は False 圧縮は無効です。 SSL接続が作成されない場合、このパラメーターは無視されます。

警告

証明書、プライベート鍵、および失効リストは、PEMサーバープロセスが実行されるユーザアカウントが所有するサーバー上のユーザーごとのファイル格納領域に格納されます。これは、サーバーの管理者がこれらのファイルにアクセスできることを意味します。この機能を使用する前に注意してください。

SSH Tunnel タブを使用して、SSHトンネリングを構成します。トンネルを使用して、中間プロキシホストを介してデータベースサーバーを、クライアントが直接接続できないネットワーク上にあるサーバーに接続できます。

  • 指定されたサーバーへの接続時にSSHトンネルを使用するには、 Use SSH確かにトンネリング を Yes に設定します。

  • Tunnel host フィールドに、SSHホストクライアント接続が転送される名前またはIPアドレスを指定します。

  • クライアント接続が転送されるSSHホストのポートを トンネルポート フィールドに指定します。

  • Username フィールドに、SSHホストのログイン特権を持つユーザーの名前を指定します。

  • Authentication フィールドにSSHホストに接続するときに使用する認証の種類を指定します。

  • SSHホストへの認証にパスワードを使用する場合は、 Password を選択します。これがデフォルトです。

  • 接続時にプライベートキーファイルを使用するには、 Identity file を選択します。

  • SSHホストが認証用にプライベートキーファイルを想定している場合、 Identity file フィールドを使用して、キーファイルの場所を指定します。

  • SSHホストがパスワードを想定している場合は、 Password フィールドを使用してパスワードを指定します。 IDファイルを使用している場合、パスフレーズを指定します。

Advanced タブを使用して、サーバーの管理に使用される詳細を指定します。

  • Host address フィールドにサーバーホストのIPアドレスを指定します。

  • DB rotation フィールドを使用して、 pg_database テーブルに対して使用するSQL制限を指定して、ツリーに表示されるデータベースを制限します。たとえば、 live_db およびtest_db データベースのみを表示するには、 'live_db' , 'test_db' と入力できます。データベースのプロパティダイアログボックスから pg_namespace に対する制限を入力して、データベースに表示されるスキーマを制限することもできます。

  • Password file フィールドを使用して、パスワードファイル .pgpass の場所を指定します。 .pgpass ファイルを使用すると、ユーザーは接続時にパスワードを入力せずにログインできます。ファイルはPEMサーバーに存在する必要があります。詳細については、 Postgres documentation を参照してください。

  • Service ID フィールドを使用して、データベースサービスプロセスのパラメーターを指定します。 Enterprise Managerディレクトリに保存されているサーバーの場合、サービスIDを入力します。 Windowsマシンでは、これはWindowsサービスの識別子です。 Linuxマシンでは、サーバーの起動に使用されるinitスクリプトの名前は/etc/init.d で、サーバーを起動するsystemdスクリプトの名前はsystemctl です。たとえば、 EDB Postgres Advanced Server 11サービスの名前はedb-as-11 です。ローカルサーバーの場合、設定はオペレーティングシステムに依存します。

    • PEMクライアントがWindowsマシンで実行されている場合、十分なアクセス権限がある場合、postmasterサービスを制御できます。サービスの名前を入力します。リモートサーバーの場合、マシン名PSE1\pgsql-8.0 などを先頭に付けます。 PEMは、ローカルマシンで実行されているサービスを自動的に検出します。

    • PEMクライアントがLinuxマシンで実行されている場合、十分なアクセス権限があれば、ローカルマシンで実行されているプロセスを制御できます。 pg_ctl プログラムにアクセスするためにフルパスと必要なオプションを提供します。サービス制御機能を実行すると、PEMはstatus/start/stopキーワードをこれに追加します。例

sudo /usr/pgsql-x/bin/pg_ctl -D /var/lib/pgsql/x/data

x は、PostgreSQLデータベースサーバーのバージョンです。

  • サーバーがフェールオーバーマネージャークラスターのメンバーである場合は、PEMを使用してクラスターの状態を監視し、必要に応じてプライマリノードを置き換えることができます。 PEMがフェールオーバーマネージャーを監視できるようにするには、 EFM cluster name フィールドを使用してクラスター名を指定します。クラスター名は、フェールオーバーマネージャークラスタープロパティファイルの名前の接頭辞です。たとえば、クラスタープロパティファイルの名前がefm.properties の場合、クラスター名はefmです。

  • PEMを使用してフェールオーバーマネージャークラスターのステータスをモニタいる場合は、 EFM installation path フィールドを使用して、Failover Managerバイナリファイルの場所を指定します。デフォルトでは、Failover Managerバイナリファイルは/usr/edb/efm-x.x/bin にインストールされます。x.x はFailover Managerのバージョンを指定します。

[ PEM Agent ]タブを使用して、PEMエージェントの接続の詳細を指定します。

[ Connection Parameters ]タブで

  • Remote Monitoring? を Yes に設定して、PEMエージェントが監視対象サーバーと同じホストにないことを示します。リモート監視が有効になっている場合、監視対象サーバーのエージェントレベルの統計はカスタムグラフとダッシュボードで利用できず、リモートサーバーは一部のPEMユーティリティAudit Manager、Capacity Manager、Log Managerなどからアクセスできません。

  • Bound agent リストを使用して、PEMエージェントを選択します。 1つのエージェントでマルチプルのPostgresサーバーをモニタできます。

  • Host フィールドに、データベースサーバーに接続するときに使用するエージェントのIPアドレスまたはソケットパスを入力します。デフォルトでは、エージェントは[ General ]タブに表示されるホストアドレスを使用します。 Unixサーバーでは、/tmp などのソケットパスを指定することができます。

  • サーバーへの接続時に使用するエージェントのポート番号を入力します。デフォルトでは、エージェントは[ プロパティ ]タブで定義されたポートを使用します。

  • SSL フィールドを使用して、SSL操作モードを指定します。 require 、 prefer 、 allow 、 disable 、 verify-ca 、または verify-full を指定します。

Mode

Description

require

サーバーとエージェント間のトランザクションにはSSL暗号化が必要です。

prefer

SSL暗号化が利用できる場合、サーバーとエージェント間でSSL暗号化を使用します。

allow

サーバーで必要な場合、接続がSSLを使用できるようにします。

disable

エージェントとサーバー間のSSL暗号化を無効にします。

verify-ca

SSL暗号化を必要とし、認証局によって登録された証明書を使用してサーバーに認証を要求します。

verify-full

SSL暗号化を必要とし、信頼できる認証局によって登録された証明書を使用してサーバーに認証を要求します。

SSL暗号化の使用の詳細については、 PostgreSQL documentation を参照してください。

  • Server フィールドを使用して、エージェントが最初に接続するPostgresデータベースの名前を指定します。 EDB Postgres分散データベースノードを登録する場合、このフィールドにEDB Postgres Distributed対応データベース名を指定します。

  • User name フィールドに、サーバーへの接続時に使用するエージェントのロールの名前を指定します。すべての機能が期待どおりに動作するには、指定されたロールがデータベーススーパーユーザーである必要があります。指定されたロールがデータベーススーパーユーザーでない場合、機能しない機能のリストについては、 Setting agent privileges を参照してください。 Kerberos認証方法を使用している場合、このフィールドにpgd_monitorまたはpgd_superuserロールを持つユーザーを指定します。

Postgresバージョン10以降を使用している場合は、 pg_monitorロールを使用して、必要な特権を非スーパーユーザーに付与できます。 pg_monitorロールの詳細については、 Default Roles を参照してください。

  • User name フィールドに、サーバーへの接続時に使用するエージェントのユーザーの名前を指定します。すべての機能が期待どおりに動作するには、指定されたロールがデータベーススーパーユーザーである必要があります。 Postgresバージョン10以降を使用している場合は、 pg_monitorロールを使用して、必要な特権を非スーパーユーザーに付与できます。 pg_monitorロールの詳細については、 Default Roles を参照してください。

  • サーバーに接続するときに使用するエージェントのパスワードを Password フィールドと 確認パスワード フィールドに指定します。パスワードを指定しない場合、エージェントの認証を手動で構成する必要があります。たとえば、 .pgpass ファイルは、エージェントがインストールされているシステムに存在し、アクセスできる必要があります。

[ Advanced ]タブで

  • Allow takeover? を Yes に設定して、別のエージェントがサーバーを引き継ぎできることを指定します。この機能により、エージェントは、高可用性フェールオーバープロセスの一部としてサーバーが別のホストに移動した場合など、データベースサーバーの監視を引き継ぐことができます。

  • プラス記号 + を使用して、PEM監視から除外するデータベースを追加します。 [ PEMエージェント ]タブの[ Connection Parameters ]タブに記載されているデータベースを除外することはできません。

注釈

データベースレベルのプローブは、除外されたデータベースに対して実行されませんが、サーバーレベルのプローブはデータベース統計を収集できます。

BART タブの下の General タブを使用して、PEMサーバーにマップするBARTサーバーの一般的なプロパティを説明します。

  • BART server フィールドを使用して、BARTサーバー名を選択します。 PEMコンソールで構成されたすべてのBARTサーバーがリストされます。

  • Server name フィールドを使用して、BARTサーバーを使用してバックアップするデータベースサーバーの名前を指定します。この名前は、BART構成ファイルに保存されます。

  • Backup name フィールドを使用して、データベースサーバーのバックアップに割り当てるユーザー定義名のテンプレートを指定します。バックアップ名テンプレートを指定しない場合、BARTが割り当てた整数バックアップ識別子を使用してのみ、BARTサブコマンドでバックアップを参照できます。

  • Host address フィールドを使用して、バックアップ用に構成するデータベースサーバーのIPアドレスを指定します。

  • Port フィールドを使用して、バックアップするデータベースに使用するポートを指定します。

  • User フィールドを使用して、PEMコンソールからBARTを使用してバックアップするデータベースのユーザーを指定します。このデータベースサーバーのインクリメンタル バックアップを有効にする場合、ユーザーはスーパーユーザーである必要があります。

  • Password フィールドを使用して、バックアップするデータベースのユーザーのパスワードを指定します。

  • Cluster Owner フィールドを使用して、データベースクラスターを所有するLinuxオペレーティングシステムのユーザーアカウントを指定します。これは通常、Oracleデータベース互換モードでインストールされたEDB Postgres Advanced Serverデータベースクラスターのenterprisedbです。これは、通常、 PostgreSQLデータベースクラスター、およびPostgreSQLデータベース互換モードでインストールされたEDB Postgres Advanced Serverデータベースクラスターのpostgresです。

  • Archive command フィールドを使用して、bart.cfg ファイルで使用するアーカイブコマンド文字列の目的の形式を指定します。 Archiveコマンドに提供された入力は、データベースサーバーのPostgresql.conf ファイルを上書きします。サーバーが追加されると、データベースサーバーが再起動するか、データベース構成がリロードされます。

  • Allow attempts attempts? を使用して、このデータベースサーバーのインクリメンタル バックアップを有効にするかどうかを指定します。

  • SetuppasswordlessSSH? を使用して、SSH証明書を作成して、データベースサーバーとBARTサーバー間でパスワードなしのログインを許可するかどうかを指定します。パスワードなしのSSH認証を設定する前に、必ずPEMエージェントをバインドしてください。パスワードレスSSHは、PEMエージェントによってリモートで監視されているデータベースサーバーでは機能しません。

BART タブの下の Misc タブを使用して、BART Serverのその他のプロパティを説明します。

  • Overridedefault configuration? を使用して、BARTサーバー構成を特定のデータベースサーバー構成でオーバーライドします。

  • Xlog メソッドを使用して、 pg_basebackupの実行中にトランザクションログを収集する方法を指定します。

  • Retentionpolicy フィールドを使用して、バックアップの保持ポリシーを指定します。これにより、アクティブなバックアップを古いものとして、したがって削除の候補としてマークする時期が決定されます。バックアップの数または期間日、週、または月の観点から保持ポリシーを指定できます。

  • WAL圧縮 を使用して、アーカイブされたXlog / WALファイルをgzip形式で圧縮するかどうかを指定します。 WAL圧縮を有効にするには、gzip圧縮プログラムがBARTユーザーアカウントのPATHに存在する必要があります。インクリメンタル バックアップする必要があるデータベースサーバーの WAL圧縮 設定を有効にしないでください。

  • Copy WALs while recovery フィールドを使用して、RESTORE操作を呼び出したときにアーカイブされたWALファイルを収集する方法を指定します。データベースサーバーアーカイブリカバリーの前に、アーカイブされたWALファイルをBARTバックアップカタログから<restore_path>/archived_wals ディレクトリにコピーするには、 Enabled に設定します。データベースサーバーアーカイブリカバリ中にBARTバックアップカタログからアーカイブされたWALファイルを直接取得するには、 Disabled に設定します。

  • Thread count フィールドを使用して、ブロックをコピーするスレッドの数を指定します。 pg_basebackupユーティリティを使用してバックアップを取る場合は、 Thread count を 1 に設定する必要があります。

  • Batch size フィールドを使用して、変更したブロックのコピーに使用されるメモリのブロック数を指定します。このオプションは、インクリメンタル バックアップにのみ適用されます。

  • Scan interval フィールドを使用して、新しいWALファイルをスキャンする前にWALスキャナーが待機する秒数を指定します。

  • MBM scan timeout フィールドを使用して、タイムアウトになるまでにMBMファイルを待機する秒数を指定します。このオプションは、インクリメンタル バックアップにのみ適用されます。

サーバーのプロパティをビューするには、PEMクライアントツリーでサーバー名前を右クリックし、コンテキストメニューから Properties を選択します。サーバーのプロパティを変更するには、[ Properties ]ダイアログボックスを開く前にサーバーから切断します。

接続とバインディングの検証#

登録されると、新しいサーバーはPEMブラウザツリーに追加され、グローバル概要ダッシュボードに表示されます。

新しくバインドされたサーバーに最初に接続すると、グローバル概要ダッシュボードには、サーバーリストに「不明」のステータスで新しいサーバーが表示される場合があります。サーバーを認識する前に、バインドされたエージェントは多数のプローブを実行してサーバーを調べる必要があります。ネットワークの可用性によっては、これらのプローブが完了するまでに数分かかる場合があります。

数分で、Global Overviewダッシュボードの棒グラフに、エージェントが正常に接続されたことが示されます。新しいサーバーは Postgres Server Status リストに含まれます。

5分後、Global Overviewダッシュボードはまだ新しいサーバーをリストしていない場合は、モニタリングエージェントのログファイルでエラーを確認します。ツリーでエージェントの名前を右クリックし、コンテキストメニューから Dashboards > Probe Log Analysis を選択します。