программно-аппаратный комплекс Watchdog

Watchdog позволяет повысить отказоустойчивость сервера. Это устройство следит сервером и перезапускает его в случае отклонения от нормальной работы или в случае полного зависания.

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

Вот примеры некоторых ситуаций, которые могут потребовать перезапуска сервера:

- Cбой или помеха по питанию. Вероятность такого сбоя можно резко снизить, запитав компьютер через хороший UPS. Но проблема устраняется не полностью.

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

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

- Неудачная попытка удаленно перенастроить сервер. Например, длинная (возможно, неопределенно длинная) задержка во время перезагрузки. - Некоторые компьютеры с блоком питания типа ATX имеют тенденцию иногда не включаться с первого раза, особенно после сбоя питания. Watchdog тут вполне заменяет человека, нажимая кнопку power (для этого через RS-232 кабель выведена пара проводов) и делая повторные попытки, если с первого раза компьютер не завелся.

Watchdog во многих подобных случаях решает проблему. Человек может придти утром, увидеть, что сервер перезапускался Watchdog-ом (Watchdog ведет протокол всех событий), и разобраться, в чем было дело.

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

варианты аппаратного исполнения

Аппаратное устройство Watchdog существует в двух исполнениях - Watchdog Lite (рис. 1) и Watchdog Pro (рис. 2) и.
Оба варианта работают с одним и тем же серверным ПО. Вы можете в любой момент заменить Watchdog Pro на Watchdog Lite или наоборот, и просто перезапустить серверное ПО.


Рис. 1. Watchdog Lite.

Рис. 2. Watchdog Pro.

За некоторыми исключениями (перечисленными ниже) они имеют одинаковую функциональность.

Watchdog Pro:
- полноразмерный корпус (чуть больше обычного модема);
- встроенный блок питания (независимость от блока питания сервера в ряде случаев повышает надежность);
- способен перезапускать сервер не только нажатием reset, но и прерыванием электропитания (как ни странно, бывают случаи, когда кнопки reset недостаточно);
- имеет выключатели для отключения сервера и самого себя (при этом Watchdog работает как простая розетка).

Watchdog Lite:
- настолько мал, что просто одевается на разъем COM-порта;
- электропитание от блока питания сервера;
- может перезапускать сервер только нажатием reset;
- не имеет выключателей;
- имеет меньший объем энергонезависимой памяти для хранения логов событий.

архитектура

Watchdog следит за работоспособностью сервера. Разумеется, это может быть и не сервер, а просто рабочий компьютер. Однако для краткости назовем его просто сервер.

Аппаратно-программный комплекс Watchdog состоит из аппаратного устройства Watchdog (в дальнейшем также называемым просто Watchdog) и серверного программного обеспечения (далее просто "серверное ПО"). Часть функциональности реализуется в Watchdog, часть - в серверном ПО.
Главная компонента серверного ПО - watchdogd. Эта программа постоянно работает на сервере и общается с устройством через COM-порт. В Windows подобные программы называют сервисы или службы (service), в *nix - демонами (daemon). Собственно, это и есть серверная часть комплекса, остальные программы, входящие в поставку, - вспомогательные.

Вот краткое описание того, как распределяются функции.

Аппаратное устройство Watchdog:
- наблюдает за сервером и перезапускает его тогда, когда watchdogd уже не может перезагрузить его программно;
- заранее настраивается на всевозможные ситуации. Настройки хранятся в энергонезависимой памяти и записываются туда серверным ПО, которое, в свою очередь, читает их из конфигурационного файла;
- протоколирует (с указанием времени) все свои действия, а также важную информацию о происходящем, полученную от watchdogd, в энергонезависимую память;
- отслеживает время по внутренним часам (с отдельным питанием от батарейки). Время постоянно синхронизируется по серверу;
- имеет световую индикацию, позволяющую быстро понять, в каком состоянии сейчас находится устройство и сервер.

Серверное программное обеспечение:
- сообщает Watchdog-у необходимую информацию о состоянии сервера;
- автоматически управляет Watchdog-ом, посылая ему соответствующие команды;
- при запуске получает у Watchdog-а протокол событий из энергонезависимой памяти и записывает его в лог-файл;
- позволяет человеку явно управлять как устройством, так и демоном. Как локально, так и удаленно (через telnet и ssh);
- позволяет протестировать Watchdog вручную, посылая ему различные команды и отслеживая ответы.



По материалам производителя – компании Comar Technology.


Сетевые решения. Статья была опубликована в номере 11 за 2005 год в рубрике hardware

©1999-2024 Сетевые решения