RE: How to change standby node to sync from the new master withoutrebooting the PostgreSQL service? - Mailing list pgsql-general

From Scot Kreienkamp
Subject RE: How to change standby node to sync from the new master withoutrebooting the PostgreSQL service?
Date
Msg-id 17082AAFC33A934082836458CB53494374D69700@MONDB03.na.lzb.hq
Whole thread Raw
In response to Re: How to change standby node to sync from the new master withoutrebooting the PostgreSQL service?  (Madan Kumar <madankumar1993@gmail.com>)
Responses Re: How to change standby node to sync from the new master withoutrebooting the PostgreSQL service?  (Madan Kumar <madankumar1993@gmail.com>)
List pgsql-general

Why is it not feasible?  How do your DB clients know to switch to the new master? 

 

I’m using pcs clustering in my environment to manage two production nodes, automatic failover, and two VIPs (one for master, one for slave).  All my clients point at either the master VIP or the slave VIP.  When we have a role change where the master is moved we do nothing to any clients or replication slaves, they automatically reconnect in all cases after the pcs cluster activates the two VIPs.  Also in case the primary slave would go down pcs will move the primary slave VIP to the master so that replication continues.  Makes maintenance easy, I can reboot the primary slave at any time and everything just continues working. 

 

There is easy to use open source software that will do nothing but VIPs.  I used to use keepalived for that purpose.  You define a script that will let it determine which node to activate the VIP on.  In the script have it check which node is the master, and it will activate that VIP on the master.  When you transition the master to another server the VIP will travel with the master. 

 

 

Scot Kreienkamp |Senior Systems Engineer | La-Z-Boy Corporate
One La-Z-Boy Drive| Monroe, Michigan 48162 | Office: 734-384-6403 | | Mobile: 7349151444 | Email: Scot.Kreienkamp@la-z-boy.com

From: Madan Kumar [mailto:madankumar1993@gmail.com]
Sent: Tuesday, October 30, 2018 10:02 AM
To: Scot Kreienkamp <Scot.Kreienkamp@la-z-boy.com>
Cc: pgsql-general@lists.postgresql.org
Subject: Re: How to change standby node to sync from the new master without rebooting the PostgreSQL service?

 

Thanks Scot.

But moving VIP is not feasible option for me.

At present PostgreSQL doesn't support for reloading of recovery.conf parameters via SIGHUP. To prevent recovery.conf reload for master IP, I can manage internal DNS to always point to the current master. However there are some cases where old master will come up as standby before the new master is elected. In this case it will lead to cascading replication.

 

So to overcome such cases reboot is a required. It can be achieved by restarting the wal receiver process too. But there is no straight forward way of restarting wal receiver process. The only way i figured out is to kill the wal receiver process. Postmaster will take care of restarting the wal receiver  process. But here my worry is, will there be any side effect if i kill wal receiver process (even using TERM signal)? 

 

Warm Regards,

 

"There is no Elevator to Success. You have to take the Stairs"

 

 

On Tue, Oct 30, 2018 at 6:27 PM Scot Kreienkamp <Scot.Kreienkamp@la-z-boy.com> wrote:

Point it at a VIP that travels with the master. 

From: Madan Kumar [mailto:madankumar1993@gmail.com]
Sent: Tuesday, October 30, 2018 7:20 AM
To:pgsql-general@lists.postgresql.org
Subject: How to change standby node to sync from the new master without rebooting the PostgreSQL service?

 

Hi,

 

Whenever there is a change in master, PostgreSQL service on standby nodes must be restarted (after changing the master IP in the recovery.conf) to ensure it is syncing with the new master.

Is there a way to point to new master without reboot of PostgreSQL on the standby?

 

Warm Regards,

 

"There is no Elevator to Success. You have to take the Stairs"

This message is intended only for the individual or entity to which it is addressed.  It may contain privileged, confidential information which is exempt from disclosure under applicable laws.  If you are not the intended recipient, you are strictly prohibited from disseminating or distributing this information (other than to the intended recipient) or copying this information.  If you have received this communication in error, please notify us immediately by e-mail or by telephone at the above number. Thank you.

pgsql-general by date:

Previous
From: Adrian Klaver
Date:
Subject: Re: rw_redis_fdw: SQL Errors when statement is within a function
Next
From: Adrian Klaver
Date:
Subject: Re: R: Problem with stored procedure and nested transactions