Desacople suas perguntas sobre servidores físicos / virtuais e se concentre mais em entender o failover no Postgres.
Eu acredito que você já leu o seguinte, mas se não, veja mecanismos de failover em um nível alto: link
e, em seguida, procure uma forma de implementar "filmar o outro na cabeça" e uma pulsação, mesmo que isso signifique apenas compartilhar um back-end de armazenamento (consulte: , link )