Как диагностировать проблемы с CPU в Linux

«Как диагностировать проблемы с CPU в Linux» — вопрос из категории Linux, который задают на 23% собеседований Devops Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

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

  1. top / htop - показывают загрузку CPU в реальном времени, процессы с высоким потреблением
  2. vmstat 1 - статистика по процессору (us, sy, id, wa)
  3. mpstat -P ALL 1 - детальная статистика по каждому ядру
  4. pidstat -u 1 - потребление CPU по процессам
  5. perf top - профилирование процессов на уровне ядра

Пример анализа:

# Найти процессы с высоким потреблением CPU
ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head

Ключевые метрики:

  • us - пользовательские процессы
  • sy - системные вызовы
  • id - простой
  • wa - ожидание I/O

Для постоянного мониторинга используй Prometheus + Node Exporter или Datadog.