Как контролировать процессор и память в Linux?

Знать, сколько отдельный процесс или система в целом потребляют процессор или память.


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

Есть много программ для мониторинга, которые делают это из коробки. Но если у вас его нет или вы ищете решение, основанное на командах, тогда все готово. Они все БЕСПЛАТНО!

Вверх

Вы можете начать с просмотра результатов top или htop, чтобы увидеть обзор процессов..

Как вы можете видеть ниже, это дает отличное представление о том, что используют все процессы. Если вы посмотрите на первый, который является nodejs, занимающим 3,9% памяти и 0,3% процессора.

Топ установлен почти на всех дистрибутивах Linux.

Как только вы определили подозреваемого, вы можете сосредоточиться на этом процессе, а не на том, что вы видели выше. Вы все еще можете использовать команду top, но с некоторым аргументом.

Допустим, вы знаете идентификатор процесса (PID); Вы можете использовать приведенную ниже команду.

top -p $ PID

Вы также можете использовать grep с top. Ниже приведен пример проверки использования rabbitmq..

HTOP

Похож на верх, но с дополнительной информацией. Как вы можете, он получил командную колонку, которая удобна для определения пути процесса. И, также это красочно.

htop может быть не установлен по умолчанию, но вы всегда можете сделать это с помощью apt-get install htop, если используете Ubuntu.

взгляды

Как следует из названия, вы получаете представление об использовании системы на одном экране. Запущенные процессы отсортированы по загрузке процессора.

сверху

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

Чтобы записать вывод в файл:

поверх -w имени файла

и для воспроизведения:

поверх -r имя файла

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

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

п.с.

Давайте проверим команду ps сейчас.

Вы можете использовать команду ps с PID, чтобы распечатать их процессор и использование памяти.

ps -p $ PID -o% CPU,% mem

Вывод должен выглядеть так.

[Электронная почта защищена]: ~ # ps -p 1048 -o% CPU,% mem
% CPU% MEM
0.2 3.0
[Электронная почта защищена]: ~ #

Nmon

Интерактивный инструмент командной строки для мониторинга использования ЦП, памяти, дисков, сети, NFS и виртуальной памяти. Чтобы просмотреть топ процесс (по использованию), вы можете выполнить nmon и нажать кнопку t.

монит

монит представляет собой веб-решение с открытым исходным кодом и командную строку для мониторинга ресурсов сервера, демонов, файлов, каталогов, файловых систем и т. д..

Монит тоже получил классный виджет.

Monitorix

Легкая утилита с открытым исходным кодом для мониторинга сервера Linux. Monitorix встроенный HTTP, так что вы можете проверить использование и другие вещи в Интернете. Некоторые из других отчетов об использовании включают в себя:

  • Kernal / температура
  • Файловая система и ввод / вывод
  • Сетевой трафик
  • Apache / Почта / FTP / Nginx / MySQL / лаки / Memcached /

Monitorix также предлагает настройку оповещений, чтобы вы могли получать уведомления, когда что-то не так. Это будет хорошим выбором, когда вы управляете облачными серверами и ищете решение для проактивного мониторинга..

Netdata

Netdata это мониторинг производительности в режиме реального времени для системных ресурсов, приложений, веб-серверов, баз данных, DNS, почты, аппаратных датчиков и многого другого. Это с открытым исходным кодом и начать легко. Все данные собираются, хранятся и передаются для интерактивной визуализации. Данные собираются каждую секунду, поэтому вы никогда ничего не пропустите.

Любимый многими лидерами отрасли.

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

Вывод

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

TAGS:

  • Открытый исходный код

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map