Articles of qemu

将物理机迁移到KVM

我有一个相当老的debian机器,我需要迁移到KVM-Qemu。 我开始做的是做一个根文件系统的tarball: tar -cpf rootfs.tar –exclude='dev/*' –exclude='proc/*' –exclude='sys/*' –exclude='home/*' / scp tar文件到一个正在运行的kvm机器上,做一些小的修改,然后希望它能正常工作。 有谁知道比这更好的解决scheme?

qemu-kvm / virsh:使用桥接networking时没有networking连接

我遇到了通过libvirt / qemu-kvm执行虚拟化的问题,其中我的桥接networking设置似乎没有正常工作。 我已经按照我可以find的每一个教程,并花了几个小时,通过论坛,但目前无济于事。 主机和来宾都使用Centos6。 这是主机的设置: [root@node2 ~]# ifconfig -a bridge0 Link encap:Ethernet HWaddr BC:30:5B:E8:C0:4F inet addr:10.59.190.253 Bcast:10.59.190.255 Mask:255.255.255.0 inet6 addr: fe80::be30:5bff:fee8:c04f/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:5315 errors:0 dropped:0 overruns:0 frame:0 TX packets:3350 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:316961 (309.5 KiB) TX bytes:3943630 (3.7 MiB) eth0 Link encap:Ethernet HWaddr […]

使用qemu-img转换VMDK映像失败,出现“读取扇区时出错131072:无效参数”

我尝试使用qemu-img命令将在OVA文件中find的VMDK映像转换为QCOW2格式,但是在读取扇区131072时错误消息qemu-img:error失败:无效参数 user@ubuntu:/tmp$ wget ftp://ftp.sanger.ac.uk/pub/databases/Pfam/vm/PfamWeb_20120124.ova user@ubuntu:/tmp$ tar xfv PfamWeb_20120124.ova PfamWeb_20120124_2.ovf PfamWeb_20120124_2.mf PfamWeb_20120124_2-disk1.vmdk user@ubuntu:/tmp$ qemu-img convert -O qcow2 PfamWeb_20120124_2-disk1.vmdk PfamWeb_20120124_2.qcow2 qemu-img: error while reading sector 131072: Invalid argument user@ubuntu:/tmp$ qemu-img –version | grep "qemu-img version" qemu-img version 1.0, Copyright (c) 2004-2008 Fabrice Bellard user@ubuntu:/tmp$ dpkg-query -f='${Version}\n' –show qemu-utils 1.0+noroms-0ubuntu14.1 user@ubuntu:/tmp$ cat /etc/issue Ubuntu 12.04.1 LTS \n \l […]

QEMU多端口转发

我想转发多个端口。 该命令运行我的虚拟机并成功转发RDP端口: qemu-system-i386 -net nic,model=rtl8139 -net user,hostfwd=tcp::3389-:3389 -m 512M -localtime -cpu core2duo,+nx -smp 2 -usbdevice tablet -k en-us -hda win.img -nographic 尝试了其他的命令,但没有运气,他们都似乎不好: qemu-system-i386 -net nic,model=rtl8139 -m 512M -localtime -cpu core2duo,+nx -smp 2 -usbdevice tablet -k en-us -hda win.img -nographic -redir tcp:443::443,tcp:992::992,tcp:1194::1194,tcp:5555::5555,udp:1194::1194,udp:500::500,udp:4500::4500,tcp:3389::3389 qemu-system-i386 -net nic,model=rtl8139 -net user,hostfwd=tcp::3389-:3389,tcp:443::443,tcp:992::992,tcp:1194::1194,tcp:5555::5555,udp:1194::1194,udp:500::500,udp:4500::4500 -m 512M -localtime -cpu core2duo,+nx -smp 2 -usbdevice tablet […]

如何将虚拟存储作为SSD添加到KVM中

以前是一个VirtualBox用户,我最近搬到了KVM(QEMU / libvirt或者其他所谓的)。 我知道,在VirtualBox中,当你添加一个新的存储设备到虚拟机,有一个checkbox标记为固态驱动器 ,如果选中,来宾系统将看到虚拟磁盘作为固态设备。 这是非常有用的,因为它可以通知客户系统(即Windows)禁用碎片整理。 我想知道在KVM中这是否可行,因为我在互联网上找不到任何相关的东西?

如何将原始磁盘映像转换为基于另一个映像的写时复制映像,以便与kvm和virt-manager一起使用?

我有一个运行在kvm上的虚拟Windows机器。 目前它有一个90GB的原始磁盘映像。 我想克隆这个虚拟机,而不必保留90GB原始磁盘映像的两个副本。 这样做的好方法是根据原始图像创build两个新的qcow或qcow2图像。 首先,我将原始图像转换为qcow2图像: qemu-img convert -O qcow2 basewindowsxp.img basewindowsxp.qcow2 然后我试着创build一个由此支持的新图像: qemu-img create -F qcow2 -f qcow2 -b `pwd`/basewindowsxp.qcow2 windowsxp-1.qcow2 然后我使用virt-manager将原始虚拟机指向windowsxp-1.qcow2。 但是,当我尝试在这个新configuration中启动VM时,virt-manager报告了一个错误: Traceback (most recent call last): File "/usr/share/virt-manager/virtManager/engine.py", line 588, in run_domain vm.startup() File "/usr/share/virt-manager/virtManager/domain.py", line 150, in startup self._backend.create() File "/usr/lib/python2.6/dist-packages/libvirt.py", line 300, in create if ret == -1: raise libvirtError ('virDomainCreate() […]

有没有什么办法可以将qcow2图像缩小而不将其转换为原始图像?

有没有什么办法可以将qcow2图像缩小而不将其转换为原始图像? 我不能将其转换为原始的,因为我没有足够的磁盘空间足够的原始图像。

VNC比Spice更快速地远程访问KVM guest?

之前使用过RDP,对于从VNC到KVM虚拟机的性能,我并不是很激动。 KVM主机是Ubuntu 12.04服务器x64。 我已经读过Spice更快,所以经过相当多的麻烦,我通过virt-manager(例如virt-viewer)和一个独立的spice客户端来工作。 我没有任何硬性和快速的数字在这里引用,但VNC远程处理速度似乎比香料快2倍到4倍! 例如,在VNC中,我可以轻松观看Flashvideo,但在Spice中,它非常不稳定。 一般情况下,Unity可以通过VNC运行,但是对Spice来说会比较慢。 这可能吗? 有些configuration错误吗? 在这两种情况下,我都通过局域网上的笔记本电脑(运行Ubuntu 12.10)连接到虚拟主机pipe理器,以查看主机上的Ubuntu 12.04桌面访客虚拟机。 来宾上的VNCconfiguration使用vga显示types,而spiceconfiguration使用qxl显示types。 在这两种情况下,我都没有使用默认的videoRAM数量。

如何有效地与KVM客人共享主机的文件夹?

我正在configuration存储大量由nginx上传到/ srv / storage目录中的文件的服务。 这些文件由工作人员KVM来宾处理,可能会创build新文件或将扩展属性分配给现有文件。 文件从不被覆盖,但最终被工作人员删除。 所以主机服务器的文件写入速度约为177MB / s。 KVM镜像是存储在主机文件系统中的QCOW2文件,镜像在KVM实例中达到〜155MB / s,这要归功于这个virtio设置: <driver name='qemu' type='raw' cache='none' io='native'/> 但是我无法得到共享文件夹的结果。 我用virtfs又名virtio 9p获得了最高40MB / s。 看起来没有AIO相当于mount: mount -t 9p -o trans=virtio,version=9p2000.L uploads /srv/storage 我也在想: 没有NFS扩展属性丢失 没有GlusterFS – 工作,但性能比virtio差,因为联网,在单个硬件机器上的一种矫枉过正, 可能共享LVM卷r / w? – 实际上该文件夹存储在单独的分区,但是我读了LV不能共享r / w的地方,因为这可能会导致fs腐败。 在QCOW2上保存上传文件并由各方共享? 在QCOW2的KVM实例中保存nginx和上传的文件,以某种方式与所有客人共享图像? iSCSI – 可能与单个分区? 那么如何有效地共享主机的文件夹与扩展属性工作的KVM客人)。

运行KVM qcow2 VPS的备份

我想要一个强大的方法,在运行时,对qcow2文件的KVM VPS进行备份。 经过长时间的search,我发现我们可以使用rsync进行实时备份。 我使用以下命令进行rsync: rsync -avh /vms/base.qcow2 /backup/backup.qcow2 它工作正常。 但是,如果在由于写入和删除操作(如安装新软件或更新)而更改VPS时进行备份,恐怕可能会损坏备份qcow2映像。 因此,从现场VPS的快照备份似乎更有趣的select。 我使用以下命令来进行运行VPS的备份: 1.创build快照: qemu-img create -f qcow2 -b base.qcow2 snapshot.qcow2 2.以原始图像格式(.img)转换快照: qemu-img convert -O raw snapshot.qcow2 /backup/backup.img 恢复VPS: 3.在qcow2图像中转换原始图像: qemu-img convert -O qcow2 /backup/backup.img base.qcow2 然后我们可以通过virsh create base.xml命令启动VPS。 即使这个方法也能正常工作,但我仍然不确定这是否是正确运行VPS的备份方法。 我在这里和这里find了很好的关于qemu-img命令的文档。 但是他们没有提到在原始图像中转换实况VPS的快照。 哪种方法更适合直播VPS备份? 转换原始图像中的快照是否安全? 如果我能得到很好的详细文档,了解快照和基本文件在某些​​情况下的行为,这将是非常有用的。 也许我们也可以将base qcow2映像转换成原始备份文件,而不是转换快照。 所以命令stream将是: 1.创build快照 2.将base qcow2转换为备份原始图像 3.将快照更改提交到基本映像 4.删除快照 我试过这个,在5GB的小VPS上工作的很好。 但是当VPS规模巨大时,是否有可能出现错误或VPS损坏? 提前致谢…