Статистика нагрузки на сервер, утилита Atop
Atop – это программа, которая позволяет делать мониторинг нагрузки на сервер. Она дает возможность непрерывно смотреть логи. Atop позволяет отмотать данные назад и увидеть какая была нагрузка в момент проблемы.
Утилита доступна во всех дистрибутивах линукс, она быстро устанавливается и не требует большое количества ресурсов. Стоит отметить, что работать с Atop можно только с помощью подключения по SHH.
Как пользоваться Atop
Чтобы делать мониторинг нагрузки на сервер утилитой atop, необходимо установить программу на сервер.
Инструкция по установке Atop для Ubuntu/Debian
Подключитесь к серверу с помощью терминала и выполните команду:
apt install atop -y
Для включения записи ежеминутного состояния сервера включите настройки командой:
sed -i ‘s/LOGINTERVAL=600/LOGINTERVAL=60/g’ /etc/default/atop
Инструкция по установке Atop для Centos
После подключения по SHH выполните команду:
yum install atop -y
Для ежеминутной записи состояния сервера вводим команду:
sed -i ‘s/LOGINTERVAL=600/LOGINTERVAL=60/g’ /etc/sysconfig/atop
Для запуска программы для Ubuntu/Debian/Centos выполните в терминале команду atop
Основные команды для Atop
В программе Atop экран делится на две части: в первой отображается информация о системе, во второй данные всех процессов системы.
С помощью клавиш на клавиатуре можно сортировать данные по различным параметрам:
m — по количеству занимаемой оперативной памяти
p — по величине нагрузки на процессор
d — по нагрузке на жесткий диск
u — по активности пользователей
n — по активности сетевых интерфейсов
Кроме этого можно использовать следующие клавиши:
v — показать подробности о процессах
g — сброс настроек до дефолтных
i — изменить скорость обновления данных (по-умолчанию 10 секунд)
c — отображение информации о процессе и пути до него
t — переход вперед, на следующую метку времени
SHIFT+t — переход назад, на предыдущую метку времени
h — вывод справки
Смотреть логи Atop позволяет за конкретный период времени. Для этого используются параметры:
-r — указывается дата ( без ключа -b лог будет начинаться с 00:00 от указанной даты)
-b — указывается точное время с которого начинается просмотр.
Например, чтобы просмотреть нагрузку на сервер за 5 февраля 2022 года, начиная с 9:00, выполните команду:
atop -r 20220205 -b 0900
atop -rb 202202050900
Дата в запросе вводится в формате ГГГГММДД.
Статистика нагрузки на сервер, atop
![]()
Мониторингов нагрузки на сервер много — zabbix, Icinga 2 и другие — но все они ставятся довольно долго, и для мониторинга требуется большое количество серверов. Мы рекомендуем atop: устанавливается быстро, ресурсов потребляет мало. Единственный минус — работать с ним можно только через ssh. Если для вас это не проблема, расскажем, как поставить atop и пользоваться им.
Установка и настройка
Debian/Ubuntu
установка
apt-get install atop автозапуск
update-rc.d atop defaults запуск
/etc/init.d/atop start Centos
установка
yum install atop автозапуск
systemctl enable atop запуск
systemctl start atop Конфигурационный файл
/etc/default/atop
Пример конфигурацонного файла:
#Интервал через который делается снимок нагрузки сервера, в секундах.
INTERVAL=600
#Путь до логов atop.
LOGPATH=»/var/log/atop»
#хранить бэкапы за 10 дней.
keepdays = 10
Настройка завершена.
Как пользоваться atop?
Команда atopsar — это встроенный анализатор логов atop, который позволит быстро найти проблему и смотреть лог в нужное вам время. Основные ключи:
-b — с какого времени надо вывести лог
-e — до какого времени надо вывести лог Общая нагрузка:
-d — нагрузка на каждый диск отдельно
-m — нагрузка на оперативную память и swap
-с — нагрузка на процессор, отдельно по каждому ядру
-p — количество процессов и тредов
-w — нагрузка на ipv4
-W — ошибки на ipv4
-i — нагрузка на интерфейс Поиск отдельных процессов:
-O — top-3 процессов CPU
-G — top-3 процессов RAM
-D — top-3 процессов диск
-N — top-3 процессов сеть Если вам этого недостаточно, можно посмотреть полный снимок нагрузки на сервер командой:
atop -r путь до лога , можно сразу указать временные рамки. Например: atop -r /var/log/atop/atop_20190128 -b 09:35:01 -e 10:55:01 Откроется тот же atop, в котором видна вся нагрузка на сервере, где можно выставлять сортировку по процессам, но за только на нужное время. Чтобы открыть следующий снимок нагрузки, нажмите t , предыдущий снимок — T . Время снимка указано в первой строке посередине экрана. Больше информации в статье «Нагрузка на сервер: определение причин». Пример: нагрузка на RAM с 09:35:01 до 10:55:01 28 января
# atopsar -r /var/log/atop/atop_20190128 -b 09:35:01 -e 10:55:01 -m
Нагрузка по сетевым интерфейсам
atopsar -r /var/log/atop/atop_20190128 -i -b 00:40:00 -e 01:30:00
Нагрузка на диски
atopsar -r /var/log/atop/atop_20190128 -d -b 01:10:00 -e 01:30:00 
Установка и обзор возможностей atop
Анонс: Существует огромное множество TOP-овых утилит, но atop является одной из немногих способных предоставить полную информацию о системе. В этой статье мы ее рассмотрим. Описание: Возможности утилиты: В отличие от множество других top-овых утилитatop способна выводить информацию о системе не только в режиме онлайн, но так же записывать все происходящие изменения в отдельный лог-файл. Это […]
Анонс: Существует огромное множество TOP-овых утилит, но atop является одной из немногих способных предоставить полную информацию о системе. В этой статье мы ее рассмотрим.
Описание:
- В отличие от множество других top-овых утилитatop способна выводить информацию о системе не только в режиме онлайн, но так же записывать все происходящие изменения в отдельный лог-файл. Это крайне полезная функция т.к проблему редко можно обнаружить в момент наблюдения.
- Показывает информацию по 4 основным ресурсам системы: CPU, оперативная память, жесткий диск и сеть
- Умеет создавать снимки системы с определенным интервалом времени
- Определяет процент загрузки того или иного ресурса системы каким либо процессом.
Так же в отличие от популярного top atop знает про существование блочных устройств и сетевых интерфейсов, а так же может отображать их загрузку в процентах.
Установка:
Эта утилита не входит в стандартный репозиторий и нам необходимо подключить дополнительный. EPEL — репозиторий с дополнительными пакетами для Enterprise Linux, это лишь некоторые дополнительные пакеты, которые всегда необходимы и они не включены в установки по умолчанию в некоторых дистрибутивах Linux, например CentOS.
Для начала проверим, какая версия CentOS следующей командой:
# cat /etc/centos-release

т.к у нас 6 версия команда для добавления репозитория будет выглядеть следуюищй образом:
# rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm

# rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
После чего можно установить atop через yum командой: # yum install atop

Соглашаемся (y) с установкой, после чего пробуем запустить. Запустить программу для онлайн мониторинга можно просто набрав в консоли # atop

Поздравляем, вы установили программу и уже можете видеть все процессы и занимаемые ими ресурсы. Для выхода из программы нажмите сочетание клавиш ctrl + c
Обзор:
Как и в top экран в atop разделен на две стандартные половины. В первой будет располагаться основная информация о системе,
а во второй список всех активных процессов.

В отличие от top, в первой половине экрана так же можно найти информацию о сети и дисков.
Более подробно о каждом из пунктов вы можете узнать с помощью man с подробным описанием, а мы перейдем к более практическому применению утилиты.
Для начала управление выводом информации. Мы можем изменять его так, как нам нужно используя стандартные горячие клавиши, о которых вы можете узнать ниже
- m – распределить процессы по занятой памяти
- d – распределить процессы в зависимости от использования диска
- n — выстроит процессы по использованию сети
- v – отобразить подробную информацию о процессах (пользователя, дату и время начала процесса)
- u – выстроит таблицу по самым «прожорливым» пользователям
- i – позвоялет изменить время проверки. По умолчанию время составляет 10 секунд.
- g – возвращает все в дефолтный вывод
Однако, самая полезная функция данной утилиты это не просмотр в режиме онлайн, а возможность просмотреть загрузку, которая была какое-то время назад. Утилита по дефолту снимает показания каждые 10 минут, и сбрасывает их в лог /var/log/atop-YYYYMMDD. Однако, его можно запустить вручную следующей командой:
# atop -a -w /var/log/atop.log 600

Здесь каждые 600 секунд (10 минут) atop будет делать снапшот состояния системы, и записывать его в /var/log/atop.log.
Для мониторинга системы лучше период ставить 5 секунд. Естественно не забывайте выключать запись логов, в особенности, если поставили небольшой период времени. Для того, чтоб посмотреть результаты наберите следующую команду:
top -r /var/log/atop.log
После чего загрузится история с самого первого снапшота

Для перемещения по истории используется следующие команды
- t – вперед
- t + Shift – назад
Так же здесь можно использовать ранее перечисленные команды.
Вывод:
Утилита atop это незаменимая утилита для поиска и устранения источников лагов на сервере благодаря тому, что сохраняет не только статистику загрузки системы, но и показатели процесса.
Использование atop
Утилита atop позволяет сохранять бинарные логи, которые содержат различные метрики сервера. Atop удобно использовать для диагностики проблем производительности. Программа умеет работать в фоновом и интерактивном режиме.
Установка
# Debian/Ubuntu apt install atop
# Centos yum install epel-release && yum install atop
# Fedora dnf install atop
Запуск
Для запуска достаточно запустить службу atop:
service atop start
По умолчанию atop сохраняет метрики каждые 10 минут, данное значение можно изменить в файле /etc/default/atop или /etc/sysconfig/atop (переменная INTERVAL).
Чтение бинарных логов
По умолчанию бинарные логи хранятся в директории /var/log/atop, именование файлов производится в формате atop-YYYYMMDD.
atop -r /var/log/atop/atop_20170113
t - переход к следующему временному интервалу; Shift + t - переход к предыдущему временному интервалу; Shift + m - сортировка процессов по занимаемой резидентной памяти; Shift + с - сортировка процессов по потреблению CPU (по умолчанию); Shift + d - сортировка процессов по использованию диска; Shift + n - сортировка процессов по использованию сети;