TGViewer
ServerAdmin.ru ServerAdmin.ru @srv_admin · 32.6K subscribers
Post #4119 10.6K
Для мониторинга за S.M.A.R.T одиночного сервера есть простой open source проект - Scrutiny. Он состоит из сборщика метрик с помощью smartmontools, веб интерфейса для отображения данных и оповещений через различные каналы связи.

Scrutiny можно установить вручную из отдельных компонентов, но проще, конечно, запустить в Docker контейнере. Инструкция из репозитория предлагает сделать это так:

# docker run -it --rm -p 8080:8080 -p 8086:8086 \
 -v `pwd`/scrutiny:/opt/scrutiny/config \
 -v `pwd`/influxdb2:/opt/scrutiny/influxdb \
 -v /run/udev:/run/udev:ro \
 --cap-add SYS_RAWIO \
 --device=/dev/sda \
 --device=/dev/sdb \
 --name scrutiny \
 ghcr.io/analogj/scrutiny:master-omnibus

То есть мы пробрасываем диски внутрь контейнера и добавляем необходимые права, чтобы можно было увидеть SMART. Если у вас контейнеры крутятся прямо на железе, то это самый простой и быстрый вариант.

Мне захотелось настроить то же самое на гипервизоре Proxmox, где Docker ставить на хост - плохая идея. Каких-то реальных проблем может и не будет, но я обычно ничего не устанавливаю на гипервизоры. Сделал по-другому. Взял LXC контейнер, установил туда Docker (так можно). Дальше очень долго возился с тем, чтобы пробросить информацию о дисках в LXC контейнер. Это оказалась непростая задача. Сами диски вроде бы прокинул, он были видны в LXC контейнере, но smartctl так и не смог с них забрать информацию.

Хотел уже забросить эту идею, пока внимательнее не изучил репозиторий Scrutiny. У него есть API и есть сборщик метрик, который можно запустить где угодно и просто отправить метрики в веб интерфейс. Сборщик работает и в Windows.

В итоге сделал так. В указанном LXC контейнере запустил веб интерфейс:

# docker run -it --rm -p 8080:8080 -p 8086:8086 \
-v `pwd`/scrutiny:/opt/scrutiny/config \
-v `pwd`/influxdb2:/opt/scrutiny/influxdb \
--name scrutiny \
ghcr.io/analogj/scrutiny:master-omnibus

Можно идти по IP адресу сервера на порт 8080. По умолчанию нет аутентификации. Сразу всё доступно. Служба запустится с конфигурацией по умолчанию. Для того, чтобы её настроить, нужно положить файл scrutiny.yaml в директорию /scrutiny. Пример конфигурации. В ней же настраиваются уведомления. Поддерживается telegram, discord, smtp, gotify и много других каналов.

На сам гипервизор скачал бинарник - сборщик данных. Он лежит в репозитории:

# wget https://github.com/AnalogJ/scrutiny/releases/download/v0.8.1/scrutiny-collector-metrics-linux-amd64
# mv scrutiny-collector-metrics-linux-amd64 scrutiny-collector-metrics

Отправляю метрики в веб интерфейс:

# ./scrutiny-collector-metrics run --api-endpoint "http://10.20.1.64:8080"

Они сразу же отображаются там. Команду выше нужно будет поставить в планировщик (cron или systemd.timer). Часто собирать данные не обязательно, если вам не нужен подробный график температуры. Достаточно отправлять их раз в час. У сборщика есть свой конфигурационный файл, в котором можно настроить некоторые дополнительные параметры, исключить ненужные диски и т.д. Пример collector.yaml.

Мне понравилась программа. Простая, удобная, для выполнения одной задачи. Ждал от неё возможность объединить в едином интерфейсе информацию с разных серверов, но не увидел там такого. Единственный вариант - для каждого сервера запускать веб интерфейс на отдельном порту и менять этот порт в сборщике в зависимости от сервера. Но это уже так себе решение по удобству.

⇨ 4️⃣ Исходники Scrutiny

Я лично использую Zabbix для мониторинга за SMART. Настраиваю примерно так, как в статье:

⇨ Настройка мониторинга SMART жесткого диска в zabbix

Она устарела, поменялись и скрипты, и шаблоны, так как с новыми версиями Zabbix уже не работают некоторые вещи из статьи. Недавно настраивал с нуля и повозился немного. Надо бы статью обновить, но пока руки не доходят. Сам принцип остался тот же - smartmontools на хостах, скрипты для автоопределения дисков и шаблон Zabbix для парсинга вывода smartctl.

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

#железо #мониторинг
  • 👍 119
  • 👎 6
More from @srv_admin
  1. Oct 12, 2026Вот мы и вступили в новую реальность, когда стали пропадать датацентры целиком, что повлек…
  2. Oct 12, 2026💻Практический вебинар «СТРАТЕГИЯ РЕЗЕРВНОГО КОПИРОВАНИЯ» 📹 15 октября в 11:00 Мск за 90…
  3. Oct 10, 2026Когда я работал в одной небедной компании, там регулярно обновляли парк оборудования, а ст…
  4. Oct 9, 2026▶️ Очередная подборка авторских IT роликов, которые я лично посмотрел и посчитал интересны…
  5. Oct 9, 2026Астра Мониторинг впустил ИИ-агентов в системы мониторинга заказчика И приглашает вас увиде…
  6. Oct 9, 2026В пятницу расскажу про один сервис, который не имеет отношения к теме канала, но который м…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →