データベース高可用性クラスタの問題のトラブルシューティングを行うには、クラスタ内のノードおよびイベントのステータスを監視する必要があります。

手順

  1. クラスタで実行されているいずれかのセルの OS に、root としてログインするか、SSH で接続します。
  2. ユーザーを postgres に変更します。
    sudo -i -u postgres
  3. クラスタのステータスを確認します。
    [アップストリーム] 列には、現在のプライマリ ノードが表示されます。
    /opt/vmware/vpostgres/current/bin/repmgr cluster show

    コンソール出力に、クラスタの情報が表示されます。次の例では、クラスタのプライマリ ノード(ノード 3)にアクセスできません。

         ID |  Name    | Role    | Status         | Upstream   | Location | Connection string
    --------+----------+---------+----------------+------------+----------+------------------------
     Node 1 | Node name | standby |     running   | Node 3 name| default | host=host IP address user=repmgr dbname=repmgr
     Node 2 | Node name | standby |     running   | Node 3 name| default | host=host IP address user=repmgr dbname=repmgr
     Node 3 | Node name | primary | ? unreachable |            | default | host=host IP address user=repmgr dbname=repmgr

    次のシステム出力例では、ノード 3 は正常に動作しているクラスタ内のプライマリ ノードです。

     
         ID |  Name     | Role    | Status   | Upstream  | Location| Connection string
    --------+-----------+---------+----------+-----------+---------+------------------------
     Node 1 | Node name | standby |  running | Node3 name| default | host=host IP address user=repmgr dbname=repmgr
     Node 2 | Node name | standby |  running | Node3 name| default | host=host IP address user=repmgr dbname=repmgr
     Node 3 | Node name | primary | *running |           | default | host=host IP address user=repmgr dbname=repmgr
  4. クラスタのイベント ログを確認します。
    /opt/vmware/vpostgres/current/bin/repmgr -f /opt/vmware/vpostgres/current/etc/repmgr.conf cluster event
    システム出力には、クラスタ内の作成、クローン作成、および登録のイベントが表示されます。

次のタスク

プライマリ ノードのステータスが Unreachable または Failed である場合は、スタンバイ ノードを昇格する必要があります。

スタンバイノードのステータスが Unreachable または Failed である場合は、ノードを修復し、PostgreSQL サービスが実行されていない場合は、これを起動します。