Батарея ИБП умерла тихо: как узнать об этом до отключения света
ИБП стоит в серверной, но его батарея давно мертва - и никто не знает. Разбираем случай из практики и рассказываем, как настроить мониторинг и зачем проверять батарею раз в год.
ИБП - стандартное оборудование серверных
ИБП у клиента стоял. Красивый, с дисплеем, с кабелем в сервер - всё как положено. Купили года полтора назад, поставили, успокоились. Мы сами рекомендовали брать именно такую модель - с управляющим портом, чтобы при долгом отключении сервер сам корректно завершал работу.
В июне в том районе отключили свет на пару часов - плановые работы, предупредили заранее. Клиент позвонил уже после: сервер упал сразу. Не завершился корректно, просто вырубился. На дисплее ИБП перед этим было всё зелёное.
Приехали, разобрались. Батарея была мертва. Совсем. При переходе на батарею ИБП держал нагрузку примерно двадцать секунд, потом уходил в защиту. Сервер падал жёстко. Всё это время индикаторы на панели исправно показывали «батарея заряжена» - потому что ИБП измерял напряжение на заряженной батарее в покое, а не реальную ёмкость под нагрузкой.
Почему батарея деградирует незаметно. Свинцово-кислотные аккумуляторы в ИБП - расходник. Производитель честно пишет срок службы: три-пять лет в нормальных условиях, меньше если жарко или батарею часто разряжали в ноль. Деградация идёт постепенно: сначала ёмкость падает до 80%, потом до 50%, потом батарея ещё держит заряд в покое, но под нагрузкой отдаёт его за минуты, а не за пятнадцать. Сам ИБП об этом не сигнализирует, пока не достигнет какого-то критического порога - у большинства бюджетных моделей этот порог очень низкий.
Получается: батарея была жива по меркам ИБП, но бесполезна для защиты сервера.
Что надо было сделать раньше. Почти все нормальные ИБП умеют проводить самодиагностику батареи - не просто замерять напряжение, а прогонять нагрузочный тест. Для APC это команда через утилиту apcupsd или прямо с панели. Суть: ИБП кратковременно переходит на батарею и замеряет, как быстро падает напряжение под реальной нагрузкой. По этому графику можно судить об остаточной ёмкости.
Делать это нужно раз в год - хотя бы. Лучше раз в полгода, если ИБП стоит в тёплом помещении.
Как настроить мониторинг батареи. Если ИБП подключён к серверу кабелем и стоит apcupsd (или аналог под Windows - PowerChute от APC), то данные о состоянии батареи доступны программно. Несколько параметров, на которые надо смотреть:
- BCHARGE - текущий заряд батареи в процентах. Если падает ниже 50% и долго не восстанавливается - повод насторожиться.
- TIMELEFT - расчётное время работы от батареи при текущей нагрузке. Это уже с учётом ёмкости, и это полезнее, чем просто проценты.
- BATTV - напряжение на батарее. В покое у заряженной батареи должно быть около 13.5-13.8 В (для 12-вольтовой). Если в покое ниже 12 - батарея плохая.
- LASTXFER - причина последнего перехода на батарею. Если там регулярно появляются записи «LOW LINE VOLTAGE» или «BLACKOUT» без вашего ведома - значит, свет моргает, и вы об этом не знаете.
Все эти параметры можно писать в лог и периодически проверять. Мы делаем простой скрипт на cron, который раз в час дёргает apcaccess, парсит TIMELEFT и пишет в файл. Если значение падает ниже десяти минут при нормальной нагрузке - письмо на почту.
Нагрузочный тест руками. Кроме автоматики есть простой ручной способ, который мы теперь делаем при каждом плановом визите: дёргаем вилку ИБП из розетки и замеряем секундомером, сколько сервер работает от батареи. Не до выключения - просто пять минут, потом втыкаем обратно. Если за пять минут напряжение на батарее упало ниже критической отметки или ИБП уже пискит об исчерпании - батарею менять.
Выглядит грубо, но это честнее любой автодиагностики. ИБП под нагрузкой ведёт себя иначе, чем в режиме ожидания, и только живой тест показывает реальную картину.
Что с файлами после жёсткого падения. В нашем случае повезло: файловая система поднялась с fsck, данные в порядке. Но это дело случая - зависит от того, что писалось в момент отключения. Если база данных или почтовый сервер в этот момент работали с транзакцией, последствия могут быть серьёзнее. Мы писали про это в контексте грязного питания вообще - там та же механика, просто причина другая.
Сколько стоит замена батареи. Батарея для типичного офисного ИБП на 500-1000 ВА - это один-два аккумулятора формата 7 Ач или 12 Ач. Стоят недорого, меняются за пятнадцать минут без инструментов. Сам ИБП при этом остаётся, менять его не нужно. Запланировать замену батареи раз в три года - это обычная строчка в регламенте обслуживания, без ЧП и звонков клиенту в пятницу вечером.
Урок простой: ИБП без проверки батареи - это корпус с лампочками. Проверять надо, и это занимает меньше часа в год.
- ИБП и грязное питание: почему сервер живёт на честном слове · 12 сентября 2000