Если я сбегу free -m
, top
и htop
, Я использую память по-разному. Система также использует небольшой своп. Я понимаю из этот вопрос почему они сообщают разные значения (некоторые данные считаются "отбрасываемыми" и поэтому включаются одной системой и не включаются другой), но не почему система решила использовать своп? Это сервер GlusterFS с последней версией (3.4.3).
Кто-нибудь знает, почему он использует своп, а не очищает "отбрасываемые" данные из физической памяти и не использует это вместо этого?
Есть ли что-то, что я могу / должен сделать, или я должен просто изменить систему мониторинга, чтобы не беспокоиться о небольшом количестве использования подкачки?
бесплатно -m:
верхняя:
htop:
Спасибо за вашу помощь.
Я бы совсем не беспокоился об использовании небольшого свопа. Бывает, что ядро сбрасывает какие-то данные из памяти на свопинг. Вы можете контролировать поведение ядра с помощью обмен вариант:
echo 60 > /proc/sys/vm/swappiness
Этот элемент управления используется для определения того, насколько агрессивно ядро будет менять страницы памяти. Более высокие значения увеличивают агрессивность, более низкие значения уменьшают объем обмена. Значение 0 указывает ядру не инициировать свопинг до тех пор, пока количество свободных страниц и страниц с файловой поддержкой не станет меньше максимальной отметки в зоне. Значение по умолчанию - 60.
Более подробную информацию о подсистеме виртуальной памяти вы найдете в документация ядра
Использование памяти, которое вы наблюдаете, одинаково между free
, top
и htop
. Рассчитаем это из top
Посмотреть:
8171728-(341276+2195864+4061972) / 1024 = 1535
что практически соответствует тому, что вы получаете htop
.
Также при конвертации top
значения от КБ до МБ, вы увидите, что free
значения также совпадают.
Использование подкачки, из-за которого вы паникуете, вероятно, просто какой-то заскучавший демон, выгруженный на диск, не беспокойтесь об этом.