URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 96721
[ Назад ]

Исходное сообщение
"DNS Server. A-Record Failover"

Отправлено AleksandrG , 02-Ноя-16 17:32 
Коллеги, сталкивался ли кто-либо с такой задачей.

- DNS сервер должен иметь скажем две "А" записи и отдавать их только тогда, когда соответствующий хост в состоянии UP.

Пример:

http.domain.com IN A 192.168.1.111
                IN A 192.168.1.222

DNS осуществляет health-check первого сервера и если он "down", то возвращает только 2-й. Соответственно когда первый сервер (192.168.1.111) поднимается, он начинает возвращать его.

Что-то подобное сделал amazon в своем AWS Route53.

Кто-то смог решить подобную задачу? Как вы добились такого failover с healtcheck?

p.s. желательно иметь решение на opensource продукте, типа bind или powerdns...


Содержание

Сообщения в этом обсуждении
"DNS Server. A-Record Failover"
Отправлено stalker37 , 03-Ноя-16 00:25 
Проверять доступность хоста и если что править базу powerdns/Файлы конфигурации bind

1 проще реализовать


"DNS Server. A-Record Failover"
Отправлено Pahanivo , 03-Ноя-16 08:17 
> Проверять доступность хоста и если что править базу powerdns/Файлы конфигурации bind
> 1 проще реализовать

подобный вопрос ранее поднимался тут, варианты собственно эти и есть
а как проверять доступность, это уже вопрос к владельцу сервиса - пинговать к примеру или пробить конкретный сервис.
Ну и про TTL не забыть ...


"DNS Server. A-Record Failover"
Отправлено eRIC , 03-Ноя-16 11:02 
Virtual IP (haproxy)
       |
       |
       |
--------------------
|      |         |
|      |         |
DNS1   DNS2      DNS3

haproxy умеет health check делать. можно ферму из haproxy создать на DNS сервера и тогда можете на уровне haproxy управлять что, куда и когда отдавать.


"DNS Server. A-Record Failover"
Отправлено ALex_hha , 03-Ноя-16 12:11 
>[оверквотинг удален]
>        |
>  --------------------
>  |      |    
>     |
>  |      |    
>     |
> DNS1   DNS2      DNS3
> haproxy умеет health check делать. можно ферму из haproxy создать на DNS
> сервера и тогда можете на уровне haproxy управлять что, куда и
> когда отдавать.

тогда haproxy получается SPOF


"DNS Server. A-Record Failover"
Отправлено mcduck , 03-Ноя-16 12:21 
> тогда haproxy получается SPOF

Тогда проще VirtualIP (и keepalived) поставить непосредственно на сервера, а в DNS прописать _один_ IP (тот самый virtual).


"DNS Server. A-Record Failover"
Отправлено _ , 03-Ноя-16 17:12 
> тогда haproxy получается SPOF

Они в HA кластер собираются довольно просто. Примеров в сети как грязи.


"DNS Server. A-Record Failover"
Отправлено ALex_hha , 04-Ноя-16 12:42 
>> тогда haproxy получается SPOF
> Они в HA кластер собираются довольно просто. Примеров в сети как грязи.

тогда проще R53 юзать и не выдумывать велосипеды


"DNS Server. A-Record Failover"
Отправлено _ , 04-Ноя-16 17:20 
> тогда проще R53 юзать и не выдумывать велосипеды

Сильно зависит от. Но таки да - некоторые сценарии он хорошо так упрощает.

А балансировщики в кластере - это настолько обыденно, что ... спросите любого приличного сиськ**ба, раз мне не верите :)