Как работает watchdog в NetApp

Любая сложная электронная система подвержена аппаратным сбоям и ошибкам в ПО. Для того, чтобы предотвратить ее фатальное “зависание”, традиционно используется метод, под названием watchdog, или “сторожевой таймер”. Это аппаратное устройство, которое непрерывно “сбрасывается” в ходе нормальной работы устройства, а в случае его зависания, в свою очередь, сбрасывается им, либо выполняются какие-то специальные действия по немаскируемому прерыванию.

Таким устройством оснащен и NetApp. Его встроенный watchdog непрерывно мониторит состояние системной платы, памяти и карт ввода-вывода. Каждые 10ms Data ONTAP сбрасывает го таймер. Если таймер не сброшен в течение 1,5 секунд, то отдается команда Level 1, по которой формируется прерывание высокого приоритета, и начинается операция core dump. Если и на перывание Level 1 не получено реакции, то через полсекунды инициируется hard reset и перезагрузка системы. В случае перезагузки по Level 2 core dump уже не создается, так как перезагрузка происходит “жестко”.

В случае, если ваш контроллер оснащен RLM или BMC, то эти события регистрируются, и отсылается сообщение Autosupport.

Отмечу, что даже в случае “жесткой перезагрузки”, если часть данных, поступивших в систему на момент зависания еще не была занесена на диски (например, зависание системы произошло в интервал между сбросом одной consistency point в WAFL и другой, или в момент такого сброса), они останутся в памяти NVRAM, и будут перенесены на диски после рестарта, при переходе системы в нормальное состояние. Таким образом, даже “жесткая” перезагрузка не приводит к повреждению файловой системы дисков (пока сохранятся состояние NVRAM, в случае полностью заряженой батареи это примерно неделя).

Пример сообщения о срабатывании watchdog (из логов RLM):

Sat Feb 20 14:51:49 MST [slcsdcna02: mgr.boot.reason_abnormal:ALERT]: System
rebooted due to a watchdog reset.
System Alert from RLM of slcsdcna02 (REBOOT (watchdog reset)) CRITICAL
Record 600: Sun Oct 18 13:02:50 2009 [Agent Event.warning]: FIFO 0×8FFF - Agent
DrWho, L1_WD_TIMEOUT asserted.

Оставить комментарий

20/0.131

Данный блог не спонсируется, не аффилирован, и не санкционирован компанией NetApp, Inc. Излагаемая в этом блоге точка зрения выражает мнение исключительно его автора и может не совпадать с позицией NetApp, Inc.

This content is not endorsed, sponsored or affiliated with NetApp, Inc. The views expressed in this blog are solely those of the author and do not represent the views of NetApp, Inc.