[pgpool-general: 3609] Re: Watchdog start failure
Yugo Nagata
nagata at sraoss.co.jp
Thu Apr 9 14:34:18 JST 2015
Hi,
Second pgpool-II tried to become active and bring up VIP,
but the VIP was brought up by the first pgpool-II, then failed
to start up.
Can postgres-1 and postgres-2 servers comunicate with each other
on 9000 port? The second pgpool-II might fail to find the other
pgpool.
If there is no problem with network comunication, starting the
second pgpool-II with a few seconds interval might resolve this.
When the inteval is too short, the first pgpool-II's watchdog
can not be ready to accept standby pgpool-II.
On Wed, 8 Apr 2015 14:13:45 +0200
Mephysto <mephystoonhell at gmail.com> wrote:
> Hi there,
> I'm still testing pgpool 3.4.1 watchdog. I resolved permission issue for
> ifup and ifdown, but now I am some issues in starting phase of stanby
> pgpool instance.
>
> When I start master pgpool I receive this output:
>
> 2015-04-08 12:10:01: pid 10402: LOG: watchdog bringing up delegate IP,
> 'ifconfig up' succeeded
> 2015-04-08 12:10:01: pid 10402: DEBUG: watchdog standing for master
> 2015-04-08 12:10:01: pid 10402: DETAIL: send the packet to declare the new
> master
> 2015-04-08 12:10:01: pid 10402: LOG: watchdog escalation successful,
> escalated to master pgpool
> 2015-04-08 12:10:01: pid 10402: LOG: watchdog started
> 2015-04-08 12:10:01: pid 10402: LOG: pgpool-II successfully started.
> version 3.4.1 (tataraboshi)
>
> But, when I star secondary instance, I receive this error:
>
> 2015-04-08 14:08:21: pid 19376: DEBUG: watchdog executing ping
> 2015-04-08 14:08:21: pid 19376: DETAIL: succeed to ping 192.168.56.249
> 2015-04-08 14:08:21: pid 19376: DEBUG: watchdog ping
> 2015-04-08 14:08:21: pid 19376: DETAIL: ping data: PING 192.168.56.249
> (192.168.56.249) 56(84) bytes of data.
>
> --- 192.168.56.249 ping statistics ---
> 3 packets transmitted, 3 received, 0% packet loss, time 2003ms
> rtt min/avg/max/mdev = 0.412/1.106/1.799/0.566 ms
>
> 2015-04-08 14:08:21: pid 19376: FATAL: failed to initialize watchdog,
> delegate_IP "192.168.56.249" already exists
>
>
> This is configuration of master instance:
>
> #------------------------------------------------------------------------------
> # WATCHDOG
> #------------------------------------------------------------------------------
>
> # - Enabling -
>
> use_watchdog = on
> # Activates watchdog
> # (change requires restart)
>
> # -Connection to up stream servers -
>
> trusted_servers = ''
> # trusted server list which are used
> # to confirm network connection
> # (hostA,hostB,hostC,...)
> # (change requires restart)
> ping_path = '/bin'
> # ping command path
> # (change requires restart)
>
> # - Watchdog communication Settings -
>
> wd_hostname = 'postgres-1'
> # Host name or IP address of this
> watchdog
> # (change requires restart)
> wd_port = 9000
> # port number for watchdog service
> # (change requires restart)
> wd_authkey = ''
> # Authentication key for watchdog
> communication
> # (change requires restart)
>
> # - Virtual IP control Setting -
>
> delegate_IP = '192.168.56.249'
> # delegate IP address
> # If this is empty, virtual IP never
> bring up.
> # (change requires restart)
> ifconfig_path = '/opt/postgres/pgpool-II/scripts'
> # ifconfig command path
> # (change requires restart)
> if_up_cmd = 'ifup.sh $_IP_$'
> # startup delegate IP command
> # (change requires restart)
> if_down_cmd = 'ifdown.sh'
> # shutdown delegate IP command
> # (change requires restart)
>
> arping_path = '/usr/sbin' # arping command path
> # (change requires restart)
>
> arping_cmd = 'sudo arping -U $_IP_$ -w 1'
> # arping command
> # (change requires restart)
>
> # - Behaivor on escalation Setting -
>
> clear_memqcache_on_escalation = on
> # Clear all the query cache on shared
> memory
> # when standby pgpool escalate to
> active pgpool
> # (= virtual IP holder).
> # This should be off if client connects
> to pgpool
> # not using virtual IP.
> # (change requires restart)
> wd_escalation_command = ''
> # Executes this command at escalation
> on new active pgpool.
> # (change requires restart)
>
> # - Lifecheck Setting -
>
> # -- common --
>
> wd_lifecheck_method = 'query'
> # Method of watchdog lifecheck
> ('heartbeat' or 'query')
> # (change requires restart)
> wd_interval = 10
> # lifecheck interval (sec) > 0
> # (change requires restart)
>
> # -- heartbeat mode --
>
> wd_heartbeat_port = 9694
> # Port number for receiving heartbeat
> signal
> # (change requires restart)
> wd_heartbeat_keepalive = 2
> # Interval time of sending heartbeat
> signal (sec)
> # (change requires restart)
> wd_heartbeat_deadtime = 30
> # Deadtime interval for heartbeat
> signal (sec)
> # (change requires restart)
> heartbeat_destination0 = 'postgres-2'
> # Host name or IP address of
> destination 0
> # for sending heartbeat signal.
> # (change requires restart)
> heartbeat_destination_port0 = 9694
> # Port number of destination 0 for
> sending
> # heartbeat signal. Usually this is the
> # same as wd_heartbeat_port.
> # (change requires restart)
> heartbeat_device0 = ''
> # Name of NIC device (such like 'eth0')
> # used for sending/receiving heartbeat
> # signal to/from destination 0.
> # This works only when this is not empty
> # and pgpool has root privilege.
> # (change requires restart)
>
> #heartbeat_destination1 = 'host0_ip2'
> #heartbeat_destination_port1 = 9694
> #heartbeat_device1 = ''
>
> # -- query mode --
>
> wd_life_point = 3
> # lifecheck retry times
> # (change requires restart)
> wd_lifecheck_query = 'SELECT 1'
> # lifecheck query to pgpool from
> watchdog
> # (change requires restart)
> wd_lifecheck_dbname = 'template1'
> # Database name connected for lifecheck
> # (change requires restart)
> wd_lifecheck_user = 'postgres'
> # watchdog user monitoring pgpools in
> lifecheck
> # (change requires restart)
> wd_lifecheck_password = ''
> # Password for watchdog user in
> lifecheck
> # (change requires restart)
>
> # - Other pgpool Connection Settings -
>
> other_pgpool_hostname0 = 'postgres-2'
> # Host name or IP address to connect to
> for other pgpool 0
> # (change requires restart)
> other_pgpool_port0 = 9999
> # Port number for othet pgpool 0
> # (change requires restart)
> other_wd_port0 = 9000
> # Port number for othet watchdog 0
> # (change requires restart)
> #other_pgpool_hostname1 = 'host1'
> #other_pgpool_port1 = 5432
> #other_wd_port1 = 9000
>
>
> And this is configuration for secondary instance:
>
> #------------------------------------------------------------------------------
> # WATCHDOG
> #------------------------------------------------------------------------------
>
> # - Enabling -
>
> use_watchdog = on
> # Activates watchdog
> # (change requires restart)
>
> # -Connection to up stream servers -
>
> trusted_servers = ''
> # trusted server list which are used
> # to confirm network connection
> # (hostA,hostB,hostC,...)
> # (change requires restart)
> ping_path = '/bin'
> # ping command path
> # (change requires restart)
>
> # - Watchdog communication Settings -
>
> wd_hostname = 'postgres-2'
> # Host name or IP address of this
> watchdog
> # (change requires restart)
> wd_port = 9000
> # port number for watchdog service
> # (change requires restart)
> wd_authkey = ''
> # Authentication key for watchdog
> communication
> # (change requires restart)
>
> # - Virtual IP control Setting -
>
> delegate_IP = '192.168.56.249'
> # delegate IP address
> # If this is empty, virtual IP never
> bring up.
> # (change requires restart)
> ifconfig_path = '/opt/postgres/pgpool-II/scripts'
> # ifconfig command path
> # (change requires restart)
> if_up_cmd = 'ifup.sh $_IP_$'
> # startup delegate IP command
> # (change requires restart)
> if_down_cmd = 'ifdown.sh'
> # shutdown delegate IP command
> # (change requires restart)
>
> arping_path = '/usr/sbin' # arping command path
> # (change requires restart)
>
> arping_cmd = 'arping -U $_IP_$ -w 1'
> # arping command
> # (change requires restart)
>
> # - Behaivor on escalation Setting -
>
> clear_memqcache_on_escalation = on
> # Clear all the query cache on shared
> memory
> # when standby pgpool escalate to
> active pgpool
> # (= virtual IP holder).
> # This should be off if client connects
> to pgpool
> # not using virtual IP.
> # (change requires restart)
> wd_escalation_command = ''
> # Executes this command at escalation
> on new active pgpool.
> # (change requires restart)
>
> # - Lifecheck Setting -
>
> # -- common --
>
> wd_lifecheck_method = 'query'
> # Method of watchdog lifecheck
> ('heartbeat' or 'query')
> # (change requires restart)
> wd_interval = 10
> # lifecheck interval (sec) > 0
> # (change requires restart)
>
> # -- heartbeat mode --
>
> wd_heartbeat_port = 9694
> # Port number for receiving heartbeat
> signal
> # (change requires restart)
> wd_heartbeat_keepalive = 2
> # Interval time of sending heartbeat
> signal (sec)
> # (change requires restart)
> wd_heartbeat_deadtime = 30
> # Deadtime interval for heartbeat
> signal (sec)
> # (change requires restart)
> heartbeat_destination0 = 'postgres-1'
> # Host name or IP address of
> destination 0
> # for sending heartbeat signal.
> # (change requires restart)
> heartbeat_destination_port0 = 9694
> # Port number of destination 0 for
> sending
> # heartbeat signal. Usually this is the
> # same as wd_heartbeat_port.
> # (change requires restart)
> heartbeat_device0 = ''
> # Name of NIC device (such like 'eth0')
> # used for sending/receiving heartbeat
> # signal to/from destination 0.
> # This works only when this is not empty
> # and pgpool has root privilege.
> # (change requires restart)
>
> #heartbeat_destination1 = 'host0_ip2'
> #heartbeat_destination_port1 = 9694
> #heartbeat_device1 = ''
>
> # -- query mode --
>
> wd_life_point = 3
> # lifecheck retry times
> # (change requires restart)
> wd_lifecheck_query = 'SELECT 1'
> # lifecheck query to pgpool from
> watchdog
> # (change requires restart)
> wd_lifecheck_dbname = 'template1'
> # Database name connected for lifecheck
> # (change requires restart)
> wd_lifecheck_user = 'postgres'
> # watchdog user monitoring pgpools in
> lifecheck
> # (change requires restart)
> wd_lifecheck_password = ''
> # Password for watchdog user in
> lifecheck
> # (change requires restart)
>
> # - Other pgpool Connection Settings -
>
> other_pgpool_hostname0 = 'postgres-1'
> # Host name or IP address to connect to
> for other pgpool 0
> # (change requires restart)
> other_pgpool_port0 = 9999
> # Port number for othet pgpool 0
> # (change requires restart)
> other_wd_port0 = 9000
> # Port number for othet watchdog 0
> # (change requires restart)
> #other_pgpool_hostname1 = 'host1'
> #other_pgpool_port1 = 5432
> #other_wd_port1 = 9000
>
>
>
>
> Can you help to resolve my issue?
>
> Thanks in advance.
>
> Best regards.
>
> Meph
--
Yugo Nagata <nagata at sraoss.co.jp>
More information about the pgpool-general
mailing list