Home » glances vs nmon: какой инструмент мониторинга выбрать?
glances vs nmon: какой инструмент мониторинга выбрать?

glances vs nmon: какой инструмент мониторинга выбрать?

Погнали разбираться: Glances или nmon? Если ты когда-нибудь настраивал сервер (будь то свой домашний мини-серверок на Raspberry Pi или жирный выделенный монстр в датацентре), то мониторинг — штука жизненно необходимая. Без него — как слепой водитель на автобане: что-то происходит, но ты не знаешь, когда тебя догонит фатальный OOM или процессор уйдёт в астрал под нагрузкой. В этой статье я расскажу, чем отличаются Glances и nmon, как их быстро прикрутить к своему серверу, какие у них плюсы и минусы, где они реально спасают, а где лучше поискать что-то другое. В конце — лайфхаки, советы, и даже немного магии автоматизации.

Зачем вообще нужен мониторинг, и почему выбор между Glances и nmon — не праздный вопрос?

Когда ты запускаешь сервер — неважно, VPS, облако, Docker-контейнер или выделенный железный агрегат (кстати, VPS или dedicated можно взять тут) — у тебя всегда есть два вопроса:

  • Что происходит с ресурсами прямо сейчас?
  • Что происходило, когда всё стало плохо?

Для ответа на эти вопросы и нужны мониторинговые тулзы. Glances и nmon — это консольные утилиты, которые дают тебе в реальном времени инфу о состоянии системы: CPU, память, диски, сеть, процессы и т.д. Но делают они это по-разному, и для разных задач подходят по-разному. Давай нырять в детали!

Как это работает? Алгоритмы, структура и философия

Glances: Python-магия и модульность

Glances написан на Python, и это сразу многое объясняет. Он кроссплатформенный, поддерживает кучу плагинов, умеет работать как в интерактивном режиме (прямо в терминале), так и по сети (клиент-сервер), и даже отдавать данные через REST API. Архитектура модульная: каждый тип метрик (CPU, память, сеть, диски, процессы, Docker-контейнеры, сенсоры и т.д.) — отдельный плагин. Можно расширять, кастомизировать, интегрировать с внешними системами (InfluxDB, Prometheus, MQTT, Slack — что угодно).

  • Пишешь на Python? Можешь допилить свои плагины.
  • Нужна интеграция с внешними системами? Легко.
  • Хочешь мониторить несколько серверов через браузер? Можно.

В основе — сбор данных через стандартные системные интерфейсы (psutil, sensors, netstat, и пр.), плюс своя логика агрегации и отображения.

nmon: брутальный C-стиль и эффективность

nmon (Nigel’s Monitor) — написан на C, компактен, быстр, минималистичен. Разрабатывался для IBM AIX, но давно портирован на Linux. Его фишка — максимально низкое потребление ресурсов и простота. Вся инфа выводится в терминал, можно сохранять логи для последующего анализа (например, через графический nmon-analyzer в Excel, если ты любишь страдать).

  • Нет лишних зависимостей.
  • Работает даже на дохлом железе.
  • Лог-файлы для истории — must have.

Архитектура простая: опрашивает системные файлы и команды (procfs, sysfs, iostat, vmstat и т.д.), выводит всё в текстовом виде, либо пишет в CSV-лог.

Как быстро и просто всё настроить? Примеры и практические советы

Установка Glances

Glances ставится элементарно. Если у тебя есть Python (а он есть почти везде):


pip install glances

Или через пакетный менеджер:


# Для Ubuntu/Debian
sudo apt install glances

# Для CentOS/RHEL
sudo yum install glances

Запуск:


glances

Хочешь мониторить удалённо? Запусти в серверном режиме:


glances -s

Подключись с другого компа:


glances -c IP_сервера

Всё, мониторинг работает!

Установка nmon


# Для Ubuntu/Debian
sudo apt install nmon

# Для CentOS/RHEL (через EPEL)
sudo yum install epel-release
sudo yum install nmon

Запуск:


nmon

Появляется псевдографическое меню, где клавишами включаешь/выключаешь нужные метрики (CPU — c, память — m, диски — d и т.д.).

Для записи логов:


nmon -f -s 10 -c 360

Где -f — файл, -s 10 — снимать данные каждые 10 секунд, -c 360 — 360 замеров (то есть 1 час).

Docker-режим (для фанатов контейнеров)

Glances отлично бежит в Docker:


docker run --rm -it \
-p 61208:61208 \
--pid host \
docker.io/nicolargo/glances

nmon в контейнере — редкая экзотика, но можно собрать свой Dockerfile.

Таблица сравнения: Glances vs nmon

Параметр Glances nmon
Язык Python C
Платформы Linux, Windows, macOS, FreeBSD, Docker Linux, AIX
Интерфейс CLI, Web, API, клиент-сервер CLI (только терминал)
Интеграция InfluxDB, Prometheus, Slack, MQTT и др. CSV-лог, nmon-analyzer (Excel)
Расширяемость Плагины, кастомизация Нет
Потребление ресурсов Среднее (Python) Минимальное
Установка pip, apt, yum, docker apt, yum
Мониторинг Docker Да Нет (только host)
Мультисервер Да (клиент-сервер) Нет
Логи для истории Да (JSON, CSV, InfluxDB и др.) Да (CSV, для nmon-analyzer)
Документация glances.readthedocs.io nmon.sourceforge.net

Примеры, кейсы, плюсы и минусы

Glances в действии

  • Плюсы: Можно быстро глянуть, что происходит на сервере, прямо из браузера. Есть REST API — интегрируется с любыми скриптами. Можно мониторить кластеры, контейнеры, даже Raspberry Pi.
  • Кейс: Настроил алерты через Glances + Slack: если память забита — сразу в чат прилетает сообщение. Спасло от падения продакшна.
  • Минусы: Если сервер слабый или Python не стоит — Glances может не завестись или жрать лишние ресурсы.

nmon в действии

  • Плюсы: Работает даже на древнем железе, не требует ничего лишнего. Очень удобен для сбора статистики в CSV — потом можно анализировать в Excel, строить графики, искать узкие места.
  • Кейс: На одном старом VPS nmon показал, что диск умирает (IOPS в ноль), хотя top и htop ничего не показывали. Своевременно мигрировал сервис.
  • Минусы: Нет web-интерфейса, нет API, нет интеграции с современными системами мониторинга. Если хочется алертов — нужно городить костыли.

Ошибки новичков и мифы

  • Миф: Glances сильно грузит сервер.
    Факт: Если не включать web-интерфейс и не собирать метрики каждую секунду — потребление минимальное для Python-приложения.
  • Миф: nmon устарел и не нужен.
    Факт: На голых серверах без Docker и облаков — это всё ещё один из лучших инструментов для быстрой диагностики.
  • Ошибка: Не сохранять логи nmon.
    Рекомендация: Всегда запускай nmon с параметрами -f -s 10 -c 360, чтобы потом можно было анализировать историю.
  • Ошибка: Не использовать алерты Glances.
    Рекомендация: Настрой алерты, интеграцию со Slack, Telegram, email — это реально спасает.

Похожие решения и альтернативы

  • htop — красочно и удобно, но только интерактивно, нет истории и web-интерфейса.
  • atop — умеет собирать историю, но интерфейс специфический, интеграция хуже.
  • netdata — web-интерфейс, красивые графики, но жрёт больше ресурсов и требует отдельной настройки.
  • Prometheus + node_exporter — промышленный стандарт, но требует отдельного сервера для сбора данных, настройка сложнее.
  • collectl — похож на nmon, чуть более гибкий, но менее популярен.

Интересные факты и нестандартные способы использования

  • Glances можно запускать как демон и собирать метрики в InfluxDB — потом строить красивые дашборды в Grafana.
  • nmon часто используют для стресс-тестов: запускают бенчмарки и параллельно снимают логи, чтобы потом анализировать узкие места.
  • Glances поддерживает экспорт в Prometheus, MQTT, CSV, JSON, StatsD — можно строить гибридные системы мониторинга.
  • Можно запускать Glances на роутерах с OpenWRT (если собрать Python) и мониторить сеть дома.

Новые возможности: автоматизация и скрипты

  • Glances позволяет автоматически отправлять алерты при превышении порогов (CPU, RAM, swap, диск, сеть) — можно интегрировать в CI/CD пайплайны.
  • API Glances даёт возможность собирать метрики из скриптов (bash, python, nodejs) и строить свои системы мониторинга.
  • nmon-логи легко парсятся awk, grep, python-скриптами — можно автоматизировать поиск аномалий и отправку отчётов.
  • Glances можно запускать в headless-режиме, собирать метрики с сотен серверов и отправлять их в централизованное хранилище.

Статистика и сравнение с другими решениями

Согласно опросам на Reddit и StackOverflow, Glances входит в топ-5 инструментов для мониторинга серверов среди DevOps и SRE. nmon чаще используют в корпоративных инфраструктурах (особенно на AIX и старых Linux), где важна стабильность и минимальное потребление ресурсов.

  • Glances: 10K+ stars на GitHub, активная разработка, поддержка Docker, web-интерфейс, API.
  • nmon: 20+ лет истории, стабильность, минимализм, поддержка CSV и экспорт в Excel.
  • htop: лучший для интерактивного анализа, но не для истории.
  • netdata: крутые графики, но требует отдельного сервера и больше ресурсов.

Выводы и рекомендации

Что выбрать — Glances или nmon? Всё зависит от задач:

  • Если тебе нужен быстрый, лёгкий мониторинг в реальном времени, возможность собирать логи и анализировать — ставь nmon. Он идеален для диагностики, сбора статистики, поиска проблем на сервере без лишних зависимостей.
  • Если хочется что-то посовременнее, с web-интерфейсом, API, алертами, интеграцией с облаком, Docker и внешними системами — Glances твой выбор. Отлично подходит для мультисерверных инсталляций, автоматизации, интеграции с DevOps-стеком.

Для VPS, облаков, выделенных серверов (VPS, dedicated) — Glances подойдёт большинству, особенно если нужно мониторить кластеры или контейнеры. Для старых серверов, одноплатников, минималистичных систем — nmon вне конкуренции.

Мой совет: попробуй оба, выбери то, что ближе по духу и задачам. А если хочется автоматизации, алертов и интеграции с современными сервисами — начинай с Glances, но не забывай про nmon как резервный инструмент диагностики.

Официальные ссылки:

Мониторинг — это не роскошь, а средство выживания. Пусть твои сервера всегда будут под контролем!


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

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

Leave a reply

Your email address will not be published. Required fields are marked