[pgpool-general-jp: 1700] Re: watchdogの自動仮想IP切替がうまく動作しない
yas see_
yassee_ @ hotmail.com
2022年 5月 11日 (水) 23:10:17 JST
彭さん、フォローありがとうございます。
>Pgpool 複数台構成の場合、クライアントが VIP 経由で Pgpool-II(リーダー)に接続します。
>そのため、VIP は PostgreSQL ではなく、Pgpool-IIのリーダーノードに紐づくものとなります。
>Pgpool-II リーダーノードが切り替わる際に、VIP の切り替えが自動的に行われます。
こちらで発生している状況は以下となります。この動きは正しいのでしょうか。
ただしこの状況では自動フェイルオーバー後は VIP(192.168.0.100)ではDBに接続できず
zabbxiのWebでは Error connection to database となります。
[root @ pg-b ~]# psql -h 192.168.0.100 -p 9999 -U pgpool postgres -c "show pool_nodes"
node_id | hostname | port | status | pg_status | lb_weight | role | pg_role | select_cnt | load_balance_node | replication_delay | replication_state | replication_sync_state | last_status_change
---------+--------------+------+--------+-----------+-----------+---------+---------+------------+-------------------+-------------------+-------------------+------------------------+---------------------
0 | 192.168.0.92 | 5432 | up | up | 0.333333 | standby | standby | 0 | false | 0 | streaming | async | 2022-05-11 22:06:51
1 | 192.168.0.93 | 5432 | up | up | 0.333333 | primary | primary | 0 | true | 0 | | | 2022-05-11 22:02:44
2 | 192.168.0.94 | 5432 | up | up | 0.333333 | standby | standby | 0 | false | 0 | streaming | async | 2022-05-11 22:02:44
(3 行)
[root @ pg-b ~]# pcp_watchdog_info -h 192.168.0.100 -p 9898 -U pgpool
Password:
3 3 YES 192.168.0.93:9999 Linux pg-b 192.168.0.93
192.168.0.93:9999 Linux pg-b 192.168.0.93 9999 9000 4 LEADER 0 MEMBER
192.168.0.92:9999 Linux pg-a 192.168.0.92 9999 9000 7 STANDBY 0 MEMBER
192.168.0.94:9999 Linux pg-c 192.168.0.94 9999 9000 7 STANDBY 0 MEMBER
・上記の状態で VIP から接続OKな状態。pg-bの eth0が 192.168.0.93、eth0:0が 192.168.0.100 です
・primary (192.168.0.93)のPostgreSQLを手動停止
・自動フェイルオーバーになり、以下の状態です。
# su - postgres
$ /usr/pgsql-14/bin/pg_ctl -D /var/lib/pgsql/14/data -m immediate stop
node_id | hostname | port | status | pg_status | lb_weight | role | pg_role | select_cnt | load_balance_node | replication_delay | replication_state | replication_sync_state | last_status_change
---------+--------------+------+--------+-----------+-----------+---------+---------+------------+-------------------+-------------------+-------------------+------------------------+---------------------
0 | 192.168.0.92 | 5432 | up | up | 0.333333 | primary | primary | 0 | true | 0 | | | 2022-05-11 22:22:00
1 | 192.168.0.93 | 5432 | down | down | 0.333333 | standby | unknown | 0 | false | 0 | | | 2022-05-11 22:22:00
2 | 192.168.0.94 | 5432 | up | up | 0.333333 | standby | standby | 0 | false | 0 | streaming | async | 2022-05-11 22:22:56
(3 行)
[root @ pg-b ~]# pcp_watchdog_info -h 192.168.0.100 -p 9898 -U pgpool
Password:
3 3 YES 192.168.0.93:9999 Linux pg-b 192.168.0.93
192.168.0.93:9999 Linux pg-b 192.168.0.93 9999 9000 4 LEADER 0 MEMBER
192.168.0.92:9999 Linux pg-a 192.168.0.92 9999 9000 7 STANDBY 0 MEMBER
192.168.0.94:9999 Linux pg-c 192.168.0.94 9999 9000 7 STANDBY 0 MEMBER
・primary は 192.168.0.92 になった
・LEADERは 192.168.0.93のまま。pg-bの eth0が 192.168.0.93、eth0:0が 192.168.0.100のまま
⇒この状態 でzabbxiのWebでは Error connection to database。
何が正しい動作なのか理解不足なのですが、上記状態で 192.168.0.100 へのアクセスで
192.168.0.92 のDBへ接続する動きになるはずが、こちらの環境ではなってないということになりますか。
-------------- next part --------------
HTMLの添付ファイルを保管しました...
URL: <http://www.pgpool.net/pipermail/pgpool-general-jp/attachments/20220511/122e3579/attachment.htm>
pgpool-general-jp メーリングリストの案内