Режим диагностики проверяет состояние оборудования сервера, автоматически вносит данные о нём в DCImanager, подготавливает сервер к новому использованию после его освобождения.
Подготовка сервера к диагностике
Для диагностики сервера:
- Укажите IP и MAC адреса сервера в DCImanager.
- Обеспечьте доступность сервера для диагностики с сервера, на котором установлен DCImanager.
- Настройте на сервере загрузку по сети.
- Настройте подключение сервера к распределителю питания либо к IPMI.
- Установите нужный шаблон диагностики в Настройки → Шаблоны ОС:
- Diag-x86_64 — если сервера загружаются по сети с помощью iPXE.
- Diag-x86_64-noipxe — если сервера загружаются по сети с помощью noiPXE.
- Укажите интерфейсы, на которых работает DHCP-сервер, в Настройки → Глобальные настройки → поле Интерфейсы.
Диагностика сервера
Ручной запуск
Нажмите Главное меню → Серверы → Операции.
Укажите:
- Тип операции — выберите "Провести диагностику";
- Провести диагностику — шаблон диагностики;
- Очистить диски — опция очистки жёстких дисков во время диагностики. Перезаписываются нулями первые 512 Байт жёсткого диска. Опция будет применена, только если шаблон диагностики её поддерживает;
- Полная очистка — опция полной очистки жёстких дисков. Весь жёсткий диск перезаписывается нулями. Может занять несколько часов в зависимости от размера и скорости жёстких дисков. Опция доступна только при включении опции Очистить диски;
- Уведомить об окончании — опция оповещения об окончании операции, если диагностика завершилась или была отменена пользователем.
Автоматический запуск
Диагностика запускается автоматически:
- при поиске серверов. Подробнее см. в статье Поиск серверов;
- при освобождении сервера, если включена опция Настройки → Глобальные настройки → Диагностика при освобождении. Также в Глобальные настройки см. опции автоматической диагностики: Очистить диски, Полная очистка, Шаблон диагностики. Подробнее см. в статье Глобальные настройки.
Принципы работы
Алгоритм диагностики сервера:
- Формируются значения параметров и макросов для шаблона диагностики. Подробнее см. в статье Макросы шаблонов ОС.
- В /usr/local/mgr5/var/operations/<идентификатор операции>.server_diag записываются данные об операции, включая сформированные макросы и параметры, данные для аутентификации и лог.
- Настраивается конфигурационный файл DHCP (по умолчанию /etc/dhcp/dhcpd.conf) в секции с MAC-адресом сервера. Для сервера разрешается загрузка по сети и настраиваются её опции.
- Сервер получает IP-адрес через DHCP.
- На сервер загружается шаблон диагностики.
- Запускается скрипт проверки сервера.
- На сервере устанавливается статус "Сервер имеет проблемы с оборудованием".
- Определяются:
- Модель процессора.
- Количество оперативной памяти.
- Наличие аппаратного RAID-контроллера.
- Наличие жёстких дисков (может работать некорректно, если на сервере аппаратный RAID-контроллер).
- Слоты жёстких дисков.
- Проверяется быстродействие:
- Скорость локального соединения.
- Скорость чтения и SMART-информация жёстких дисков.
- Если обнаружен IPMI, то он настраивается:
- Указываются сетевые настройки (IP-адрес, маска, шлюз).
- Добавляется пользователь и задаётся его пароль.
- Если включена опция Настройки → Глобальные настройки → Добавлять IPMI автоматически, то серверу добавляется подключение к IPMI.
- Полученные данные отправляются в DCImanager.
- Сервер выключается, если включена опция Настройки → Глобальные настройки → Отключать серверы после диагностики. Иначе сервер перезагружается в обычном режиме.
- DCImanager обрабатывает результаты диагностики:
- DCImanager проверяет соответствие платформы, указанной в DCImanager, и обнаруженного оборудования сервера:
- Количество процессоров должно быть больше нуля, но не больше, чем максимальное количество, указанное в типе платформы.
- Объём оперативной памяти должен быть больше нуля, но не больше, чем максимальный объём, указанный в типе платформы.
- Количество жёстких дисков должно быть больше нуля, но не больше, чем максимальное количество, указанное в типе платформы.
- При расхождениях DCImanager автоматически создаёт новую платформу и назначает её серверу.
- Из сервера в DCImanager извлекаются жёсткие диски. Если обнаружен аппаратный RAID-массив, то извлекаются только жёсткие диски, добавленные при предыдущей диагностике, а диски, указанные вручную, остаются. Как правило, если на сервере обнаружен аппаратный RAID-массив, то DCImanager не может получить корректную информацию по жёстким дискам.
- Для найденных жёстких дисков проверяются скорость чтения и параметры SMART. Параметры для проверки указываются в Типы оборудования → Жёсткие диски → Типы жёстких дисков.
- Проверяется скорость локального соединения.
- Если для процессора не указаны сокеты или масштабируемость в Типы оборудования → Процессоры, администратору будет предложено указать недостающие данные.
- Проверяется, нужно ли снять статус "Сервер имеет проблемы с оборудованием". Статус снимается, если выполняются все условия:
- Скорость локального соединения в пределах от <LocalSpeedThreshold*Скорость_Порта/100> до <Скорость_Порта>). LocalSpeedTreshold — параметр конфигурационного файла DCImanager (по умолчанию /usr/local/mgr5/etc/dcimgr.conf). Указывается в процентах. Если не указан, то используется значение "80%". Тогда, например, для 100Мб/с порта пороговое значение равно 80Мб/с. Скорость локального соединения в таком случае должна быть в диапазоне от 80 до 100 Мб/с.
- Отсутствует аппаратный RAID-массив.
- Параметры жёстких дисков (скорость чтения и SMART-показатели) в пределах нормы.
- DCImanager проверяет соответствие платформы, указанной в DCImanager, и обнаруженного оборудования сервера:
Для просмотра результатов последней диагностики сервера нажмите Главное меню → Серверы → Изменить и перейдите к блоку настроек Результаты диагностики.
Если диагностика на сервере прерывается, то на нём остаётся статус "Сервер имеет проблемы с оборудованием".
Чтобы снять статус после диагностики нажмите Главное меню → Серверы → Изменить и укажите обязательные поля, которые не заполнены. Например, если в ходе диагностики тип платформы сервера не был определён, то при редактировании сервера в поле Тип платформы будет значение "без платформы" и предупреждение "Для сервера не выбран тип платформы".