Перейти к основному контенту

Диагностика Dedicated-сервера с помощью Atop

Atop — интерактивный полноэкранный монитор производительности, с помощью которого можно проконтролировать загрузку ЦПУ, ОЗУ, HDD, сеть, а также произвести диагностику работы сервера на основании полученных данных.

Все действия необходимо производить через подключение по SSH: Как подключиться к серверу Dedicated по SSH?.

Для установки Atop выберите вашу операционную систему:

CentOS 7
  1. 1.
    Добавьте репозиторий EPEL в CentOS7 с помощью команды: rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-11.noar
  2. 2.
    Установите Atop: yum install atop -y && systemctl enable atop.service
  3. 3.
    Укажите интервал в файле /etc/sysconfig/atop: INTERVAL=10
  4. 4.

    Для настройки ротации логов в файле /etc/logrotate.d/atop измените следующие параметры:

    вместо weekly укажите daily

    вместо rotate 4 укажите rotate 7

  5. 5.
    Запустите службу Atop с помощью команды: systemctl start atop.service
Debian
  1. 1.
    Установите atop с помощью команды: apt-get install atop
  2. 2.

    Укажите интервал в файле /etc/default/atop:

    INTERVAL=10
    OUTFILE="$LOGPATH/atop.log"
  3. 3.

    В файле /etc/init.d/atop измените строку: OUTFILE=$LOGPATH/daily.log на OUTFILE=$LOGPATH/atop.log

  4. 3.

    Для настройки ротации логов в файле /etc/logrotate.d/atop укажите параметры:

    /var/log/atop/atop.log {
    missingok
    daily
    rotate 7
    notifempty
    create 0600 root root
    }
Ubuntu 16.04
  1. 1.
    Установите atop с помощью команды: apt-get install atop
  2. 2.

    Укажите в файле /etc/default/atop следующие параметры:

    INTERVAL=10
    LOGPATH="/var/log/atop"
    OUTFILE="$LOGPATH/daily.log"
  3. 3.

    В файле /etc/init.d/atop укажите:

    INTERVAL=10            # interval 10 minutes
    LOGPATH="/var/log/atop"
    OUTFILE=$LOGPATH/daily.log
  4. 4.

    Для настройки ротации логов в файле /etc/logrotate.d/atop укажите параметры согласно примеру:

    /var/log/atop/atop_201[0-9][0-9][0-9][0-9][0-9] {
       missingok
       daily
       nodateext
       rotate 1
       ifempty
       nocreate
       postrotate
         /usr/bin/find /var/log/atop/ -maxdepth 1 -mount -name atop_201\[0-9\]\[0-9\]\[0-9\]\[0-9\]\[0-9\]\* -mtime +7 -exec /bin/rm {} \;
       endscript
    }
  5. 5.
    Atop будет запущен после установки. После внесения изменений перезапустите службу: systemctl restart atop.service

Чтобы запустить Atop, введите команду: atop

В терминале будет запущен интерфейс atop, с помощью которого можно продиагностировать работу вашего выделенного сервера:

На что стоит обратить внимание?

Верхняя часть интерфейса

По умолчанию верхняя часть интерфейса разбита на 6 столбцов. В первом столбце перечислены основные ресурсы сервера, а в столбцах напротив указаны их параметры и нагрузка.

Нагрузка на CPU:

Данные показатели содержат информацию о распределении процессорного времени. Нагрузка на каждое ядро процессора отображается в отдельной строке (cpu). Суммарная нагрузка отображена в строке CPU.

В первом (sys) и втором (user) столбце дана информация о работе CPU по обработке процессов. Высокие показатели (95-100%) загрузки всех ядер на протяжении длительного времени указывают на то, что процессор загружен. Это может негативно влиять на скорость работы сайта. Если одно ядро загружено максимально, а у других — показатели в норме, то в данном случае стоит обратить внимание на другие показатели нагрузки.

Немаловажный показатель wait — время затраченное на обработку данных. Чем выше этот показатель, тем дольше процессы ожидают своей очереди на выполнение. Как правило, данная проблема может быть связана с медленной работой жесткого диска. Допустимое значение: не более 80%.

Потребление памяти (MEM):

В первом столбце отображен суммарный объем выделенной памяти (tot) на вашем сервере, а во втором — указана свободная память (free) на текущий момент. Свободную память заимствует дисковый кэш, позволяя приложениям загружаться и работать быстрее, тем самым показатель free не отображает доступную память на текущий момент. Если приложениям понадобиться больше памяти, то они заберут его у дискового кэша.

Чтобы определить количество свободной памяти с учетом буфера и кэша, выполните команду: free -m

Результат:

В строке -/+ buffers/cache, столбце free будет указан объем доступной памяти.

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

Load average(AVG):

Данный показатель отражает среднее значение нагрузки системы за определенный период, а именно за 1 минуту (avg1), за 5 минут (avg5) и за 15 минут (avg15).

Значения:

  • Если значения равны 0.0, то система находится в состоянии простоя.
  • Если среднее значение для 1 минуты выше, чем для 5 или 15, то нагрузка растет.
  • Если среднее значение для 1 минуты ниже, чем для 5 или 15, то нагрузка снижается.
  • Если значение нагрузки выше, чем количество ядер процессора, то необходимо проанализировать список процессов disk await и другие характеристики.
Внимание!
Нагрузка в пределах от 0 до N, где N число ядер процессора является допустимой и не влияет на скорость работы сайта.

Нижняя часть интерфейса.

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

Для удобного просмотра отсортируйте запущенные процессы с помощью горячих клавиш:

  • Shift + m — сортировка по объему используемой памяти;
  • Shift + p — сортировка по загрузке процессора;
  • Shift + d — сортировка процессов по использованию диска;
  • Shift + n — сортировка процессов по использованию сети;

Исходя из результата можно выяснить, какие из параметров (CPU,MEM,DSK) потребляют больше всего ресурсов, и принять меры по их устранению.

Была ли эта статья полезной?
Пользователи, считающие этот материал полезным: 1 из 1