LINUX.ORG.RU
ФорумAdmin

kvm менеджмент памяти

 , ,


0

2

Добрый день, имеется сервер с Core i7 и 16Гб оперативы на нем установлен ubuntu server 14.04 и поднят kvm. Виртуальная машина всего одна с Windows 7 x64 которая запускается со следующими параметрами:

qemu-system-x86_64 -enable-kvm -name Windows7x64 -S -machine pc-i440fx-trusty,accel=kvm,usb=off -m 4096 -realtime mlock=off -smp 4,sockets=4,cores=1,threads=1 -uuid 2ca0dc89-9848-db3a-5c77-8fd36e72cb0c -no-user-config -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/Windows7x64.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=localtime -no-shutdown -boot strict=on -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive file=/var/lib/libvirt/images/Windows7x64.img,if=none,id=drive-virtio-disk0,format=raw -device virtio-blk-pci,scsi=off,bus=pci.0,addr=0x4,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1 -netdev tap,fd=24,id=hostnet0,vhost=on,vhostfd=25 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=00:50:56:00:09:e1,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=serial0 -device usb-tablet,id=input0 -vnc 127.0.0.1:0 -device qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,bus=pci.0,addr=0x2 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5

Как видно использует она не более 4 Гб оперативной памяти если воспользоваться командой top видно следующие

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

3805 libvirt+ 20 0 8543368 4.099g 9888 S 8.6 26.7 20:48.90 qemu-system-x86

Но при этом в системе уже занято 12 из 16 Гб.Подскажите как можно определить какие процессы съедают память, так как после каждой перезагрузки и влючения виртуалки вначале используется 4 потом 6 а потом доходит до 12.Так как в система чистая и кроме служб нужных для работы KVM ничего не установлено я грешу на него.



Последнее исправление: ia2130 (всего исправлений: 1)

Используй LORCODE, читать невозможно

dvrts ★★★
()
Ответ на: комментарий от darkenshvein

Я понял в чём проблема)) Спасибо за подсказку
total used free shared buffers cached Mem: 15735 12554 3181 0 153 7799 -/+ buffers/cache: 4601 11134 Swap: 8187 0 8187

У меня закешировано 7 гигабайт, это нормально?

ia2130
() автор топика
Ответ на: комментарий от Aceler

Ок, к примеру в данный момент данное число дошло до 10 Гб
total used free shared buffers cached Mem: 15735 15498 237 0 71 10795 -/+ buffers/cache: 4631 11104 Swap: 8187 0 8187 Что будет когда память оперативная память закончиться?

ia2130
() автор топика

Отключи в виртуальной машине кэширование образов дисков. В гостевой операционке у тебя есть собственный кэш, а двойное кэширование никому пользы не приносило.

no-dashi ★★★★★
()
Ответ на: комментарий от ia2130

Я вот считаю, что это не нормально. У тебя двойное кеширование.

DALDON ★★★★★
()
Ответ на: комментарий от no-dashi

Удваиваю!

Сегодня отключил нафиг двойной кеш почти. Уменьшил swapness до 10. Уменьшил ARC - до 1Гб. - И мои волосы ВНЕЗАПНО стали похоже, очень, очень шелковистыми...

KSM - заработал в полную силу, что мне позволит как минимум удвоить плотность размещения VM. - хотя оно и до этого показывало мне сумасошедшие цифры, только вот толку не было от них...

Да, речь, о kvm узле, конечно.

DALDON ★★★★★
()
Последнее исправление: DALDON (всего исправлений: 2)
Ответ на: комментарий от ia2130

Что будет когда память оперативная память закончиться?

Жёпа будет. Будет swap юзаться. Хотя в swap нету ничего плохого. Но при случае двойного кеширования - он явно будет большой глупостью. :)

P.S. я проверял. :)

DALDON ★★★★★
()
Ответ на: комментарий от no-dashi

при перезагрузке виртуалки польза будет, это ж windows, ей часто надо

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.