Eu recentemente tentei descobrir isso também para um projeto semelhante. O que eu descobri é que não é assim tão fácil. Existem várias alternativas comerciais e de código aberto quando se trata de replicação. No entanto, a maioria deles não suporta várias soluções master-master, e muitas delas são difíceis de manter e configurar.
Você tem algumas alternativas para seguir em frente, dependendo de como a sua aplicação web está configurada e da quantidade de redundância que você precisa. O mais fácil é provavelmente fazer um warm standby (essa funcionalidade já está incluída na versão 8.3), mas em caso de falha, você terá um tempo de inatividade.
Outras soluções de replicação que analisei incluem:
Destes, achei o Bucardo o mais interessante, já que ele suporta master-master (não é multi), e parece ser bem fácil de configurar.
O Slony é um pouco difícil de configurar e também requer muita manutenção ao atualizar tabelas (as mudanças de DDL não são replicadas) e também é apenas um mestre-escravo, o que significa que você pode gravar somente em um banco de dados.
O PgCluster não parece ser mantido e não dá uma impressão séria na documentação e no site (o site não é atualizado desde 2005).