Scrutiny - мониторинг дисков компьютера(ов)
Если кратко: это сервис для мониторинга HDD / SSD дисков (SMART) и отображения их состояния на одной веб странице. Причем, собирать информацию о состоянии дисков можно с нескольких компьютеров (серверов).
Сервис хранит историю изменения параметров HDD/SSD в сервере и позволяет настраивать диапазоны изменения характеристик, используя базу данных неисправностей HDD. То есть, с его помощью можно предсказывать выход из строя накопителей и оперативно их заменять.
Поддерживает ОС windows и Linux
Веб составляющая с базой данных разворачивается в docker.
Мой docker compose выглядит так:
version: '2.4' services: influxdb: image: influxdb:2.2 ports: - 8086:8086 volumes: - influxdb:/var/lib/influxdb2 healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8086/health"] interval: 5s timeout: 10s retries: 20 web: image: 'ghcr.io/analogj/scrutiny:master-web' ports: - 8881:8080 volumes: - scrutinyconfig:/opt/scrutiny/config environment: SCRUTINY_WEB_INFLUXDB_HOST: 'influxdb' depends_on: influxdb: condition: service_healthy healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8080/api/health"] interval: 5s timeout: 10s retries: 20 start_period: 10s volumes: scrutinyconfig: {} influxdb: {}
docker-compose.yml разворачивает в докере веб интерфейс и базу данных для хранения данных о дисках.
Веб интерфейс будет доступен на порту 8881
Далее, я скачиваю и запускаю агента по мониторингу дисков на каждом компьютере:
Последнюю версию агента я беру на официальном гитхабе проекта в релизах:
https://github.com/AnalogJ/scrutiny/releases
Я скачиваю scrutiny-collector-metrics-windows-amd64.exe для Windows
и scrutiny-collector-metrics-linux-amd64 для линукс (ubuntu, debian)
для запуска агента использую вот такую команду:
scrutiny-collector-metrics-linux-amd64 run --api-endpoint "http://192.168.1.133:8881" --host-id amd
scrutiny-collector-metrics-linux-amd64 - путь до исполняемого файла. В ОС линукс, файл я положил в /opt/scrutiny/bin/
и полный путь будет выглядеть вот так:
/opt/scrutiny/bin/scrutiny-collector-metrics-linux-amd64
--api-endpoint "http://192.168.1.133:8881" - это адрес веб сервиса. У меня веб сервис развернут на машине с айпи адресом 192.168.1.133
--host-id amd - метка. придумана мной. amd это мини компьютер с умным домом.
При запуске, агент выдаст информацию:
А на веб странице появится информация:
Для эффективного мониторинга требуется периодический запуск.
В линуксе, скрипт запуска добавляем в crontab:
0 */1 * * * /opt/scrutiny/bin/scrutiny-collector-metrics-linux-amd64 run --api-endpoint "http://192.168.1.133:8881" --host-id amd
В Windows, скрипт запуска добавляем в Планировщик заданий
Ссылка на github проета: https://github.com/AnalogJ/scrutiny