Поиск по сайту:

Как контролировать систему с помощью Sysstat на Centos


На этой странице

  1. Установите Sysstat на CentOS
  2. Использование системного монитора Sysstat

Обычной задачей системных администраторов является мониторинг и обслуживание сервера. Это довольно легко сделать в любой момент, но как вести учет этой информации с течением времени? Одним из способов мониторинга вашего сервера является использование пакета Sysstat. gpt-ad-howtoforge_com-box-3-0;var ffid=1;var alS=1002%1000;var container=document.getElementById(slotId);container.style.width=100%;var ins=document.createElement( ins);ins.id=slotId+-asloaded;ins.className=adsbygoogle ezasloaded;ins.dataset.adClient=pid;ins.dataset.adChannel=cid;if(ffid==2){ins.dataset.fullWidthResponsive=true; }

Sysstat на самом деле представляет собой набор утилит, предназначенных для сбора информации о производительности установки Linux и записи ее с течением времени.

Его довольно легко установить, так как он входит в состав многих дистрибутивов.

Установите Sysstat на CentOS

Чтобы установить Sysstat на Centos 6 или CentOS 7, просто введите следующее:

yum install sysstat

Использование системного монитора Sysstat

Теперь у нас есть сценарии sysstat, установленные в системе. Давайте попробуем команду sar.

sar
11:00:02 AM       CPU     %user     %nice   %system   %iowait     %idle
11:10:01 AM       all      0.00      0.00      0.00      0.00     99.99
Average:          all      0.00      0.00      0.00      0.00     99.99

Сообщается несколько битов информации, таких как ядро Linux, имя хоста и дата.
Что еще более важно, показаны различные способы использования процессорного времени в системе.

%user, %nice, %system , %iowait и %idle описывают способы использования ЦП.
%user и %nice относятся к вашим программам, таким как MySQL или Apache.
%system относится к внутренней работе ядра. .
%iowait — это время, потраченное на ожидание ввода/вывода, например чтение или запись диска. Наконец, поскольку на ядро приходится 100 % рабочего времени, которое оно может запланировать, любое неиспользованное время переходит в %idle.

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

Итак, как мы можем отслеживать информацию с течением времени? Мы можем запланировать запуск sar через равные промежутки времени, скажем, каждые 10 минут.
Затем мы направляем его на отправку выходных данных в специальные файлы журнала sysstat для последующих отчетов.
Это можно сделать с помощью Демон Крон.

Создав файл с именем sysstat в /etc/cron.d, мы можем указать cron запускать sar каждый день.
К счастью, пакет Systat, установленный yum, уже сделал этот шаг за нас.

more /etc/cron.d/sysstat
# run system activity accounting tool every 10 minutes
*/10 * * * * root /usr/lib/sa/sa1 1 1
# generate a daily summary of process accounting at 23:53
53 23 * * * root /usr/lib/sa/sa2 -A

Сценарий sa1 записывает выходные данные sar в двоичный файл журнала sysstat, а sa2 возвращает его обратно в удобочитаемом формате.
Отчет записывается в файл в /var/log/sa.

ls /var/log/sa
sa17  sar17

sa17 — это бинарный журнал sysstat, sar17 — это отчет. (сегодня 17 число)

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

sar
11:00:02 AM       CPU     %user     %nice   %system   %iowait     %idle
11:10:01 AM       all      0.00      0.00      0.00      0.00     99.99
11:20:01 AM       all      0.00      0.00      0.00      0.00    100.00
11:30:02 AM       all      0.01      0.26      0.19      1.85     97.68
11:39:20 AM       all      0.00      2.41      2.77      0.53     94.28
11:40:01 AM       all      1.42      0.00      0.18      3.24     95.15
Average:          all      0.03      0.62      0.69      0.64     98.02

Было несколько моментов, когда активность диска была высокой в столбце %iowait, но она оставалась такой не слишком долго. Среднее значение 0,64 — это очень хорошо.

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

sar -W
11:00:02 AM  pswpin/s pswpout/s
11:10:01 AM      0.00      0.00
11:20:01 AM      0.00      0.00
11:30:02 AM      0.00      0.00
11:39:20 AM      0.00      0.00
11:40:01 AM      0.00      0.00
11:50:01 AM      0.00      0.00
Average:         0.00      0.00

Нет, мы хорошо выглядим. Постоянного обмена не было.

Как насчет загрузки системы? Мои процессы слишком долго ожидают запуска на ЦП?

sar -q
11:00:02 AM   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15
11:10:01 AM         0        47      0.00      0.00      0.00
11:20:01 AM         0        47      0.00      0.00      0.00
11:30:02 AM         0        47      0.28      0.21      0.08
11:39:20 AM         0        45      0.01      0.24      0.17
11:40:01 AM         0        46      0.07      0.22      0.17
11:50:01 AM         0        46      0.00      0.02      0.07
Average:            0        46      0.06      0.12      0.08

Нет, средняя нагрузка 0,06 действительно хороша. Обратите внимание, что справа есть интервалы в 1, 5 и 15 минут. Наличие трех временных интервалов дает вам представление о том, какую нагрузку несет система. 3 или 4 в среднем за 1 минуту — это нормально, но такое же число в 15-минутном столбце может указывать на то, что работа не завершается и что требуется более пристальное внимание.

Это был краткий обзор пакета Sysstat.

Мы рассмотрели вывод только трех атрибутов sar, но есть и другие. Теперь, вооружившись sar в вашем наборе инструментов, ваша работа по системному администрированию стала немного проще.