Проект

Общее

Профиль

Mem-hotplug » История » Редакция 8

Редакция 7 (Андрей Волков, 2016-08-12 18:54) → Редакция 8/11 (Андрей Волков, 2016-08-12 18:56)

h1. Добавление памяти (ACPI) 

 h2. Требования: 

 - qemu-2.1+ 
 - guest kernel-3.2+ 

 <pre> 
 CONFIG_MEMORY_HOTPLUG=y 
 CONFIG_ACPI_HOTPLUG_MEMORY=y 
 CONFIG_HOTPLUG_PCI=y 
 CONFIG_HOTPLUG_PCI_ACPI=y 
 </pre> 

 - QEMU должная быть запущена с указанием максимального объема памяти, иначе ошибка: 

 <pre> 
 memory hotplug is not enabled, please add maxmem option 
 </pre> 

 Пример опции *-m 10G,slots=32,maxmem=32G* 

 


 h2. На хосте 

 *qmp-shell -H /run/qemu/qemu5521.control.sock* 

 <pre> 
 (QEMU) info memory-devices 
 (QEMU) object_add memory-backend-ram,id=mem1,size=2G 
 (QEMU) device_add pc-dimm,id=dimm1,memdev=mem1 
 (QEMU) info memory-devices 
 Memory device [dimm]: "dimm1" 
   addr: 0x2c0000000 
   slot: 0 
   node: 0 
   size: 2147483648 
   memdev: /objects/mem1 
   hotplugged: true 
   hotpluggable: true 
 </pre> 

 h2. На госте 

 В папке */sys/devices/system/memory* лежат куски памяти по 128Мб 
 Только такими кусками можно добавлять память в систему. 

 <pre> 
 for NAME in $(grep -l offline /sys/devices/system/memory/memory*/state); do echo online > $NAME; done 
 </pre> 

 h2. Полезные ссылки 

 https://github.com/qemu/qemu/blob/master/docs/memory-hotplug.txt 
 https://medium.com/@juergen_thomann/memory-hotplug-with-qemu-kvm-and-libvirt-558f1c635972#.eenrv1jdb