2016-09-02 4 views
0

Я хотел бы иметь возможность настроить postgres для прослушивания определенных интерфейсов, а не «*», но один из них - виртуальный IP (VIP).Могу ли я настроить postgres для прослушивания по VIP?

Если я настраиваю listen_addresses в postgresql.conf с IP-адресами интерфейсов, он работает правильно, за исключением того, что VIP-postgres фактически не прослушивает VIP.

Однако, если я настраиваю listen_addresses для прослушивания на '*', тогда, когда VIP становится активным на локальном компьютере, postgres выбирает его и слушает на этом интерфейсе, как ожидалось.

Есть ли какой-то вариант, который я пропускаю, может быть?

Спасибо!

+0

Что значит «виртуальный IP»? Если виртуальный IP-адрес при запуске службы postgresql? – redneb

+2

Предполагая, что это Linux, вам может потребоваться установить «net.ipv4.ip_nonlocal_bind», поэтому PostgreSQL может привязываться к VIP, независимо от того, активен он при запуске. – mwp

+0

@redneb, нет, VIP не работает, когда начинается postgres. У нас есть еще один процесс, который управляет VIP-персонами, и он присваивает VIP только когда postgres работает и активен! – Jamie

ответ

2

Кодификация мой (видимо, полезный) ответ из комментариев:

Предполагая, что это Linux, вам, возможно, потребуется установить net.ipv4.ip_nonlocal_bind так PostgreSQL может связываться с VIP ли это или нет активной при запуске.

+0

Дополнительную информацию см. Здесь: https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Load_Balancer_Administration/s1-initial-setup-forwarding-VSA.html – Jamie

Смежные вопросы