6. Мониторинг памяти

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

Введение в vmstat

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

pete@icebox:~$ vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 1  0      0 396528  38816 384036    0    0     4     2   38   79  0  0 99  0  0

Вывод организован в несколько столбцов. Давайте разберем, что означает каждое поле.

Procs (Процессы)

  • r: Количество готовых к выполнению процессов, ожидающих времени выполнения.
  • b: Количество процессов в непередаваемом сне, обычно ожидающих ввода-вывода.

Memory (Память)

  • swpd: Объем используемой виртуальной памяти (в килобайтах).
  • free: Объем свободной памяти (в килобайтах).
  • buff: Объем памяти, используемый в качестве буферов.
  • cache: Объем памяти, используемый в качестве кэша страниц.

Swap (Подкачка)

  • si: Объем памяти, подкачанной с диска в секунду (в килобайтах). Высокие значения указывают на нехватку физической памяти в системе.
  • so: Объем памяти, выгруженной на диск в секунду (в килобайтах). В идеале это значение должно быть равно нулю.

IO (Ввод-вывод)

  • bi: Полученные блоки от блочного устройства (блоки/с).
  • bo: Отправленные блоки на блочное устройство (блоки/с).

System (Система)

  • in: Количество прерываний в секунду, включая тактовые.
  • cs: Количество переключений контекста в секунду.

CPU (ЦП)

Это проценты от общего времени работы ЦП.

  • us: Время, затраченное на выполнение кода пользователя (user time).
  • sy: Время, затраченное на выполнение кода ядра (system time).
  • id: Время простоя.
  • wa: Время, затраченное в ожидании ввода-вывода.
  • st: Время, украденное у виртуальной машины (для виртуализированных сред).

Войдите, чтобы сохранить ваш прогресс обучения

Вход

Упражнения

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

  1. Команда Linux free: Мониторинг системной памяти - Узнайте, как отслеживать и анализировать использование системной памяти, понимая различные форматы отображения и общее потребление памяти.
  2. Команда Linux top: Мониторинг системы в реальном времени - Узнайте, как отслеживать производительность системы в реальном времени, включая процессы, ЦП и использование памяти, используя различные опции для сортировки и фильтрации.

Эти лабораторные работы помогут вам применить концепции мониторинга системных ресурсов в реальных сценариях и повысить уверенность в анализе производительности системы Linux.

Тест

Какой инструмент используется для просмотра утилизации памяти? (Пожалуйста, ответьте на английском языке, обращая внимание на регистр).