COMAR - Computer Art Technology
На главную


Руководство

Установка

Конфиг. файл

Принципиальная схема

Лицензия

FAQ


Статьи

Ссылки

 

 

Опрос
Откуда узнали о нас
Журнал "СисАдмин"
Журнал "Хакер"
Журнал "Компьютерра"
Портал "OpenNET"
Поисковик
От знакомых
Другие источники

 computer art программные и аппаратные разработки
icq 283175359 8-499-502-02-99 
 

Статьи

Повышение отказоустойчивости сервера

Б
изнес многих компаний связан с устойчивой работой серверов, на которых работают критичные приложения. В таких компаниях простои в работе сервера обходятся в конкретные деньги, и часто не маленькие.

Как бы тщательно не были настроены сервера, есть шанс, что что-то пойдет не так, и сервер перестанет нормально работать. Чтобы от этого защититься, нужно, чтобы кто-то дежурил у сервера. Хорошо настроенные сервера позволяют управлять ими удаленно. Но в ряде ситуаций сервер не откликается и на управляющие команды.

Если сервера настроены достаточно хорошо, то вероятность подобных сбоев достаточно мала. Ну скажем, один на месяц. И держать дежурных, да еще круглосуточно, вряд ли оправданно. Кроме того, сервер может стоять в таком месте, где постоянное дежурство вообще невозможно (например, на чердаке здания).

Тут на сцену и выходит устройство под названием WatchDog, что буквально переводится как "сторожевая собака". Этот программно-аппаратный комплекс следит за работой сервера, и, когда возникает необходимость, - вмешивается. WatchDog делает то, что в большинстве случаев сделал бы дежурный: отслеживает состояние сервера и, когда тот перестает нормально работать, пытается его перезапустить. Сначала мягко и цивилизованно, программным путем. А если не выходит, то грубо, путем прерывания подачи питания на несколько секунд, и если нужно, нажатием кнопок "Power" и "Reset".

Причем чтобы все это было применимо к реальным условиям, WatchDog должен учитывать массу нюансов. Есть много ситуаций, когда примитивный WatchDog может сам стать проблемой. Например, постоянно перезапуская сервер, который никак не загружается, в то время как должен быть какой-то (и, разумеется, настраиваемый) предел для таких попыток.

Наше устройство учитывает все необходимые нюансы. Для того, чтобы это было возможно, оно построено с использованием микроконтроллера (т.е. оно по сути само представляет из себя компьютер, только более простой и надежный). Именно поэтому само аппаратное устройство используется в комплекте с программным обеспечением, работающим на сервере. И все это (и аппаратное устройство, и программное обеспечение) гибко настраивается.

Данное устройcтво делает все, что только можно, для восстановления работоспособности сервера без присутствия человека. Причем, когда до сервера добирается человек, у него есть вся информация о том, что наблюдал и делал WatchDog (для этого устройство сохраняет все данные в энергонезависимую память).

Правильным подходом будет:

  • Купить хорошие сервера.
  • Хорошо настроить сервера.
  • Нанять хорошего специалиста для их обслуживания.
  • И подстраховать этого специалиста WatchDog-ом.

Если в каком-то из пунктов слабина, то WatchDog становится еще более актуальным.

Зачем WatchDog-у быть таким сложным и дорогим?

Э
то можно понять, ответив на некоторые вопросы, которые нам задавали покупатели.

****
А что будет, если с сервером что-то случилось, и во время перезагрузки, устроенной WatchDog-ом, он снова повиснет. И будет делать так каждый раз, в ответ на каждый перезапуск его WatchDog-ом.

Понятно, что это проблема такая, что решить ее может только человек, но что будет с сервером после, например, двух суток перезагрузок через каждые 5 мин. Возможно, WatchDog сам станет проблемой, причем более серьезной, чем та, что он решал.

****
А что будет, если программа на сервере, сигнализирующая WatchDog-у, работает, а все остальное, - нет. Ситуация-то обычная: сервер, который, например, откликается на ping и, тем не менее, практически мертвый, - обычное дело. В таком случае WatchDog будет думать, что с сервером все в порядке. Нельзя ли проверять как-то работоспособность сервера, а не просто судить об этом по тому, откликается программа или нет.

****
А можно ли, придя на работу в понедельник, получить протокол действий WatchDog-а. Например, я вижу по логам на сервере, что он был в дауне несколько часов. Но я не знаю, почему. Могу я узнать, пытался ли WatchDog его запускать, и кто в конце концов его завел? В общем, хочется знать, что делал WatchDog, пока меня не было. Разумеется, с указанием времени. Да, и кстати, время будет правильным после временного отключения света?

****
А что будет, если серверная программа, взаимодействующая с WatchDog-ом, вызовет какую-то динамическую библиотеку, а она не сможет подгрузиться? Ведь не известно, что будет с сервером в такой момент.

****
А что будет, если сервер после перегрузки его WatchDog-ом на проверке диска, выдаст сообщение, что есть серьезные ошибки и подайте ему админа человека. WatchDog так и будет перезапускать его как идиот, добивая и без того сбойный диск?

****
А нельзя ли сделать, что после какого-то количества неуспешных перезапусков пауза между попытками перезапуска была больше? Это, возможно, снизит лишние перезапуски и не так задергает сервер.

****
А всю эту навороченную автоматику можно отключать, если надо? А то часто автоматика становится вредной и опасной, если администратор не может вмешаться в логику ее работы.

****
А серверная программа пишет все, что происходит в логи? И можно ли менять детализацию логов?

****
А у меня ATX-корпус, который ни в какую не заводится после прерывания питания. Ваш WatchDog может нажать кнопку "Power"?

****
А ваш WatchDog перезапускает сервер, отключая у него питание на время? А можно сделать, чтобы он мог "Reset" вместо этого нажимать?

****
А ваш WatchDog перезапускает сервер, нажимая "Reset"? А ведь это бывает не помогает, сам видел комп, переклинненый так, что помогло только полное выключение питания.

****
А можно по внешнему виду WatchDog-а понять, что сейчас происходит. Есть какая-то индикация?

****
Все-таки боязно как-то применять такие крутые меры автоматически, нет ли каких-то подводных камней?

Проблемы, затронутые во всех вопросах, кроме последнего, - нами решены. Над последней проблемой мы постоянно работаем.


ВОПРОСЫ, КОТОРЫЕ НАМ НЕ ЗАДАВАЛИ НИ РАЗУ:

А ваше устройство достаточно маленькое, чтобы его можно было носить в кармане?

А нет ли разных цветовых вариантов исполнения?

А нельзя ли сделать совсем простое и тупое устройство? Пусть оно будет опасно для сервера, но нам нужно дешевле.

На все эти вопросы мы может твердо ответить, - нет.
 


Тел: 8-499-502-02-99 (г. Москва), email: info@comar.ru, icq: 283175359.


Rambler's Top100