Size: a a a

2020 September 14

FD

Find DT in ru_proxmox
riv1329
По моему, это память кончилась. kvm не будет отправлять виртуалки в своп, при недостатке памяти он ребутнет хост.

В качестве временной меры можно активировать механизм KSM (kernel same page sharing) нужно установить пакет ksmtuned и настроить его конфиг, чтобы он быстрее активировался. Тут дилема возникает: чем активнее ksm тем больше на него процессора тратится, и тем сильнее он утаптывает память, которая сама по себе постоянно разутаптывается назад.

Виртуалки нужно будет запускать по одной, когда 70% памяти будет занято, подождите, когда утопчется и запускайте остальные.

Это очень агрессивные настройки:

cat /etc/ksmtuned.conf 
# Configuration file for ksmtuned.

# How long ksmtuned should sleep between tuning adjustments
KSM_MONITOR_INTERVAL=10

# Millisecond sleep between ksm scans for 16Gb server.
# Smaller servers sleep more, bigger sleep less.
# KSM_SLEEP_MSEC=10

KSM_NPAGES_BOOST=3000
# KSM_NPAGES_DECAY=-50
# KSM_NPAGES_MIN=64
KSM_NPAGES_MAX=12500

KSM_THRES_COEF=30
KSM_THRES_CONST=32768

# uncomment the following if you want ksmtuned debug info

LOGFILE=/var/log/ksmtuned
DEBUG=1
Ммм... Как вовремя )
источник

FK

Fedor Krashnikov in ru_proxmox
опасным вещам людей учите.
источник

r

riv1329 in ru_proxmox
Find DT
Всем привет
Как в включить KSM? Несовсем понятно по вики... Является ли частью baloon или нет.
#вопрос
не является частью baloon, если остались вопросы - пишите
источник

r

riv1329 in ru_proxmox
Fedor Krashnikov
опасным вещам людей учите.
Согласен, магия черная и опасная 😊 В качестве временной меры.
источник

FD

Find DT in ru_proxmox
riv1329
не является частью baloon, если остались вопросы - пишите
1. Для чего предназначен baloon?
2. Имеет ли смысл и совместим ли он с KSM?
источник

FK

Fedor Krashnikov in ru_proxmox
riv1329
Согласен, магия черная и опасная 😊 В качестве временной меры.
маловероятно, что это будет временным. :)
источник

r

riv1329 in ru_proxmox
Совместим, имеет смысл включить. В госте windows нужно ставить соответствующие драйвера. Балун - это устройство внутри гостя, драйвер которого фиктивно потребляяет память, не давая виртуальной машине её занять, и передает адреса "занятой" памяти в гипервизор, который эту память освобождает и использует по своему усмотрению. Используется при нехватки памтяи в гипервизоре, чтобы при наличие в госте свободной памяти, отобрать понемногу у всех, но недопустить перезагрузки гипервизора или менее оптимальной работы файлового кэша. Нужен при острой нехватке памяти, но оба метода так себе. Лучше, конечно памяти добавить.
источник

FK

Fedor Krashnikov in ru_proxmox
второй вариант решит проблему, первый - только симптомы
источник

FD

Find DT in ru_proxmox
Увы, но я ограничен как в RAM, так и в IO.
Машина поддерживает только 64 гб RAM, а этого мало.
источник

FK

Fedor Krashnikov in ru_proxmox
можно в виртуалках прибрать память, оптимизировать сервисы, расположенные там
источник

FK

Fedor Krashnikov in ru_proxmox
это дась больше результата
источник

FK

Fedor Krashnikov in ru_proxmox
тогда выкинуть машину, и поставить проксмокс на что-то более-менее серьёзное. :) хотя и 64, в целом, не так уж и мало.
источник

FD

Find DT in ru_proxmox
Fedor Krashnikov
тогда выкинуть машину, и поставить проксмокс на что-то более-менее серьёзное. :) хотя и 64, в целом, не так уж и мало.
Не по бюджету =)
источник

FK

Fedor Krashnikov in ru_proxmox
а кто его так спланировал? :D
источник

FD

Find DT in ru_proxmox
Fedor Krashnikov
а кто его так спланировал? :D
Зарплата =)
источник

FK

Fedor Krashnikov in ru_proxmox
ну тогда только оптимизировать
источник

FK

Fedor Krashnikov in ru_proxmox
полумеры подводят. и подведут в самый неудачный момент
источник

r

riv1329 in ru_proxmox
Fedor Krashnikov
маловероятно, что это будет временным. :)
И отверткой можно убить. Это просто ещё один инструмент. Кстати, а бывает такое, что ksm крайне показан, например при запуске нескольких десятков относительно одинаковых виртуальных машин. Например однажды мне надо было запустить 30 шт windows 7, ksm утопать в 5 раз память!

Я думаю, что надой включить все механизмы и задействовать понемногу каждый - это будет более оптимально. Чем просто откусить недостающую память у виртуалок. Объективно у них ну хоть 1ГБ есть опсалютно одинаковых данных в памяти. 5 mv по 1ГБ = 5ГБ! а baloon молезен для динамического перераспределения памяти. Если машины нагружаются не одновременно, он будет выдавать память более нагруженной.
источник

r

riv1329 in ru_proxmox
Fedor Krashnikov
полумеры подводят. и подведут в самый неудачный момент
Вот 100% соглашусь. Оставить на постоянку означает, что рано или поздно жахнет так, что уже ничего сделать нельзя будет. Вы просто не сможете запустить нужное количество виртуальных машин. Плохо если это будет в середине рабочего дня.
источник

FK

Fedor Krashnikov in ru_proxmox
riv1329
Вот 100% соглашусь. Оставить на постоянку означает, что рано или поздно жахнет так, что уже ничего сделать нельзя будет. Вы просто не сможете запустить нужное количество виртуальных машин. Плохо если это будет в середине рабочего дня.
по закону мерфи.
источник