Распределение памяти никогда не меняется для моей виртуальной машины

Распределение памяти никогда не меняется для моей виртуальной машины

Я настраиваю распределение памяти для своего гостя через virt-manager.
Я устанавливаю 16384 Мб для текущей памяти и 32768 Мб для максимальной памяти.
Я замечаю, что текущая память никогда не меняется! почему?

Таким же образом я устанавливаю номер процессора на 2, но виртуальная машина ВСЕГДА использует только один.

хост: Debian/Jessie
гость: ws2012
версия libvirt: 1.2.9
virt-manager: 1.0.1
Драйвер ballon для windows: версия 62.73.104.12600/11.8.2016

решение1

Вы не указали, какой гипервизор используете, поэтому я предположу, что это KVM, но мой ответ применим и к Xen. Когда вы устанавливаете currentMemory=16384 и maxMemory=32768, вы указываете KVM загрузиться с 32 ГБ ОЗУ и использовать драйвер Balloon, чтобы уменьшить его до 16 ГБ.

После того, как драйвер balloon уменьшил ОЗУ до 16 ГБ, он больше никогда не увеличится, если вы явно не скажете KVM увеличить. Он не будет настраиваться сам, если вы не скажете ему

Что касается количества ЦП - вы не упоминаете, установили ли вы количество ЦП на 2 перед загрузкой гостя или когда он уже был запущен. Обычно большинство ОС хотят, чтобы вы установили количество ЦП перед загрузкой, так как они не поддерживают автоматическое горячее подключение ЦП.

С некоторыми версиями Windows есть еще одна сложность: если при первой установке Windows у вас только 1 ЦП, то даже если вы позже добавите ЦП, они не будут использоваться, поскольку Windows была установлена ​​в однопроцессорном режиме. Кроме того, некоторые версии Windows поддерживают только один сокет, но допускают несколько ядер. Поэтому вам может потребоваться указать virt-manager изменить топологию ЦП, чтобы открыть 1 сокет с 2 ядрами вместо 2 сокетов с 1 ядром.

Связанный контент