<div dir="ltr"><div class="gmail_quote"><br><div class="msg1458360241130489308">
<div lang="EN-US" link="#0563C1" vlink="#954F72" style="word-wrap:break-word">
<div class="m_6966449964829263242WordSection1">
<p class="MsoNormal">Hello Team,<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">My PGPOOL II 2 node configuration works perfectly when both nodes are up, I can ping to my Delegate IP also connect clients through Delegate IP etc..<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">But when I shutdown Master PGPOOL II node, and it fails over to STANDBY NODE (which is now New Master) am unable to ping/connect using delegate IP<u></u><u></u></p>
<p class="MsoNormal">From remote client, I can ping locally in the new Master and connect, but not from clients,
<u></u><u></u></p>
<p class="MsoNormal">Basically, as soon as I stop master node, the delegated IP stops responding. As a result, databases are unavailable.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Bcoz of this issue am unable to implement HA for PGPOOL II nodes, can you please advise…<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> Thanks in advance.<u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u>NOTES:<u></u></p><p class="MsoNormal"><br></p><p class="MsoNormal">PGPOOL II NODES:<br></p><p class="MsoNormal"><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">rn000110724 - <span style="color:#ed7d31">10.50.28.58 - MASTER NODE</span>:<u></u><u></u></p>
<p class="MsoNormal">rn000110733 – <span style="color:#4472c4">10.201.36.72 – STANDBY NODE</span><u></u><u></u></p>
<p class="MsoNormal">Delegate IP : 10.50.28.80<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">sh-4.4# pcp_watchdog_info -h 10.50.28.58 -p 9898 -U pgpcp -v<u></u><u></u></p>
<p class="MsoNormal">Password: <u></u><u></u></p>
<p class="MsoNormal">Watchdog Cluster Information <u></u><u></u></p>
<p class="MsoNormal">Total Nodes : 2<u></u><u></u></p>
<p class="MsoNormal">Remote Nodes : 1<u></u><u></u></p>
<p class="MsoNormal">Quorum state : QUORUM EXIST<u></u><u></u></p>
<p class="MsoNormal">Alive Remote Nodes : 1<u></u><u></u></p>
<p class="MsoNormal">VIP up on local node : YES<u></u><u></u></p>
<p class="MsoNormal">Master Node Name : rn000110724:9999 Linux rn000110724<u></u><u></u></p>
<p class="MsoNormal">Master Host Name : rn000110724<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Watchdog Node Information <u></u><u></u></p>
<p class="MsoNormal">Node Name : rn000110724:9999 Linux rn000110724<u></u><u></u></p>
<p class="MsoNormal">Host Name : rn000110724<u></u><u></u></p>
<p class="MsoNormal">Delegate IP : 10.50.28.80<u></u><u></u></p>
<p class="MsoNormal">Pgpool port : 9999<u></u><u></u></p>
<p class="MsoNormal">Watchdog port : 9000<u></u><u></u></p>
<p class="MsoNormal">Node priority : 0<u></u><u></u></p>
<p class="MsoNormal">Status : 4<u></u><u></u></p>
<p class="MsoNormal">Status Name : MASTER<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Node Name : rn000110733:9999 Linux rn000110733<u></u><u></u></p>
<p class="MsoNormal">Host Name : rn000110733<u></u><u></u></p>
<p class="MsoNormal">Delegate IP : 10.50.28.80<u></u><u></u></p>
<p class="MsoNormal">Pgpool port : 9999<u></u><u></u></p>
<p class="MsoNormal">Watchdog port : 9000<u></u><u></u></p>
<p class="MsoNormal">Node priority : 0<u></u><u></u></p>
<p class="MsoNormal">Status : 7<u></u><u></u></p>
<p class="MsoNormal">Status Name : STANDBY<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">sh-4.4# pcp_watchdog_info -h 10.201.36.72 -p 9898 -U pgpcp -v<u></u><u></u></p>
<p class="MsoNormal">Password: <u></u><u></u></p>
<p class="MsoNormal">Watchdog Cluster Information <u></u><u></u></p>
<p class="MsoNormal">Total Nodes : 2<u></u><u></u></p>
<p class="MsoNormal">Remote Nodes : 1<u></u><u></u></p>
<p class="MsoNormal">Quorum state : QUORUM EXIST<u></u><u></u></p>
<p class="MsoNormal">Alive Remote Nodes : 1<u></u><u></u></p>
<p class="MsoNormal">VIP up on local node : NO<u></u><u></u></p>
<p class="MsoNormal">Master Node Name : rn000110724:9999 Linux rn000110724<u></u><u></u></p>
<p class="MsoNormal">Master Host Name : rn000110724<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Watchdog Node Information <u></u><u></u></p>
<p class="MsoNormal">Node Name : rn000110733:9999 Linux rn000110733<u></u><u></u></p>
<p class="MsoNormal">Host Name : rn000110733<u></u><u></u></p>
<p class="MsoNormal">Delegate IP : 10.50.28.80<u></u><u></u></p>
<p class="MsoNormal">Pgpool port : 9999<u></u><u></u></p>
<p class="MsoNormal">Watchdog port : 9000<u></u><u></u></p>
<p class="MsoNormal">Node priority : 0<u></u><u></u></p>
<p class="MsoNormal">Status : 7<u></u><u></u></p>
<p class="MsoNormal">Status Name : STANDBY<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Node Name : rn000110724:9999 Linux rn000110724<u></u><u></u></p>
<p class="MsoNormal">Host Name : rn000110724<u></u><u></u></p>
<p class="MsoNormal">Delegate IP : 10.50.28.80<u></u><u></u></p>
<p class="MsoNormal">Pgpool port : 9999<u></u><u></u></p>
<p class="MsoNormal">Watchdog port : 9000<u></u><u></u></p>
<p class="MsoNormal">Node priority : 0<u></u><u></u></p>
<p class="MsoNormal">Status : 4<u></u><u></u></p>
<p class="MsoNormal">Status Name : MASTER<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">rn000110724 - 10.50.28.58 - Master node:<u></u><u></u></p>
<p class="MsoNormal">sh-4.4# ifconfig<u></u><u></u></p>
<p class="MsoNormal">eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500<u></u><u></u></p>
<p class="MsoNormal"> inet 10.50.28.58 netmask 255.255.252.0 broadcast 10.50.31.255<u></u><u></u></p>
<p class="MsoNormal"> ether 00:50:56:a8:27:eb txqueuelen 1000 (Ethernet)<u></u><u></u></p>
<p class="MsoNormal"> RX packets 768864 bytes 120999407 (115.3 MiB)<u></u><u></u></p>
<p class="MsoNormal"> RX errors 0 dropped 0 overruns 0 frame 0<u></u><u></u></p>
<p class="MsoNormal"> TX packets 343573 bytes 123312342 (117.5 MiB)<u></u><u></u></p>
<p class="MsoNormal"> TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">eth0:0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500<u></u><u></u></p>
<p class="MsoNormal"> inet 10.50.28.80 netmask 255.255.255.0 broadcast 0.0.0.0<u></u><u></u></p>
<p class="MsoNormal"> ether 00:50:56:a8:27:eb txqueuelen 1000 (Ethernet)<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Can ping/connect using Delegate IP from Remote host:<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">/usr/bin/psql -h 10.50.28.80 -p 9999 -d postgres -U pgpool<u></u><u></u></p>
<p class="MsoNormal">Password for user pgpool:<u></u><u></u></p>
<p class="MsoNormal">psql (14.2)<u></u><u></u></p>
<p class="MsoNormal">postgres=# \l<u></u><u></u></p>
<p class="MsoNormal"> List of databases<u></u><u></u></p>
<p class="MsoNormal"> Name | Owner | Encoding | Collate | Ctype | Access privileges
<u></u><u></u></p>
<p class="MsoNormal">---------------+----------+----------+---------+-------+----------------------------<u></u><u></u></p>
<p class="MsoNormal">postgres | postgres | UTF8 | C | C | <u></u>
<u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">postgres=# show pool_nodes ;<u></u><u></u></p>
<p class="MsoNormal">node_id | hostname | port | status | lb_weight | role | select_cnt | load_balance_node | replication_delay | replication_state | replication_sync_s<u></u><u></u></p>
<p class="MsoNormal">tate | last_status_change <u></u><u></u></p>
<p class="MsoNormal">---------+-------------+------+--------+-----------+---------+------------+-------------------+-------------------+-------------------+-------------------<u></u><u></u></p>
<p class="MsoNormal">-----+---------------------<u></u><u></u></p>
<p class="MsoNormal">0 | rn000098071 | 5432 | up | 0.000000 | primary | 1 | true | 0 | |
<u></u><u></u></p>
<p class="MsoNormal"> | 2023-05-14 10:31:43<u></u><u></u></p>
<p class="MsoNormal">1 | rn000098069 | 5432 | up | 1.000000 | standby | 0 | false | 0 | |
<u></u><u></u></p>
<p class="MsoNormal"> | 2023-05-14 10:31:43<u></u><u></u></p>
<p class="MsoNormal">(2 rows)<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">postgres@rn000098071:/var/lib/pgsql <u></u><u></u></p>
<p class="MsoNormal">$ ping 10.50.28.80 <u></u><u></u></p>
<p class="MsoNormal">PING 10.50.28.80 (10.50.28.80) 56(84) bytes of data.<u></u><u></u></p>
<p class="MsoNormal">64 bytes from <a href="http://10.50.28.80" target="_blank">10.50.28.80</a>: icmp_seq=1 ttl=55 time=0.728 ms<u></u><u></u></p>
<p class="MsoNormal">64 bytes from <a href="http://10.50.28.80" target="_blank">10.50.28.80</a>: icmp_seq=2 ttl=55 time=0.490 ms<u></u><u></u></p>
<p class="MsoNormal">64 bytes from <a href="http://10.50.28.80" target="_blank">10.50.28.80</a>: icmp_seq=3 ttl=55 time=0.376 ms<u></u><u></u></p>
<p class="MsoNormal">64 bytes from <a href="http://10.50.28.80" target="_blank">10.50.28.80</a>: icmp_seq=4 ttl=55 time=0.477 ms<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">cat pgpool.conf<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">#------------------------------------------------------------------------------<u></u><u></u></p>
<p class="MsoNormal"># WATCHDOG<u></u><u></u></p>
<p class="MsoNormal">#------------------------------------------------------------------------------<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"># - Enabling -<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u><u></u></p>
<p class="MsoNormal">use_watchdog = <b>on </b> # Activates watchdog<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"># -Connection to up stream servers -<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">trusted_servers = ''<u></u><u></u></p>
<p class="MsoNormal"> # trusted server list which are used<u></u><u></u></p>
<p class="MsoNormal"> # to confirm network connection<u></u><u></u></p>
<p class="MsoNormal"> # (hostA,hostB,hostC,...)<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">ping_path = '/bin'<u></u><u></u></p>
<p class="MsoNormal"> # ping command path<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"># - Watchdog communication Settings -<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">wd_hostname = '<b>rn000110724</b>'<u></u><u></u></p>
<p class="MsoNormal"> # Host name or IP address of this watchdog<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">wd_port = <b>9000</b><u></u><u></u></p>
<p class="MsoNormal"> # port number for watchdog service<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">wd_priority = <b>0</b><u></u><u></u></p>
<p class="MsoNormal"> # priority of this watchdog in leader election<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">wd_authkey = ''<u></u><u></u></p>
<p class="MsoNormal"> # Authentication key for watchdog communication<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">wd_ipc_socket_dir = '/var/run/postgresql'<u></u><u></u></p>
<p class="MsoNormal"> # Unix domain socket path for watchdog IPC socket<u></u><u></u></p>
<p class="MsoNormal"> # The Debian package defaults to<u></u><u></u></p>
<p class="MsoNormal"> # /var/run/postgresql<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"># - Virtual IP control Setting -<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">delegate_IP = <b>'10.50.28.80</b>'<u></u><u></u></p>
<p class="MsoNormal"> # delegate IP address<u></u><u></u></p>
<p class="MsoNormal"> # If this is empty, virtual IP never bring up.<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">if_cmd_path = '/sbin'<u></u><u></u></p>
<p class="MsoNormal"> # path to the directory where if_up/down_cmd exists<u></u><u></u></p>
<p class="MsoNormal"> # If if_up/down_cmd starts with "/", if_cmd_path will be ignored.<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">if_up_cmd = '/usr/bin/sudo /sbin/ip addr add $_IP_$/24 dev eth0 label eth0:0'<u></u><u></u></p>
<p class="MsoNormal"> # startup delegate IP command<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">if_down_cmd = '/usr/bin/sudo /sbin/ip addr del $_IP_$/24 dev eth0'<u></u><u></u></p>
<p class="MsoNormal"> # shutdown delegate IP command<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">arping_path = '/usr/sbin'<u></u><u></u></p>
<p class="MsoNormal"> # arping command path<u></u><u></u></p>
<p class="MsoNormal"> # If arping_cmd starts with "/", if_cmd_path will be ignored.<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">arping_cmd = '/usr/bin/sudo /usr/sbin/arping -U $_IP_$ -w 1 -I eth0'<u></u><u></u></p>
<p class="MsoNormal"> # arping command<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">ifconfig_path = '/etc/pgpool-II'<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"># - Behaivor on escalation Setting -<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">clear_memqcache_on_escalation = <b>on</b><u></u><u></u></p>
<p class="MsoNormal"> # Clear all the query cache on shared memory<u></u><u></u></p>
<p class="MsoNormal"> # when standby pgpool escalate to active pgpool<u></u><u></u></p>
<p class="MsoNormal"> # (= virtual IP holder).<u></u><u></u></p>
<p class="MsoNormal"> # This should be off if client connects to pgpool<u></u><u></u></p>
<p class="MsoNormal"> # not using virtual IP.<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">wd_escalation_command = '/etc/pgpool-II/escalation.sh'<u></u><u></u></p>
<p class="MsoNormal"> # Executes this command at escalation on new active pgpool.<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">wd_de_escalation_command = ''<u></u><u></u></p>
<p class="MsoNormal"> # Executes this command when master pgpool resigns from being master.<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"># - Watchdog consensus settings for failover -<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">failover_when_quorum_exists = on<u></u><u></u></p>
<p class="MsoNormal"> # Only perform backend node failover<u></u><u></u></p>
<p class="MsoNormal"> # when the watchdog cluster holds the quorum<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">failover_require_consensus = on<u></u><u></u></p>
<p class="MsoNormal"> # Perform failover when majority of Pgpool-II nodes<u></u><u></u></p>
<p class="MsoNormal"> # aggrees on the backend node status change<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">allow_multiple_failover_requests_from_node = off<u></u><u></u></p>
<p class="MsoNormal"> # A Pgpool-II node can cast multiple votes<u></u><u></u></p>
<p class="MsoNormal"> # for building the consensus on failover<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">#enable_consensus_with_half_votes = off<u></u><u></u></p>
<p class="MsoNormal">enable_consensus_with_half_votes = on<u></u><u></u></p>
<p class="MsoNormal"> # apply majority rule for consensus and quorum computation<u></u><u></u></p>
<p class="MsoNormal"> # at 50% of votes in a cluster with even number of nodes.<u></u><u></u></p>
<p class="MsoNormal"> # when enabled the existence of quorum and consensus<u></u><u></u></p>
<p class="MsoNormal"> # on failover is resolved after receiving half of the<u></u><u></u></p>
<p class="MsoNormal"> # total votes in the cluster, otherwise both these<u></u><u></u></p>
<p class="MsoNormal"> # decisions require at least one more vote than<u></u><u></u></p>
<p class="MsoNormal"> # half of the total votes.<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"># - Lifecheck Setting -<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"># -- common --<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">wd_monitoring_interfaces_list = '' # Comma separated list of interfaces names to monitor.<u></u><u></u></p>
<p class="MsoNormal"> # if any interface from the list is active the watchdog will<u></u><u></u></p>
<p class="MsoNormal"> # consider the network is fine<u></u><u></u></p>
<p class="MsoNormal"> # 'any' to enable monitoring on all interfaces except loopback<u></u><u></u></p>
<p class="MsoNormal"> # '' to disable monitoring<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">wd_lifecheck_method = 'heartbeat'<u></u><u></u></p>
<p class="MsoNormal"> # Method of watchdog lifecheck ('heartbeat' or 'query' or 'external')<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">wd_interval = 10<u></u><u></u></p>
<p class="MsoNormal"> # lifecheck interval (sec) > 0<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"># -- heartbeat mode --<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">wd_heartbeat_port = 9694<u></u><u></u></p>
<p class="MsoNormal"> # Port number for receiving heartbeat signal<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">wd_heartbeat_keepalive = 2<u></u><u></u></p>
<p class="MsoNormal"> # Interval time of sending heartbeat signal (sec)<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">wd_heartbeat_deadtime = 30<u></u><u></u></p>
<p class="MsoNormal"> # Deadtime interval for heartbeat signal (sec)<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">#heartbeat_destination0 = 'host0_ip1'<u></u><u></u></p>
<p class="MsoNormal">#heartbeat_destination0 = '10.201.36.72'# Host name or IP address of destination 0<u></u><u></u></p>
<p class="MsoNormal">heartbeat_destination0 = '10.50.28.58' # for sending heartbeat signal.<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">heartbeat_destination_port0 = 9694 <u></u><u></u></p>
<p class="MsoNormal"> # Port number of destination 0 for sending<u></u><u></u></p>
<p class="MsoNormal"> # heartbeat signal. Usually this is the<u></u><u></u></p>
<p class="MsoNormal"> # same as wd_heartbeat_port.<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">heartbeat_device0 = ''<u></u><u></u></p>
<p class="MsoNormal"> # Name of NIC device (such like 'eth0')<u></u><u></u></p>
<p class="MsoNormal"> # used for sending/receiving heartbeat<u></u><u></u></p>
<p class="MsoNormal"> # signal to/from destination 0.<u></u><u></u></p>
<p class="MsoNormal"> # This works only when this is not empty<u></u><u></u></p>
<p class="MsoNormal"> # and pgpool has root privilege.<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">heartbeat_destination1 = <b>'10.201.36.72</b>'<u></u><u></u></p>
<p class="MsoNormal">heartbeat_destination_port1 = 9694<u></u><u></u></p>
<p class="MsoNormal">#heartbeat_device1 = ''<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"># -- query mode --<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">wd_life_point = 3<u></u><u></u></p>
<p class="MsoNormal"> # lifecheck retry times<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">wd_lifecheck_query = 'SELECT 1'<u></u><u></u></p>
<p class="MsoNormal"> # lifecheck query to pgpool from watchdog<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">wd_lifecheck_dbname = 'template1'<u></u><u></u></p>
<p class="MsoNormal"> # Database name connected for lifecheck<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">wd_lifecheck_user = 'nobody'<u></u><u></u></p>
<p class="MsoNormal"> # watchdog user monitoring pgpools in lifecheck<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">wd_lifecheck_password = ''<u></u><u></u></p>
<p class="MsoNormal"> # Password for watchdog user in lifecheck<u></u><u></u></p>
<p class="MsoNormal"> # Leaving it empty will make Pgpool-II to first look for the<u></u><u></u></p>
<p class="MsoNormal"> # Password in pool_passwd file before using the empty password<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"># - Other pgpool Connection Settings -<u></u><u></u></p>
<p class="MsoNormal"><u></u><u></u></p>
<p class="MsoNormal">other_pgpool_hostname0 = '<b>rn000110733</b>'<u></u><u></u></p>
<p class="MsoNormal">other_pgpool_port0 = 9999 # Port number for other pgpool 0<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal">other_wd_port0 = 9000<u></u><u></u></p>
<p class="MsoNormal"> # Port number for other watchdog 0<u></u><u></u></p>
<p class="MsoNormal"> # (change requires restart)<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">#other_pgpool_hostname1 = 'host1'<u></u><u></u></p>
<p class="MsoNormal">#other_pgpool_port1 = 5432<u></u><u></u></p>
<p class="MsoNormal">#other_wd_port1 = 9000<u></u><u></u></p>
<p class="MsoNormal">#other_wd_port0 = 9000<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">PART II:<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">PGPOOL II NODES:<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">rn000110724 - <span style="color:#ed7d31">10.50.28.58 - MASTER NODE</span>:<u></u><u></u></p>
<p class="MsoNormal">rn000110733 – <span style="color:#4472c4">10.201.36.72 – STANDBY NODE</span><u></u><u></u></p>
<p class="MsoNormal">Delegate IP : 10.50.28.80<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><b>Shutdown PGPOOL II on current Master : <u></u><u></u></b></p>
<p class="MsoNormal">rn000110724 - <span style="color:#ed7d31">10.50.28.58 - MASTER NODE</span>:<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">LOG<u></u><u></u></p>
<p class="MsoNormal">2023-05-14 16:12:44: pid 79354: LOG: Watchdog is shutting down<u></u><u></u></p>
<p class="MsoNormal">2023-05-14 16:12:44: pid 113361: LOG: watchdog: de-escalation started<u></u><u></u></p>
<p class="MsoNormal">2023-05-14 16:12:44: pid 113361: LOG: successfully released the delegate IP:"10.50.28.80"<u></u><u></u></p>
<p class="MsoNormal">2023-05-14 16:12:44: pid 113361: DETAIL: 'if_down_cmd' returned with success<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">rn000110733 – <span style="color:#4472c4">10.201.36.72</span><u></u><u></u></p>
<p class="MsoNormal">New Master LOG<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">2023-05-14 16:12:44: pid 88197: LOG: remote node "rn000110724:9999 Linux rn000110724" is shutting down<u></u><u></u></p>
<p class="MsoNormal">2023-05-14 16:12:44: pid 88197: LOG: watchdog cluster has lost the coordinator node<u></u><u></u></p>
<p class="MsoNormal">2023-05-14 16:12:44: pid 88197: LOG: removing the remote node "rn000110724:9999 Linux rn000110724" from watchdog cluster master<u></u><u></u></p>
<p class="MsoNormal">2023-05-14 16:12:44: pid 88197: LOG: We have lost the cluster master node "rn000110724:9999 Linux rn000110724"<u></u><u></u></p>
<p class="MsoNormal">2023-05-14 16:12:44: pid 88197: LOG: watchdog node state changed from [STANDBY] to [JOINING]<u></u><u></u></p>
<p class="MsoNormal">2023-05-14 16:12:48: pid 88197: LOG: watchdog node state changed from [JOINING] to [INITIALIZING]<u></u><u></u></p>
<p class="MsoNormal">2023-05-14 16:12:49: pid 88197: LOG: I am the only alive node in the watchdog cluster<u></u><u></u></p>
<p class="MsoNormal">2023-05-14 16:12:49: pid 88197: HINT: skipping stand for coordinator state<u></u><u></u></p>
<p class="MsoNormal">2023-05-14 16:12:49: pid 88197: LOG: watchdog node state changed from [INITIALIZING] to [MASTER]<u></u><u></u></p>
<p class="MsoNormal">2023-05-14 16:12:49: pid 88197: LOG: I am announcing my self as master/coordinator watchdog node<u></u><u></u></p>
<p class="MsoNormal">2023-05-14 16:12:53: pid 88197: LOG: I am the cluster leader node<u></u><u></u></p>
<p class="MsoNormal">2023-05-14 16:12:57: pid 118646: LOG<b>: successfully acquired the delegate IP:"10.50.28.80"<u></u><u></u></b></p>
<p class="MsoNormal">2023-05-14 16:13:22: pid 88197: LOG: remote node "rn000110724:9999 Linux rn000110724" is shutting down<u></u><u></u></p>
<p class="MsoNormal">2023-05-14 16:13:32: pid 88197: LOG: new IPC connection received<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">rn000110733 – <span style="color:#4472c4">10.201.36.72 -- Acquired delegate IP</span><u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">sh-4.4# ifconfig<u></u><u></u></p>
<p class="MsoNormal">eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500<u></u><u></u></p>
<p class="MsoNormal"> inet 10.201.36.72 netmask 255.255.252.0 broadcast 10.201.39.255<u></u><u></u></p>
<p class="MsoNormal"> ether 00:50:56:9c:12:9d txqueuelen 1000 (Ethernet)<u></u><u></u></p>
<p class="MsoNormal"> RX packets 652871 bytes 115519655 (110.1 MiB)<u></u><u></u></p>
<p class="MsoNormal"> RX errors 0 dropped 505 overruns 0 frame 0<u></u><u></u></p>
<p class="MsoNormal"> TX packets 286480 bytes 125140983 (119.3 MiB)<u></u><u></u></p>
<p class="MsoNormal"> TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">eth0:0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500<u></u><u></u></p>
<p class="MsoNormal"> inet <b>10.50.28.80 netmask 255.255.255.0 broadcast 0.0.0.0<u></u><u></u></b></p>
<p class="MsoNormal"> ether 00:50:56:9c:12:9d txqueuelen 1000 (Ethernet)<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">rn000110733 – <span style="color:#4472c4">10.201.36.72 - New Master:<u></u><u></u></span></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">sh-4.4# pcp_watchdog_info -h 10.201.36.72 -p 9898 -U pgpcp -v<u></u><u></u></p>
<p class="MsoNormal">Password: <u></u><u></u></p>
<p class="MsoNormal">Watchdog Cluster Information <u></u><u></u></p>
<p class="MsoNormal">Total Nodes : 2<u></u><u></u></p>
<p class="MsoNormal">Remote Nodes : 1<u></u><u></u></p>
<p class="MsoNormal">Quorum state : QUORUM IS ON THE EDGE<u></u><u></u></p>
<p class="MsoNormal">Alive Remote Nodes : 0<u></u><u></u></p>
<p class="MsoNormal">VIP up on local node : YES<u></u><u></u></p>
<p class="MsoNormal">Master Node Name : rn000110733:9999 Linux rn000110733<u></u><u></u></p>
<p class="MsoNormal">Master Host Name : rn000110733<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Watchdog Node Information <u></u><u></u></p>
<p class="MsoNormal">Node Name : rn000110733:9999 Linux rn000110733<u></u><u></u></p>
<p class="MsoNormal">Host Name : rn000110733<u></u><u></u></p>
<p class="MsoNormal">Delegate IP : 10.50.28.80<u></u><u></u></p>
<p class="MsoNormal">Pgpool port : 9999<u></u><u></u></p>
<p class="MsoNormal">Watchdog port : 9000<u></u><u></u></p>
<p class="MsoNormal">Node priority : 0<u></u><u></u></p>
<p class="MsoNormal">Status : 4<u></u><u></u></p>
<p class="MsoNormal">Status Name : MASTER<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Node Name : rn000110724:9999 Linux rn000110724<u></u><u></u></p>
<p class="MsoNormal">Host Name : rn000110724<u></u><u></u></p>
<p class="MsoNormal">Delegate IP : 10.50.28.80<u></u><u></u></p>
<p class="MsoNormal">Pgpool port : 9999<u></u><u></u></p>
<p class="MsoNormal">Watchdog port : 9000<u></u><u></u></p>
<p class="MsoNormal">Node priority : 0<u></u><u></u></p>
<p class="MsoNormal">Status : 10<u></u><u></u></p>
<p class="MsoNormal">Status Name : SHUTDOWN<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Can ping and connect <b>locally </b>from new Master PGPOOL Node:<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">sh-4.4# ping 10.50.28.80<u></u><u></u></p>
<p class="MsoNormal">PING 10.50.28.80 (10.50.28.80) 56(84) bytes of data.<u></u><u></u></p>
<p class="MsoNormal">64 bytes from <a href="http://10.50.28.80" target="_blank">10.50.28.80</a>: icmp_seq=1 ttl=64 time=0.023 ms<u></u><u></u></p>
<p class="MsoNormal">64 bytes from <a href="http://10.50.28.80" target="_blank">10.50.28.80</a>: icmp_seq=2 ttl=64 time=0.021 ms<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">sh-4.4# /usr/bin/psql -h <b>10.50.28.80</b> -p 9999 -d postgres -U pgpool<u></u><u></u></p>
<p class="MsoNormal">Password for user pgpool: <u></u><u></u></p>
<p class="MsoNormal">postgres=#<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">But from Client host unable to ping:<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">$ /usr/bin/psql -h 10.50.28.80 -p 9999 -d postgres -U pgpool<u></u><u></u></p>
<p class="MsoNormal">psql: error: connection to server at "10.50.28.80", port 9999 failed: No route to host<u></u><u></u></p>
<p class="MsoNormal"> Is the server running on that host and accepting TCP/IP connections?<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">postgres@rn000098071:/var/lib/pgsql <u></u><u></u></p>
<p class="MsoNormal">$ ping 10.50.28.80<u></u><u></u></p>
<p class="MsoNormal">PING 10.50.28.80 (10.50.28.80) 56(84) bytes of data.<u></u><u></u></p>
<p class="MsoNormal">From 10.50.28.1 icmp_seq=1 Destination Host Unreachable<u></u><u></u></p>
<p class="MsoNormal">From 10.50.28.1 icmp_seq=3 Destination Host Unreachable<u></u><u></u></p>
<p class="MsoNormal">From 10.50.28.1 icmp_seq=2 Destination Host Unreachable<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<div>
<p class="MsoNormal"><i><span style="font-family:"Calibri Light",sans-serif;color:black">Thank you!</span></i><span style="color:black"><u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:14.0pt;font-family:"Brush Script MT";color:black">Kishore</span><span style="color:black"><u></u><u></u></span></p>
</div>
</div>
<p class="MsoNormal"><b><span style="font-size:9.0pt;font-family:"Calibri Light",sans-serif;color:#e87722"></span></b><u></u><u></u></p>
</div>
<p><br> </p></div>
</div></div></div>