博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Libvirt中windows虚拟机的动态内存管理
阅读量:6971 次
发布时间:2019-06-27

本文共 1257 字,大约阅读时间需要 4 分钟。

非常短的前提

Libvirt支持对虚拟机进行内存动态扩展,可是windows虚拟机首先须要安装virtio-win驱动。

KVM提供的virtio-win驱动下载地址:

下面是栗子

镜像:windows2008R2。64位

virtio-win:virtio-win-0.1-100.iso
disk:差分镜像(qemu-img create -f qcow2 -b ./windows_2008R2_x86_64 disk)

使用qemu命令启动虚拟机并载入virtio驱动:

qemu-system-x86_64 -hda ./windows_2008R2_x86_64 -drive file=./disk,if=virtio \-drive file=./virtio-win-0.1-100.iso,media=cdrom,index=1 -net nic,model=virtio \-net user -boot d -vga std -m 4096 -usbdevice tablet -vnc :50 -enable-kvm

通过vnc訪问该虚拟机,进行下面操作:

  1. 进入“设备管理器” - “系统设备”。安装“未知设备”为“Virtio Balloon Driver”
  2. 将virtio-win光驱中的WIN7/X86文件夹复制到“c:/Program files/Balloon”
  3. 以管理员身份使用cmd命令行进入上述文件夹
  4. 运行“BLNSVR.exe -i”用以安装BLNSVR服务
  5. 正常关机保存设置

至此。该disk文件已经具备了获取具体内存信息、动态调整内存大小的能力,验证的方法例如以下:

内存具体信息获取验证:

1.使用该disk文件启动虚拟机。在xml文件里加入例如以下段落用于启用balloon设备,同一时候设定採集周期为10s

...

2.採集时间能够手动设置

virsh dommemstat 
--period

3.获取虚拟机的当前内存用量

virsh dommemstat 

内存动态大小调整验证:

1.关闭虚拟机

virsh destroy 

2.设置虚拟机最大内存值(假设已经写入xml文件能够跳过)

virsh setmaxmem 
--size

3.启动虚拟机

virsh start 

4.动态调整

virsh setmem 
--size

有点不同于linux系统的地方在于windows会显示设置的最大内存值,会让人产生误解。

參考资料

转载于:https://www.cnblogs.com/clnchanpin/p/7064723.html

你可能感兴趣的文章
【1】今天开始学习python
查看>>
实用字符串函数
查看>>
java中使用 正则 抓取邮箱
查看>>
centos7没有killall命令
查看>>
@angular/cli项目构建--httpClient
查看>>
如何测试Nginx的高性能
查看>>
光棍节游戏
查看>>
java线程之一 单线程
查看>>
node学习笔记
查看>>
ts 使用Visual Studio2012和TFS网站管理源代码
查看>>
Agreement has been updated--Edit Phone Number最便捷解决办法(不需要安全提示问题和双重认证)...
查看>>
ImportError: No module named mysql 报错python引用mysql报错
查看>>
【luogu 1962】斐波那契数列
查看>>
团队冲刺站立会议01
查看>>
Java的类加载
查看>>
坐标系转换
查看>>
CSS3 Animation
查看>>
Jsp注册页面身份证验证
查看>>
hdu 1011(树形dp)
查看>>
学习微信小程序之css15解决父盒子高度塌陷
查看>>