Вы пытаетесь создать репликацию с несколькими мастерами, что является очень плохой идеей, поскольку любое изменение в любой базе данных должно реплицироваться в любую другую базу данных. Это очень медленно - на одном сервере вы можете получать несколько сотен транзакций в секунду, используя пару быстрых дисков и RAID1 или RAID10. Это может быть гораздо больше, если у вас есть хороший RAID-контроллер с кэш-памятью на батарейках. Если вы добавите издержки на общение со всеми вашими серверами, вы получите не более десятков транзакций в секунду.
Если вам нужна высокая доступность, вам следует воспользоваться решением «горячего» резервирования, где у вас есть сервер, который реплицируется, но не используется - когда основной сервер умирает, замена вступает во владение. Вы можете потерять некоторые недавние транзакции, если ваш главный сервер умрет.
Вы также можете перейти к одному ведущему, нескольким ведомым асинхронной репликации. Каждое изменение в базе данных должно быть выполнено на одном главном сервере. Но вы можете иметь несколько подчиненных серверов только для чтения. Данные на этих подчиненных серверах могут быть несколькими транзакциями за главным, поэтому вы также можете потерять некоторые недавние транзакции в случае смерти сервера.
PostgreSQL имеет оба типа репликации - теплый резерв с использованием доставки журналов и один мастер, несколько подчиненных с использованием slony.
Только если у вас будет очень мало записей, вы можете перейти к синхронной репликации. Это также может быть установлено для PostgreSQL с использованием PgPool-II или Sequoia.
Пожалуйста, прочитайте главу Высокая доступность, Балансировка нагрузки и Репликация в документации Postgres.