Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
Виталий Банковский
Как построить отказоустойчивый сервис? Можно вбух... вложить крупную сумму в супер-сервер с функцией «горячей» замены процессоров, памяти, блоков питания и т. д., а затем молиться на этот сервер. Убедившись, что молитва все-таки не помогла, перейти к кластерному решению из недорогих компонентов. Предлагаем вам начать сразу со второго варианта и построить недорогой отказоустойчивый сервис с использованием Cisco Content Switch (CCS).
Итак, для начала немного о ситуации с которой я столкнулся и которая, наверное, знакома большинству системных администраторов.
В нашей компании используются два выделенных DNS-сервера, на каждом из которых установлено два типа DNS-демонов – MyDNS (порядка 10 000 доменов и 2 000 000 записей) для обслуживания запросов, приходящих из Интернета, и DNS cache для обслуживания запросов серверов, расположенных внутри корпоративной сети.
И хотя такое решение являлось достаточно стабильным, но существовал ряд проблем:
n Отсутствие балансировки. Несмотря на то что в корневых серверах DNS зарегистрированы оба DNS-сервера, соотношение запросов к первому и ко второму DNS составляло около 90/10.
n Так как первичный сервер DNS cache был указан первым на всех серверах в файле resolv.conf, то он же и обслуживал все 100% запросов, приходящих из локальной сети (для клиентов, не поддерживающих ротацию серверов DNS в resolv.conf).
n Замедление обслуживания в случае отказа одного из серверов. Из-за того, что вся система DNS построена на протоколе UDP, клиенты вынуждены ожидать стандартное время перед обращением к следующему серверу, что вызывает сильное замедление ответов сервисов.
n В случае отказа первого сервера с DNS cache многие службы (основанные на проколах POP, FTP, SMTP), использующие обратное преобразование адреса IP в доменное имя, отвечают клиентам с большой задержкой. И это также вызывает шквал сообщений от систем мониторинга из-за превышения времени ожидания (timeout).
n Невозможность указания более трех серверов DNS для многих служб, использующих DNS, что может быть серьезным ограничением для высоконагруженных сетей.
Одно время я попытался обратиться к проекту Linux-HA (The High Availability Linux Project), но такие ограничения, как отсутствие балансировки, сложная структура при использовании более двух серверов, большое время переключения (порядка 5-7 секунд) на запасной сервер, не позволили использовать этот проект для устранения вышеописанных проблем.
После некоторого исследования был обнаружен замечательный продукт Cisco Content Switch (CCS), который позволил реализовать следующие очень важные функции:
n Балансировку нагрузки.
n Обнаружение отказа одного из серверов и исключение его из списка используемых.
n Построение «виртуального» маршрутизатора. Если установлено два и более CCS, то в случае выхода одного из них клиенты прозрачно переключаются на запасной CCS.
n Возможность использования более трех серверов DNS.
Аппаратное обеспечение
Семейство Cisco Content Switch включает в себя различные модели, начиная от простейших моделей типа Cisco CCS 11000 до высокопроизводительных Cisco CSS 11506 с полным дублированием всех подсистем (см. таблицу). В моем случае скорость потока к серверам DNS составляла порядка 10 Мбит/c, поэтому я остановился на CCS 11000.
Сравнительные характеристики различных моделей CCS
|
CCS 11000 |
WS-X6066-SLB-APC |
CSS11501 |
CSS11503 |
CSS11506 |
Производительность (Гбит/с) |
4 |
4 |
6 |
20 |
40 |
Количество портов 10/100 Ethernet |
8 |
Встраивается в шасси Cisco 6500 |
8* |
32* |
80* |
Количество портов 1000 Ethernet |
2 |
– |
2* |
6* |
12* |
Дублирование подсистем |
Нет |
Требуется два модуля |
Нет |
Нет |
Да |
Стоимость на вторичном рынке ($, US) |
300 |
13 000 |
4 000 |
6 000 |
14 000 |