Netdata: real-time мониторинг серверов за 10 минут
Привет! Я Евгений Семёнов, директор ITFresh. Знаете, когда клиенту нужно СРОЧНО понять, что происходит с сервером вот прямо сейчас? Я, не раздумывая, ставлю Netdata. Одна команда, буквально 30 секунд — и что вы видите? Шикарный дашборд с сотнями метрик, все в реальном времени! Для меня это просто спасение на первых минутах инцидента или для быстрой диагностики, пока Zabbix или Prometheus ещё только просыпаются. Здесь я расскажу о своём опыте с Netdata — от первой установки до кластера из 120+ узлов.
Почему Netdata, а не традиционные инструменты
Конечно, у Zabbix, Prometheus, Nagios есть свои ниши. Но когда вам нужен по-настоящему глубокий анализ в реальном времени, с детализацией до секунды? Тут Netdata просто вне конкуренции.
- Детализация 1 секунда. Видно микроскачки CPU, которые Prometheus со scrape-интервалом 15 секунд усреднит.
- Zero-config. Коллекторы на MySQL, nginx, Docker, Redis, Postgres — работают автоматически без шаблонов.
- ML-обнаружение аномалий. Встроенная модель показывает, какие метрики ведут себя ненормально.
- Минимум ресурсов. На Dell Xeon Platinum 8280 агент забирает меньше 2% одного ядра.
- Красивый UI. Работает из коробки, не надо собирать Grafana-дашборды.
Установка в одну команду
wget -O /tmp/netdata-kickstart.sh https://get.netdata.cloud/kickstart.sh
sh /tmp/netdata-kickstart.sh --release-channel stable --non-interactive
Скрипт сам определит дистрибутив (Ubuntu, Debian, RHEL, Alpine), установит зависимости, настроит systemd-юнит и запустит агент на порту 19999. Через 10 секунд открываем http://server:19999/ и видим полноценный дашборд.
Базовая настройка
Конфиг — /etc/netdata/netdata.conf. Редактирую через официальный edit-config, чтобы дефолтные значения не терялись.
cd /etc/netdata
./edit-config netdata.conf
Что правлю сразу:
[global]
hostname = srv-app01
history = 3600 # секунд хранения в памяти
update every = 1
run as user = netdata
[web]
bind to = 127.0.0.1 unix:/var/run/netdata/netdata.sock
allow connections from = localhost 192.168.10.0/24
После установки дашборд Netdata по умолчанию доступен только внутри вашей сети. Если же нужен внешний доступ, например, для удалённых сотрудников — мы всегда рекомендуем использовать nginx reverse proxy с basic auth или SSO. Безопасность превыше всего!
Алерты в Telegram и Slack
Мониторинг без алертов? Это же просто красивая, но бесполезная картинка! А вот настроить Telegram-уведомления — это дело трёх минут. Разве не здорово?
# Получаем Telegram bot token и chat ID
cd /etc/netdata
./edit-config health_alarm_notify.conf
# Правки в конфиге
SEND_TELEGRAM="YES"
TELEGRAM_BOT_TOKEN="1234567890:AAHgabc..."
DEFAULT_RECIPIENT_TELEGRAM="-1001234567890"
# Проверка
/usr/libexec/netdata/plugins.d/alarm-notify.sh test
systemctl restart netdata
Чтобы настроить алерты под себя, мы часто добавляем собственные пороги прямо в health-конфиги. Вот, например, как выглядит правило для диска, если его использование превысит 85%:
# /etc/netdata/health.d/disk_custom.conf
template: disk_space_usage
on: disk.space
os: linux
hosts: *
class: Utilization
type: System
component: Disk
every: 1m
warn: $used_percent > 80
crit: $used_percent > 90
info: disk space usage
Parent-Child архитектура для 100+ серверов
Один агент Netdata прекрасно справляется с одним сервером. Но как быть, если у вас их 50? Или больше? Мы давно нашли простое и очень эффективное решение — архитектура parent-child. Child-агенты передают (стримят) все метрики на один центральный parent-сервер. Он не только хранит всю историю от 6 до 12 месяцев, но и становится вашей единой точкой входа для всего мониторинга. Удобно, правда?
# На parent-сервере
cd /etc/netdata
./edit-config stream.conf
[API_KEY_ГЕНЕРИРУЕТСЯ_UUIDGEN]
enabled = yes
default history = 172800 # 48 часов real-time
default memory mode = dbengine
health enabled by default = auto
allow from = 192.168.10.0/24
# На каждом child-агенте
[stream]
enabled = yes
destination = parent.corp.local:19999
api key = ВАШ_UUID_KEY
timeout seconds = 60
default port = 19999
buffer size bytes = 10485760
На нашей практике, один parent-сервер на Dell PowerEdge R640 (с 32 ГБ RAM и 1 ТБ NVMe) легко справляется с потоком данных от 120 child-агентов, обеспечивая при этом 2-месячное хранение метрик. Это впечатляет!
Коллекторы для прикладных сервисов
Netdata — это просто бомба! Представьте себе: он сам, полностью автоматически, собирает метрики из ОГРОМНОГО количества сервисов. Мы говорим о MySQL, nginx, Postgres, Redis, Docker, Kubernetes, PHP-FPM, Elasticsearch и ещё более чем трёхстах других! Обычно достаточно просто установить агент. Он сам, без каких-либо дополнительных настроек, найдёт все запущенные у вас сервисы. Магия, да и только!
# MySQL — только создать пользователя с правом на performance_schema
CREATE USER 'netdata'@'localhost' IDENTIFIED BY '';
GRANT USAGE, REPLICATION CLIENT, PROCESS ON *.* TO 'netdata'@'localhost';
# nginx — включить /stub_status
location /stub_status {
stub_status on;
allow 127.0.0.1;
deny all;
}
Кейс: мониторинг провайдера виртуалок
В ноябре 2025 года к нам обратился оператор виртуальных серверов из Подмосковья. У них была серьёзная проблема: 180 VPS на 12 гипервизорах Proxmox в дата-центре МТС, а Zabbix, который они использовали, выявлял инциденты слишком медленно. Клиенты уже звонили в панике, пока алерты только-только срабатывали! Мы взялись за дело. Развернули Netdata на всех 12 гипервизорах и 180 виртуалках. Архитектура стандартная: parent-агент на отдельном мощном Dell PowerEdge R640 (Xeon Platinum 8280, 64 ГБ RAM, NVMe 1.5 ТБ), а child-агенты на каждом гипервизоре стримят метрики в parent. Настроили мгновенные Telegram-алерты: 85% CPU, 90% диска, пропадание сети, перегрев выше 70°C. Результат за первый месяц просто ошеломил: обнаружили 14 инцидентов, из них 9 — ещё ДО того, как клиенты успели пожаловаться! Среднее время реакции упало с 25 минут до рекордных 3 минут. Стоимость нашей работы составила 65 000 рублей. Неплохо, а?
Интеграция с Prometheus
Уже используете Prometheus? Отлично! Netdata умеет легко интегрироваться с ним, отдавая метрики прямо в его формате. Это же удобно, правда?
# В prometheus.yml
scrape_configs:
- job_name: 'netdata'
metrics_path: '/api/v1/allmetrics'
params:
format: [prometheus]
static_configs:
- targets: ['netdata01:19999', 'netdata02:19999']
На своей практике мы часто используем вот такую мощную комбинацию: Netdata — для молниеносного мониторинга в реальном времени, Prometheus — для надёжного долгосрочного хранения и сложных корреляций, а Grafana становится той самой единой панелью для ваших бизнес-дашбордов. Эффективно и прозрачно!
Что не стоит мониторить Netdata
- Важный момент: Netdata блестяще справляется с техническим мониторингом. Но если вам нужны бизнес-метрики вроде продаж или конверсий, тут он вам не помощник. Для этого есть другие инструменты.
- Да, Netdata умеет работать с SNMP-данными от сетевого оборудования. Но будем честны: если это ваш основной приоритет, Zabbix справляется с этой задачей куда лучше и предлагает больше возможностей.
- Для синтетических проверок HTTP/API Netdata не предназначен. Для этих задач мы обычно рекомендуем использовать Blackbox Exporter или Uptrobot — они справляются отлично!
Разверну Netdata у вас за один день
Установка на все ваши серверы, parent-child архитектура, кастомные алерты в Telegram, интеграция с Grafana и Prometheus. Обучение вашей команды. Дешевле аналогичной инсталляции Zabbix в 3 раза.
Телефон: +7 903 729-62-41
Telegram: @ITfresh_Boss
Семёнов Евгений Сергеевич, директор АйТи Фреш
FAQ — Netdata
- Чем Netdata лучше Zabbix?
- Netdata ставится одной командой, работает из коробки без настройки шаблонов, показывает метрики с детализацией до секунды. Для быстрого мониторинга 5–50 серверов — лучший выбор.
- Сколько ресурсов потребляет агент?
- Около 1–3% CPU на обычном сервере и 50–150 МБ RAM. Практически незаметен.
- Данные уходят в облако?
- Нет, по умолчанию все метрики остаются локально. Netdata Cloud — это UI-надстройка, данные хранятся на самом агенте.
- Как организовать хранение долгосрочных метрик?
- В parent-child архитектуре: агенты стримят в parent-узел с хранением 6–12 месяцев. Также работает экспорт в Prometheus/InfluxDB.
- Поддерживает ли Windows?
- Да, с 2023 года есть нативный Windows Agent. Но функционал пока уступает Linux-агенту.
