I have a #postgresql setup with master-slave configuration using repmgr. im struggling with taking a consistent snapshot backup (pg_start_backup) of the slave node, this is due the fact that the slave is in recovery, hence read-only mode.
i need both the master and the slave snapshots to speedup the recovery process (if taken only on 1 node, in case of recovery the slave needs to be rebuild from scratch). any advice of how to take a consistent snapshot of slave node? (master is no problem).
currently these are the approaches im checking:
1.shutting down slave node and take a cold snapshot backup.
-
pg_start_backup on master and hopefully it will reflect consistent state on slave (with the WAL shipping) - any confirmation on this one?
stop replication, take hot backup of slave using regular methods and then starting replication again - as far as i tested, not possible because as the replication is stopped, each node becomes independent and has its own timeline, thus require the nodes to resync in order to function again in master-slave config.
make a switch over before taking the backup - dont like this option, dont think is a correct approach to make a switch-over each time i want to take a backup.
anything i missed? have you implemented it using different methods?
thanks.