Проект

Общее

Профиль

Mem-hotplug » История » Версия 7

Андрей Волков, 2016-08-12 18:54

1 1 Андрей Волков
h1. Добавление памяти (ACPI)
2
3 5 Андрей Волков
h2. Требования:
4
5
- qemu-2.1+
6 6 Андрей Волков
- guest kernel-3.2+
7
8
<pre>
9
CONFIG_MEMORY_HOTPLUG=y
10
CONFIG_ACPI_HOTPLUG_MEMORY=y
11
CONFIG_HOTPLUG_PCI=y
12
CONFIG_HOTPLUG_PCI_ACPI=y
13
</pre>
14
15 7 Андрей Волков
- QEMU должная быть запущена с указанием максимального объема памяти, иначе ошибка:
16
17
<pre>
18
memory hotplug is not enabled, please add maxmem option
19
</pre>
20 6 Андрей Волков
21 5 Андрей Волков
22 2 Андрей Волков
h2. На хосте
23
24 1 Андрей Волков
*qmp-shell -H /run/qemu/qemu5521.control.sock*
25
26
<pre>
27
(QEMU) info memory-devices
28
(QEMU) object_add memory-backend-ram,id=mem1,size=2G
29
(QEMU) device_add pc-dimm,id=dimm1,memdev=mem1
30
(QEMU) info memory-devices
31
Memory device [dimm]: "dimm1"
32
  addr: 0x2c0000000
33
  slot: 0
34
  node: 0
35
  size: 2147483648
36
  memdev: /objects/mem1
37
  hotplugged: true
38
  hotpluggable: true
39 2 Андрей Волков
</pre>
40
41
h2. На госте
42 5 Андрей Волков
43
В папке */sys/devices/system/memory* лежат куски памяти по 128Мб
44
Только такими кусками можно добавлять память в систему.
45 2 Андрей Волков
46
<pre>
47
for NAME in $(grep -l offline /sys/devices/system/memory/memory*/state); do echo online > $NAME; done
48 1 Андрей Волков
</pre>
49 3 Андрей Волков
50 4 Андрей Волков
h2. Полезные ссылки
51
52 3 Андрей Волков
https://github.com/qemu/qemu/blob/master/docs/memory-hotplug.txt
53
https://medium.com/@juergen_thomann/memory-hotplug-with-qemu-kvm-and-libvirt-558f1c635972#.eenrv1jdb