怎样编译安卓kvm
A. KVM命令行安装时--os-variant 参数怎么写才对
两个方法:
复制环境:找一台类似的机器,将你的目前机器上的lamp
memcache
python
svn的所有文件,使用rsync的方式,直接同步到新的机器上,再在新机器上进行安装测试;
直接编译或安装:不知道你是不是使用的php-fpm,如果是得话,那就更简单了,将5.3.10编译到某个指定目录,再启一个apache的旦阀测合爻骨诧摊超揩虚拟机主,然后直接使用新的5.3.10的php-fpm,这样测试就不冲突了;
B. 各位大神,我用kvm创建了一个windows2012的qcow2镜像,上传到openstack云环境后,
一、思路就4步:1、创建镜像文件
2、用nova-compute自带的kvm,启动.iso文件,用vncviewer完成OS的安装过程
3、OS安装完毕,停止虚拟机,kvm重启镜像,安装必要的软件
4、后续:上传镜像到云中
二、镜像制作指导
很多源都有为OpenStack已经编译好的各种镜像了,您可以直接下载并通过使用这些镜像来熟悉OpenStack。
不过如果是为生产环境进行部署的话,您一定需要构建含有定制软件或配置的镜像文件。本章将引领您完成几种较为流行的Linux发行版镜像,最后也将制作一份Windows的镜像。
由不同的Linux发行版制作镜像时,过程几乎一样,仅有微小的差别而已。由于含有cloud-ini软件包,人们用Ubuntu系统制作镜像文件变得非常容易。Cloud-init软件在实例运行时能够自动维护实例配置,也将为无密码登陆完成密匙导入以及完成设置主机名等任务。每个实例都将通过169.254.169.254的元数据接口,从nova运算中读取特定的配置。
如果您制作发行版不含有诸如cloud-init此类的软件包,您就需要自行完成密匙导入等操作了。说来也简单,只需向rc.local文件中添加相关命令即可。
C. 手机刷 kvm 硬件虚拟化
"您好,官网没有提供刷机软件。由于刷机存在风险,如因自行刷机后导致的手机问题,还有可能会影响包修,因此我们不建议您自行刷机。
若手机因系统故障无法正常使用或自行刷机后导致手机出现问题,建议您将机器送到售后服务中心,由工程师帮助检查处理。"
D. KVM之四:内存balloon的奇妙
玩转KVM: 内存balloon的奇妙
上篇介绍了kvm的KSM内存合并技术,了解KSM的应用场景。下面进一步KVM的内存气球balloon。
balloon技术应用场景
下面总结了一下内存气球使用时候的伏枝扒情况:
Ballooning在节约内存和灵活分配内存方面有明显的优势,其好处有如下三点。
①因为能够控制和监控ballooning,所以ballooning能够潜在地节约大量的内存。它不同于内存页共享技术(KSM是内核自发完成的、不可控),VM系统的内存只有在通过命令行调整balloon时才会随之改变,所以能够监控系统内存并验证ballooning引起的变化。
②Ballooning对内存的调节很灵活,既可以精细的请求少量内存,又可以粗犷的请求大量的内存。
③hypervisor使用ballooning让VM归还部分内存,从而可以缓解其内存压力。而且从气球中回收的内存也不要求一定要被分配给另外某个进程(或另外的VM)。
从另一方面来说,KVM中ballooning的使用不方便、不完善的地方也是存在的,其缺点也有如下几个。
①Ballooning需要VM操作系统加载virtio_balloon驱动,然而并非每个VM系统都有该驱动(如windows需要自己安装该驱动)。
②如果有大量内存从VM系统中回收,Ballooning可能会降低VM操作系统运行的性能。一方面,内存的减少,可能会让VM中作为磁盘数据缓存的内搭慎存被放到气球中,从而VM中的磁盘I/O访问会增加;另一方面,如果处理机制不够好,也可能让VM中正在运行的进程由于内存不足而执行失败。
③目前没有比较方便的、自动化的机制来管理ballooning,一般都是采用在QEMU monitor中执行balloon命令来实现ballooning的。没有对VM的有效监控,没有自动化的ballooning机缺昌制,这可能会让生产环境中实现大规模自动化部署并不很方便。
④内存的动态增加或减少,可能会使内存被过度碎片化,从而降低内存使用时的性能。另外,内存的变化会影响到VM内核对内存使用的优化,比如:内核起初根据目前状态对内存的分配采取了某个策略,而突然由于balloon的效果让可用内存减少了很多,这时起初的内存策略可能就不是太优化的了。
KVM中的Ballooning是通过宿主机和VM协同来实现的,在宿主机中应该使用2.6.27及以上版本的Linux内核(包括KVM模块),使用较新的qemu-kvm(如0.13版本以上),在VM中也使用2.6.27及以上内核且将“CONFIG_VIRTIO_BALLOON”配置为模块或编译到内核。在很多Linux发行版中都已经配置有“CONFIG_VIRTIO_BALLOON=m”,所以用较新的Linux作为VM系统,一般不需要额外配置virtio_balloon驱动,使用默认内核配置即可。
我在windows2008R2和centos7下面完成balloon的应用操作。
VM查看balloon状态:
在vm中,可以通过内核,模块加载,pci设备等查看balloon是否正常运行。
根据上面输出可知,VM中virtio_balloon模块已经加载,有一个叫做“Red Hat, Inc Virtio memory balloon”的PCI设备,它使用了virtio_pci驱动。如果是WindowsVM,则可以在“设备管理器”看到使用VirtIO Balloon设备,稍后可以检验一下。
在宿主机查看并设置balloon:
我通过virsh工具,
设置balloon
virsh # qemu-monitor-command centos7.0 --hmp --cmd balloon 2046
或者
virsh # setmem centos7.0 2Gib # --size默认是Kib
如果没有使用Balloon设备,则monitor中用“info balloon”命令查看会得到“Device 'balloon' has not been activated”的警告提示。而“balloon 2046”命令将VM内存设置为2046MB。
(4)设置了VM内存为512 MB后,再到VM中检查,如下所示。
[root@kvm-guest ~]# free -m
如果是WindowsVM(如Win7),当balloon使其可用内存从2GB降低到512MB时,在其“任务管理器”中看到的内存总数依然是2GB,但是看到它的内存已使用量会增大1536MB(如从其原来使用量350MB,变为1886MB),这里占用的1536MB正是Balloon设备占用的,WindowsVM系统其他程序已不能使用这1636 MB内存,这时宿主机系统就可以再次分配这里的1536MB内存用于其他用途。
另外,值得注意的是,当通过“balloon”命令让VM内存增加时,其最大值不能超过QEMU命令行启动时设置的内存,例如:命令行中内存设置为2048MB,如果在Monitor中执行“balloon 4096”则设置的4096MB内存不会生效,其值将会被设置为启动命令行中的最大值(即2048MB)。