Проверить нагрузку сервера linux

Как проверить нагрузку на сервер в системе Linux

Если вы системный администратор, вы, вероятно, уже знаете, как проверять нагрузку на сервер в системе Linux. Существует множество инструментов, позволяющих по-разному проверять нагрузку на сервер. Некоторые из них работают комплексно, а некоторые — как отдельные инструменты. Однако есть способы постоянно проверять загрузку сервера через интерфейс командной строки в Linux. Использование методов интерфейса командной строки может сэкономить ваше время и упростить использование. Кроме того, интерфейс командной строки также дает вам точное значение нагрузки на сервер. Независимо от того, с каким сервером вы работаете, Apache или Nginx, команды интерфейса командной строки для проверки загрузки сервера без проблем работают на обоих.

Проверить загрузку сервера в Linux

Linux всегда отлично подходил для управления серверами. Создание серверов и управление входящей нагрузкой на сервер с помощью Linux — это просто и эффективно. Нагрузка на сервер связана с трафиком, обращениями, запросами на вход, поддержанием работоспособности сервера, обеспечением доступности сервера для всех пользователей и многим другим. В понимании аппаратного уровня измерение нагрузки ЦП, нагрузки на жесткий диск, состояния диска, нагрева ЦП и энергопотребления — все это называется проверкой нагрузки на сервер.

Системные администраторы предпочитают проверять загрузку сервера в течение определенного периода времени, чтобы убедиться, что все работает безупречно на бэкэнде. В этом посте мы увидим, как проверить нагрузку на сервер в Linux.

1. Проверьте время безотказной работы и состояние системы

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

Измерение времени безотказной работы может помочь вам запланировать перезагрузку или вы сможете предположить, какая нагрузка в настоящее время развернута на вашем сервере Linux.

нагрузка на сервер безотказной работы

Как на серверах Linux, так и на настольных компьютерах проверка загрузки ЦП и использования ОЗУ имеет решающее значение, поскольку дополнительная нагрузка на оборудование может повлиять на производительность вашего сервера и выключить систему на пока. Чтобы избежать этой ситуации, вы, как профессиональный администратор Linux-сервера, всегда должны отслеживать загрузку сервера и знать использование ОЗУ и ЦП.

Следующее vmstat Команда покажет вам текущее использование ОЗУ и ЦП, а также загрузку ЦП по ядрам.

Вы также можете настроить vmstat команду и распечатайте использование ЦП и ОЗУ через определенный интервал времени. Следующая команда покажет использование ЦП и памяти 10 раз с интервалом в 3 секунды.

Читайте также:  Linux mint удаление драйвера nvidia

запустить проверку загрузки сайта vmstat

2. Проверьте загрузку ЦП и использование памяти на сервере Linux

Поскольку мы проводим процесс проверки использования ЦП и ОЗУ, указанная ниже команда также позволит вам узнать текущее состояние ЦП сервера. Следующая команда должна установить инструмент sysstat в вашей системе. Убедитесь, что в вашей системе установлен инструмент.

sudo apt установить sysstat

установка sysstat

Теперь запустите приведенную ниже команду iostat.

iostat -x команда проверка загрузки сервера

Чтобы получить подробный обзор загрузки ЦП, вы можете проверить список текущих текущих процессов на сервере с помощью следующей команды.

Приведенные ниже три команды помогут вам проверить общее состояние ЦП, ОЗУ и время безотказной работы вашего сервера Linux.

# верхняя. # ш. # время безотказной работы

Администраторы серверов Linux часто используют команду htop для получения динамического отчета о загрузке процессора и отслеживания использования системных ресурсов.

Следующий верхняя Команда отобразит отчет о процессах на вашем сервере в режиме реального времени.

верхняя команда

Поскольку команда top имеет еще несколько синтаксисов, которые также показывают статус сервера Linux, вы можете просмотреть руководства Top.

3. Получите краткий обзор сервера Linux

Если вы хотите проверить общее количество текущих процессов на вашем Linux сервер , следующая команда позволит вам распечатать это.

Следующая команда действительно хороша для обзора и проверки всех аппаратных параметров вашего Linux-сервера. Если в системе не установлен инструмент glances, сначала установите его.

Теперь выполните следующую команду.

Команда glances может распечатать данные об использовании ЦП, текущем количестве пользователей, загрузке системы и состоянии простоя в процентах. Кроме того, он также предоставляет данные об использовании сети и пропускной способности сервера Linux.

взгляды проверить нагрузку на сервер

Если вам немного интереснее узнать среднюю нагрузку на ваш сервер, выполните следующую команду cat в оболочке, чтобы проверить среднюю нагрузку на вашем сервере Linux.

Если у вас есть многоядерный или многопроцессорный ЦП на сервере Linux, вы можете выполнить следующие команды, чтобы получить нагрузку на ЦП в вашей системе.

В качестве альтернативы хорошо известная команда GREP может также получить общее количество загрузок ЦП на сервере Linux.

$ grep 'название модели' / proc / cpuinfo | wc -l

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

Заключительные слова

Использование ЦП, эффективное использование памяти и оптимальное энергопотребление могут помочь вам поддерживать сервер Linux длительное время. Несмотря на описание множества методов интерфейса командной строки для проверки нагрузки на сервер, есть несколько хороших сторонних приложений, которые вы можете использовать для проверки нагрузки на сервер в Linux. Если вы эксперт в PHP, вы можете создать свой собственный PHP-скрипт, чтобы уведомлять о нагрузке на сервер, когда возникает проблема или если сервер достигает слишком большого объема трафика.

Читайте также:  Tarring files in linux

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

Источник

Анализ нагрузки на веб-сервер Linux

Обновлено

Обновлено: 29.01.2021 Опубликовано: 12.09.2018

В данной статье пойдет речь о мониторинге нагрузки, именно, в контексте веб-сервера. Мы не будем особо заострять внимание на проверке производительности системы, как, например, командами top, htop, free и так далее.

Нагрузка на сервер

Анализ нагрузки стоит начать с общих метрик — потребление процессорного времени, памяти, нагрузки на сеть и дисковую систему.

Нагрузка по процессам

Проверить, нагружен ли сервер, а также понять, какой именно процесс больше всего потребляет ресурсов можно с помощью команд:

* по сути, все 3 вышеперечисленные команды выдают одну и туже информацию в разном виде. Какой-то из них может оказаться удобнее пользоваться. Утилита top встроена в систему, для использования остальных необходимо установить одноименные пакеты.

Оперативная память

Для определения объема свободной и занимаемой памяти можно воспользоваться командой:

* предыдущие команды тоже показывали утилизацию памяти, но кому-то команда free может показаться нагляднее.

Нагрузка на диск

Для определения нагрузки на дисковую систему, используем утилиту iotop. Сначала ее нужно установить.

а) На системы Debian / Ubuntu:

б) На системы Red Hat / CentOS:

После выполняем следующую команду:

Сетевая активность

Для измерения нагрузки на сеть необходимо установить утилиту nload.

а) В CentOS / Red Hat:

б) В Ubuntu / Debian:

После установки, запускаем утилиту командой:

* в данном примере будет запущена статистика для использования сетевого интерфейса eth0.

Что грузит систему

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

Использование lsof

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

а) В CentOS / Red Hat:

б) В Ubuntu / Debian:

Теперь можно выполнить следующие команды:

* первая команда покажет, к каким файлам обращается apache, вторая — php-fpm (часто можно увидеть в связке с nginx).

Анализ error-логов

Анализ логов ошибок позволит не только обнаружить проблемы в работе сайта, но и найти причину его медленной работы. По умолчанию, логи находятся в каталоге /var/log. Если мы не меняли расположение логов, запускаем следующие команды:

tail -f /var/log/nginx/error.log

tail -f /var/log/php-fpm/error.log

tail -f /var/log/httpd/error_log

* лог ошибок apache в CentOS.

tail -f /var/log/apache2/error_log

* лог ошибок apache в Ubuntu.

В первую очередь, нужно обратить внимание на повторяющиеся ошибки — они могут быть причиной проблем. Лучше всего, добиться полного отсутствия ошибок, внеся исправления в работу сайта. Возможно, это устранит проблемы производительности.

Читайте также:  Система linux оболочка bash

Статистика веб-сервера

Для веб-серверов можно воспользоваться служебной страницей просмотра статуса. Она может показать статистику запросов к веб-серверу.

Apache

Для Apache необходим модуль mod_status, который идет в комплекте с данным веб-сервером. Проверить подключение модуля можно в конфигурационном файле httpd.conf (в разных Linux системах может находится в различных каталогах).

По умолчанию, server-status не активен. Создаем конфигурационный файл.

Для CentOS / Red Hat:

Для Ubuntu / Debian:

* где 2 — используемая версия apache.

В открытый конфигурационный файл добавим:

* где 111.111.111.111 — IP-адрес нашего веб-сервера; 80 — порт, на котором слушает apache.
* в данном примере мы прописали два варианта просмотра статистики: первый — обращение в браузере к серверу по IP-адресу + /server-status; второй — обращение к любому сайту + /server-status. Разные способы оправданы для разных настроек самих сайтов и используемых CMS.

Проверим корректность внесенных данных и перезапустим веб-сервер apache:

systemctl restart httpd || systemctl restart apache2

Теперь открываем браузер и вводим название сайта + /server-status, например, http://www.dmosk.ru/server-status. Или обращаемся к серверу по IP-адресу, например, http://111.111.111.111/server-status.

NGINX + PHP-FPM

Открываем конфигурационный файл nginx:

.
server listen 80;
server_name 111.111.111.111;
location /server-status stub_status on;
>
>
.

* где 111.111.111.111 — IP-адрес нашего веб-сервера.

Проверяем корректность настройки и перезапускаем nginx:

Открываем браузер и заходим на страницу 111.111.111.111/server-status. Мы должны увидеть статистику использования сервера:

Статистика использования NGINX

Теперь настроим статистику для php-fpm. В конфигурационном файле nginx в нашу директиву server добавим:

.
server listen 80;
server_name 78.110.63.31;
location /server-status stub_status on;
>
location /status access_log off;
include fastcgi_params;
#fastcgi_pass unix:/var/run/php-fpm/php5-fpm.sock;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
>
>
.

* обратите внимание на закомментированную строку и строку под ней. В зависимости от того, как настроен php-fpm (слушает на порту или через сокетный файл) необходимо настроить nginx. В данном примере подразумевается, что php-fpm слушает на 9000 порту.

Открываем конфигурационный файл php-fpm:

Снимаем комментарий со следующей строки:

Проверяем настройку nginx, перезапускаем его и php-fpm:

Открываем браузер и заходим на страницу 111.111.111.111/server-status. Мы должны увидеть статистику использования сервера:

Статистика использования PHP-FPM

Долгие запросы

С помощью длительных запросов к веб-серверу или СУБД можно сделать выводы о том, что является узким местом в работе сервиса.

MySQL / MariDB

Для начала, воспользуемся инструкцией, чтобы настроить ведение лога медленных запросов (для MySQL или MariaDB).

После, воспользовавшись статистикой, находим неоптимальные запросы. В одних случаях необходимо будет переписать сам запрос, в других — создать индексы базы данных.

PHP-FPM

Открываем конфигурационный файл:

Редактируем следующие параметры:

request_slowlog_timeout = 10s
slowlog = /var/log/php-fpm/www-slow.log

* request_slowlog_timeout определяет время, в течение которого должен выполняться запрос, чтобы он считался медленным; slowlog — путь до лога, куда будет сохранена информация о медленных запросах.

Непрерывный просмотр лога можно запустить командой:

tail -f /var/log/php-fpm/www-slow.log

Источник

Оцените статью
Adblock
detector