Когда на VPS или выделенном сервере используется Hardware RAID, мониторинг состояния дисков перестаёт быть второстепенной задачей. Один сбойный накопитель может привести к деградации массива, а если проблему вовремя не заметить — к полной потере данных. Утилита MegaCli от LSI позволяет получать полную информацию о RAID-контроллере и дисках прямо из Linux, без перезагрузки и без физического доступа к серверу.
Введение
RAID-массивы на контроллерах LSI широко применяются в дата-центрах благодаря стабильности и высокой производительности. Но у них есть особенность: обычные средства мониторинга Linux (например, smartctl) не всегда показывают корректные данные о состоянии дисков, когда они скрыты за контроллером.
Здесь и помогает MegaCli — фирменная утилита для управления и диагностики LSI MegaRAID. С её помощью можно:
- получать информацию о состоянии всех дисков и логических томов;
- отслеживать ошибки чтения и записи;
- проверять температуру и SMART-данные (через контроллер);
- выявлять предвестники деградации массива;
- интегрировать данные в систему мониторинга (Nagios, Zabbix, Icinga).
MegaCli не самая «дружелюбная» утилита: у неё сотни команд и сложный синтаксис. Но для базового мониторинга достаточно нескольких простых шагов.
Установка MegaCli в Linux
1. Загрузка пакета
Ранее LSI предоставляла утилиту напрямую на своём сайте, но сейчас её поддержкой занимается Broadcom. Найти MegaCli можно в разделе MegaRAID Utilities. Обычно пакет доступен в архиве с версиями под разные системы.
Пример загрузки в Linux:
cd /tmp
wget https://пример-зеркала/MegaCli-8.07.14-Linux.zip
URL указан условно — лучше скачивать с официального сайта Broadcom или из проверенных репозиториев.
2. Установка пакета
Распакуйте архив:
unzip MegaCli-8.07.*.zip
Перейдите в каталог Linux и установите пакет:
cd Linux/
rpm -ihv MegaCli-8.07.14-1.noarch.rpm
Если используется Debian/Ubuntu, можно конвертировать пакет с помощью alien:
alien -i MegaCli-8.07.14-1.noarch.rpm
3. Создание симлинка для удобства
По умолчанию MegaCli ставится в каталог:
/opt/MegaRAID/MegaCli/
Чтобы вызывать её одной командой, создайте ссылку:
ln -s /opt/MegaRAID/MegaCli/MegaCli64 /usr/bin/megacli
Теперь утилита доступна как megacli.
Основные команды MegaCli
Несмотря на множество опций, для базового мониторинга хватает нескольких ключевых команд.
Информация о RAID-контроллере
megacli -AdpAllInfo -aAll
Показывает полные сведения о контроллере: модель, версия прошивки, количество портов и т. д.
Информация о логических дисках (массиве)
megacli -LDInfo -Lall -aAll
Выводит состояние всех логических дисков: уровень RAID, размер, состояние (Optimal, Degraded, Offline).
Список физических дисков
Отображает полный список дисков, их модель, серийный номер, температуру, состояние и количество ошибок:
megacli -PDList -aAll
Чтобы сделать вывод более удобным, можно отфильтровать только важные параметры:
megacli -PDList -aAll | egrep "Enclosure Device ID:|Slot Number:|Inquiry Data:|Error Count:|State"
Так вы сразу увидите, какой диск и в каком состоянии находится.
Проверка SMART-атрибутов
На некоторых версиях прошивок доступна команда:
megacli -AdpAllInfo -aAll | grep 'S.M.A.R.T'
Если поддержка SMART включена, можно отслеживать ошибки напрямую через контроллер.
Автоматизация и мониторинг
Постоянно выполнять команды вручную неудобно, особенно когда речь идёт о десятках серверов. Для этого используют интеграцию с системами мониторинга.
Пример с Nagios
Можно подключить готовый плагин для Nagios, который будет периодически выполнять megacli и отправлять уведомления при изменении состояния массива или появлении ошибок на дисках.
Варианты готовых скриптов доступны на GitHub или специализированных ресурсах.
Альтернатива — Zabbix или Icinga
Zabbix-агенты также могут собирать данные через megacli
с помощью пользовательских скриптов. Это позволяет в реальном времени видеть состояние дисков и получать оповещения на почту или в мессенджер.
Практическое применение для VPS и выделенных серверов
- Виртуализация. Даже если у вас VPS, созданный на железных серверах с RAID, хостер использует MegaCli для мониторинга. Это позволяет заранее заменять диски до того, как клиенты столкнутся с потерей данных.
- Собственный сервер. Если вы арендуете выделенный сервер с LSI RAID-контроллером, установка MegaCli даст полный контроль: вы сможете сами отслеживать состояние массива, а не ждать уведомления от поддержки.
- Критичные проекты. Для баз данных, интернет-магазинов или корпоративных сервисов такие проверки обязательны — сбой одного диска без мониторинга может остаться незамеченным до катастрофы.
Заключение
MegaCli — мощная, хотя и непростая в освоении утилита. Для базового администрирования достаточно нескольких команд, которые позволяют проверить состояние массива и дисков. Но при интеграции с Nagios или Zabbix MegaCli превращается в полноценный инструмент мониторинга, который может спасти ваш проект от серьёзных проблем.
Регулярная проверка Hardware RAID через MegaCli — это не формальность, а залог стабильной работы и сохранности данных. Потратьте время на установку и настройку сейчас, и вы избежите больших проблем в будущем.
Читайте в блоге:
- Автоматическая настройка VPS-сервера на Ubuntu 24.04 с помощью Cloud-init
- Топ-10 команд для админа Ubuntu 24.04, без которых не обойтись
- Настройка ZRAM в Ubuntu 24.04 LTS на VPS