pgpool_statusはpgpoolがpostgresqlのdownを検出するとそのdownの状態を記録するファイルです。
例えばnode_idが1のpostgresqlがdownするとpgpool_statusにnode_idが1のpostgresqlがdownしたことが記録されます。
例えば、SHOW POOL_NODESの結果が以下だった場合、
ap2=# SHOW POOL_NODES ;
node_id | hostname | port | status | lb_weight | role | select_cnt | load_balance_node | replication_delay | last_
status_change
---------+----------------+------+--------+-----------+---------+------------+-------------------+-------------------+------
---------------
0 | localhost | 5433 | up | 0.500000 | primary | 1 | true | 0 | 2019-
01-02 17:43:57
1 | 192.168.86.135 | 5433 | down | 0.500000 | standby | 0 | false | 0 | 2019-
01-02 20:10:19
(2 rows)
pgpool_statusファイルの内容は以下のようになります。
[ap2@postgresql11-testserver-1 tmp]$ cat pgpool_status up down
pgpool_statusファイルはpgpool起動時に読み込まれます。
上記のpgpool_statusファイルの状態でpgpoolを起動すると、node_idが1のpostgresqlがpgpoolに組み込める状態だったとしてもpgpool_statusファイルの2行目(node_idが1)がdownなのでdownであがってきます。
ap2=# SHOW POOL_NODES ;
node_id | hostname | port | status | lb_weight | role | select_cnt | load_balance_node | replication_delay | last_
status_change
---------+----------------+------+--------+-----------+---------+------------+-------------------+-------------------+------
---------------
0 | localhost | 5433 | up | 0.500000 | primary | 1 | true | 0 | 2019-
01-02 17:43:57
1 | 192.168.86.135 | 5433 | down | 0.500000 | standby | 0 | false | 0 | 2019-
01-02 20:10:19
(2 rows)
downであがってきて欲しくない場合は、pgpool_statusファイルを消してpgpoolを起動するか、pgpoolを起動する際に、「-D」または「--discard-status」をオプションに指定して起動します。
pgpool