У нас есть сервер с необычной высокой нагрузкой и процессором, но мы не можем понять, почему. Когда мы запускаем top, все процы выглядят очень низко.
http://cl.ly/2d1g0K3q261r0R0K3e35
Есть ли лучший способ найти причину этого?
У нас есть сервер с необычной высокой нагрузкой и процессором, но мы не можем понять, почему. Когда мы запускаем top, все процы выглядят очень низко.
http://cl.ly/2d1g0K3q261r0R0K3e35
Есть ли лучший способ найти причину этого?
Ответы:
Я думаю, что эта ошибка в вашем случае. Из того, что я вижу из выходных данных, у вас достаточно памяти (обратите внимание на кэшированные 14 ГБ или около того), нет проблем ввода-вывода, но у вас запущены процессы, связанные с xen. Это заставляет меня думать, что это ошибка.
Нагрузка - это мера рабочей нагрузки, которую система имела на 1, 5 и 15 минут.
Наиболее распространенным заблуждением является то, что Load Average просто связана с использованием ЦП системой.
Нагрузка, однако, включает в себя дополнительные измерения, такие как процессор, ожидающий ввода-вывода, который я считаю вашей проблемой.
Судя по изображению, вам не хватает памяти и вы начали выгружать данные на диск.
Простое free -m
скажет вам, сколько оперативной памяти и подкачки используется.
Интересная колонка - это свободная колонка -/+ buffers/cache
.
Если он близок к нулю, вам не хватает оперативной памяти, и вы должны действовать соответственно.
iotop
или, vmstat
чтобы попытаться увидеть, является ли это I / O.
Заметил, что средняя нагрузка довольно высокая (68 вау). Возможно ли, что существует много процессов, которые занимают немного процессорного времени, и, следовательно, занимают все процессорное время? Может быть, эти процессы просто начинаются и заканчиваются очень быстро, поэтому top не может уловить их существование, вы можете попытаться увидеть, может ли это увидеть наверху или нет.
Пытаться
iotop
IO было для меня большую часть времени.
Попробуйте использовать:
top -o cpu
-o
Флаг заставит сверху заказать процессы по загрузке процессора в порядке убывания.
top -o cpu
я получил «верх: неизвестный аргумент« о »»
o
пока он работает. Он должен попросить вас первичный ключ. Введите cpu
и нажмите ввод.
top -o %CPU
Похоже, загрузка процессора идет из потока. top
кажется, не принимать это во внимание. Я недавно видел это на сервере MySQL. там выполняются операторы INSERT, но я не смог получить новые строки с помощью SELECT, потому что какой-то поток mysqld обновлял индекс таблицы. top показывает 100% пользовательскую нагрузку на одно ядро, но каждый процесс, включая mysqld, занимал 0.0% ЦП. часов спустя тот же самый SELECT предоставил ожидаемый набор результатов.
Смотрите также