Questions tagged «kvm-virtualization»

KVM(用于基于内核的虚拟机)是针对Linux的完整虚拟化解决方案,它在x86硬件上包含虚拟化扩展(Intel VT或AMD-V)。它由提供核心虚拟化基础架构的可加载内核模块kvm.ko和处理器特定模块kvm-intel.ko或kvm-amd.ko组成。KVM还需要修改后的QEMU,尽管正在进行工作以使所需的更改在上游进行。

3
释放kvm / qemu上qcow2-image文件上未使用的空间
我们在虚拟机中使用带有qcow2-images的kvm / qemu。 qcow2具有此不错的功能,其中映像文件仅分配虚拟机实际需要的空间。但是,如果虚拟机的分配空间变小,如何缩小映像文件? 例: 1.)我用qcow2格式创建了一个新图像,大小为100GB 2.)我使用此映像安装ubuntu。安装大约需要10 GB,映像文件会增长到大约10GB。到目前为止没有什么意外的。 3.)我用大约40 GB的附加数据填充了映像。图像文件将增长到50GB。我同意:-) 4.)这是很奇怪的地方:我删除了图像上的所有40GB数据,但是图像大小仍然占用了50GB。 问题:如何释放40GB的数据并将图像缩小到仅需要的10 GB? 在此先感谢,伯尼

4
KVM / qemu-直接使用LVM卷而不使用映像文件?
我不太确定该如何表达这个问题(因此标题很差),所以让我提供一个示例来说明我要做什么。 在我的(旧)Xen主机上,我能够将LVM文件系统直接呈现给每个来宾。这些文件系统实际上是在主机上创建和格式化的,并直接通过。例如,对于使用单独的tmp和swap分区的主机之一,我定义存储如下: 磁盘= [ 'phy:/ dev / vg1 / guest1-swap,sda1,w', 'phy:/ dev / vg1 / guest1-disk,sda2,w', 'phy:/ dev / vg1 / guest1-tmp,sda3 ,w', ] 因此,guest1-swap格式化为交换分区,guest1-disk和guest1-tmp格式化为ext4,从guest的角度来看,它只是将它们视为/ dev / sda下的三个格式化分区。 (这听起来可能需要做很多工作,但是有一些配置脚本,例如很棒的xen-tools,几乎可以使所有内容自动化)。 这提供了一些非常有用的功能,其中两个我特别想了解KVM: 从主机OS挂载来宾文件系统。即使来宾正在运行,我也可以随时对任何来宾文件系统进行只读装载。这样做的附带好处是,允许我在来宾运行时创建任何现有卷的LVM快照。这样,我可以在运行时从主机集中备份所有来宾。 在线批量调整大小。由于卷包含标准的Linux文件系统,因此我可以结合使用lvextend和resize2fs来增长我的客户机文件系统,使其再次处于联机状态。 我目前正在设置KVM主机,它将替换Xen主机。与Xen设置类似,我利用LVM提供直接的文件系统访问,但是KVM / qemu的行为有所不同,因为它始终为来宾创建映像文件,即使在LVM卷上也是如此。从guest虚拟机的角度来看,它将其视为未分区的磁盘,并且由guest虚拟机负责应用分区标签,然后创建分区和文件系统。 从来宾的角度来看,这很好,但是从服务器/管理的角度来看,它似乎比我描述的Xen设置要灵活得多。我还是KVM的新手,所以(希望)我缺少一些东西。 尝试在KVM主机上重新实现以前的备份解决方案时遇到了这个问题,当我尝试挂载客户机的文件系统之一时,挂载命令出现问题。因此,解决这是我当前的关注,但是这也让我关注调整大小的问题,因为我确定这个问题也会在某个时候出现。 所以,这是我的问题: 如我为Xen设置所述,有什么方法可以让kvm / qemu直接使用LVM卷文件系统?如果可以,我使用libvirt进行管理。 如果没有,我该怎么做才能在KVM下获得类似的挂载/备份功能?我已经看到了有关使用带有FUSE的libguestfs进行此操作的讨论,但这真的是最好的选择吗?如果可能的话,我宁愿坚持使用本机文件系统挂载。 如果不是,是否可以在KVM下调整在线文件系统的大小?我已经找到了一些关于此的讨论/方法,但是答案似乎无处不在,没有明确的,绝对没有直接的解决方案。 抱歉,很长的帖子,只想确保它清楚。请让我知道是否可以提供其他有用的信息。期待讨论。:-)

5
如何将cdrom设备连接到kvm / qemu域(使用命令行工具)?
我已经在Ubuntu笔记本电脑上设置了运行Windows XP的虚拟机。使用virt-managerGUI应用程序,我可以将CD插入驱动器,然后转到Details→IDE CDROM 1,然后单击Connect按钮。然后,该CD在我的虚拟机中可用。 如何通过命令行执行相同操作?显然,我也希望能够与命令行断开连接。 注意:我可以使用virsh start testbed(测试床是域/ VM的名称)从命令行启动VM。

9
如何在计算机之间同步巨大的稀疏文件(VM磁盘映像)?
是否存在诸如rsync之类的命令,该命令可以将巨大的稀疏文件从一台linux服务器同步到另一台linux服务器? 目标文件保持稀疏非常重要。它可能比包含它的驱动器更长(但不更大)。仅更改的块应通过电线发送。 我已经尝试过rsync,但是没有任何乐趣。https://groups.google.com/forum/#!topic/mailing.unix.rsync/lPOScZgFE9M 如果我编写一个程序来做到这一点,那我只是在重新发明轮子吗? http://www.finalcog.com/synchronise-block-devices 谢谢, 克里斯。

2
在小型文件系统上,文件大小非常奇怪(超过600 PB)
我在XFS文件系统上有一个文件,大小约为200 GB。这是一个QCOW2映像,其中包含KVM驱动的虚拟机的虚拟磁盘。出了点问题(可能是qemu-kvm出现故障,我不确定),虚拟机崩溃了,现在我有了一个看起来像这样的文件: 191090708 -rwxr--r--. 1 root root 737571587400425984 Oct 10 10:03 973d10e0-a5e3-4a59-9f98-4b9b9f072ade 因此,它仍然占据191090708个块,但ls显示为656 PB。 而且,我还有另一个具有相同的历史记录的文件,但是在另一个文件系统上(不是XFS,而是GFS2): 410855320 -rwxr--r--. 1 root root 7493992262336241664 Dec 13 2014 ac2cb28f-09ac-4ca0-bde1-471e0c7276a0 它占用410855320块,但ls显示为约6.6 艾字节。 您认为删除这些文件安全吗?谢谢! PS定期拍摄快照真是太好了!:)我不知道如果没有他们我该怎么办。

5
KVM:哪些CPU功能可以使VM更好地运行?
我们正在使用具有以下参数的Ubuntu 12.04: 戴尔R910 内核3.2.0-25-通用#40-Ubuntu SMP x86_64 x86_64 x86_64 GNU / Linux kvm 1:84 + dfsg-0ubuntu16 + 1.0 + noroms + 0ubuntu13 qemu-kvm 1.0 + noroms-0ubuntu13 qemu-common 1.0 + noroms-0ubuntu13 qemu-kvm 1.0 + noroms-0ubuntu13 4个Intel®Xeon®CPU E7-4870 @ 2.40GHz(每个具有10个物理核心,启用HT和Intel VT) Windows guest虚拟机目前没有VirtIO,但是很快就会改变 我们正在这台计算机上运行多个Windows guest虚拟机,其中一个是Windows 2003 32位,另一个是Windows 2008(64位)。我们目前正在努力解决性能问题,并尝试使用CPU型号。 对于Windows 32位来宾,我们通常使用“ qemu-system-x86_64”,例如: /usr/bin/qemu-system-x86_64 -S …

1
使用virt-install创建来宾后如何删除来宾
我从命令行创建了KVM guest虚拟机,并virt-install在其中使用了命令行选项--disk pool=vg0,size=20和--name virt1.example.com。 如何从命令行删除此KVM guest虚拟机?我不再需要了 仅作记录,整个命令行是 virt-install --debug --hvm --vnc --name virt1.example.com --os-type=linux --os-variant=rhel6 --pxe --network network=default,model=e1000,mac=02:54:00:13:be:e4 --disk pool=vg0,size=20 --ram 1024 --vcpus=1 这是一些额外的信息 [root@server ~]# virsh vol-list vg0 Name Path ----------------------------------------- lv0 /dev/vg0/lv0 lv_swap /dev/vg0/lv_swap virt1.example.com.img /dev/vg0/virt1.example.com.img [root@server ~]# virsh list Id Name State ---------------------------------- 3 virt1.example.com running 更新资料 …

5
如何使用libvirt保持恢复的KVM guest虚拟机的时间?
在主机上,我正在使用libvirt和KVM guest虚拟机。当主机关闭时,libvirt会挂起guest虚拟机。主机启动时,libvirt恢复来宾。问题是,例如,如果来宾被暂停并在24小时后恢复,则来宾时间是过去的24小时。 我认为问题可能出在Clocksource上,但是已经设置为“ kvm-clock”。 $ cat /sys/devices/system/clocksource/clocksource0/available_clocksource kvm-clock tsc hpet acpi_pm $ cat /sys/devices/system/clocksource/clocksource0/current_clocksource kvm-clock

2
将Windows 2012 R2从Hyper-V转换为KVM(qemu)
我有一个运行SharePoint 2013的Windows Server 2012 R2,我正尝试从Hyper-V迁移到KVM(qemu)。我已将vhdx文件转换为qcow2格式,并将其复制到KVM服务器(RHEL 7.3) Hyper-V VM被配置为第2代,我已经在KVM中使用UEFI固件(OVMF)创建了一个新VM。 当我启动时,机器进入自动修复模式,但不会启动。我可以打开Cmd提示符,并且这样做,我需要使用本地管理员密码进行身份验证。 我已经运行了以下命令: 键入BOOTREC / FIXMBR,然后按Enter。 键入BOOTREC / FIXBOOT,然后按Enter。 键入Drive:\ boot \ Bootsect.exe / NT60 All,然后按Enter。 但是,VM无法引导始终进入修复模式。 关于我可能需要检查的任何建议或我可能能够使用或购买的任何第三方实用程序,可以帮助我轻松地解决此问题? 如果我登录到命令提示符,则可以运行Diskpart / sel disk 0 / list vol来查看: Volume 0 D CDROM 0 B No Media Volume 1 C NTFS Partition 126GB Healthy Volume 2 …

2
了解Qemu和KVM之间的关系
KVM和Qemu有什么区别?据我了解,后者能够提供“用户模式仿真”,这意味着一个人可以运行为其他某些架构而构建的单个可执行文件,如下所示: # file busybox-sparc busybox-sparc: ELF 32-bit MSB executable, SPARC, version 1 (SYSV), statically linked, stripped # qemu-sparc busybox-sparc ls Packages_arm Packages_i386 arm busybox-armv6l busybox-i686 busybox-powerpc busybox-sparc busybox-x86_64 i386 # ..和“计算机仿真”,这意味着不仅执行了动态二进制转换,而且还仿真了整个虚拟机(视频卡,声卡,网卡,光学设备等)。例如: # qemu-system-sparc64 -hda hda.img -cdrom debian-6.0.5-sparc-CD-1.iso -boot d 据我了解,Qemu不知道如何利用硬件虚拟化(例如x86架构上的Intel VT-x或AMD-V解决方案),在这种情况下KVM可以提供帮助-可以通过KVM支持来启动Qemu。但是,除了可以访问仿真程序以访问特定硬件体系结构上的硬件辅助虚拟化之外,KVM还提供其他功能吗?是否可以仅使用KVM创建整个(CPU,视频卡,I / O设备等)虚拟机?如果是,那么应该使用哪些程序来创建和控制该虚拟机?

2
KVM是1型还是2型管理程序?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,以使其成为服务器故障的主题。 22天前关闭。 KVM是1型还是2型虚拟机管理程序? 我知道类型1虚拟机管理程序在裸机上运行,​​而类型2虚拟机管理程序是在操作系统(例如VMware Workstation)之上运行的应用程序。我也了解类型1和类型2客户端之间的性能差异可能很大。 我很困惑,好像KVM是类型1还是2,因为我知道可以在dom0中安装桌面环境。


2
Strongswan VPN隧道已连接,但流量未通过该路由
我刚刚在Strongswan(4.5)的站点到站点之间建立了一个VPN隧道。隧道看起来不错,并已连接到另一侧,但是似乎无法通过该隧道路由流量。 任何想法? 谢谢! 网络图 +----------------------------------+ |Dedicated server: starfleet | +-----------------+ | | | CISCO ASA | | +-------------------------| internet | | | |eth0: XX.XX.XX.195/29 +-------------------| YY.YYY.YYY.155 | | +-------------------------| +------+----------+ | |virbr1: 192.168.100.1/24 | | | +----+--------------------| | | | | | | | | +-----------------+ | | | |network …

3
超线程和虚拟机?
我已经看过这个线程:Hyper-V和Hyper-threading:开还是关?,但唯一的答案是Windows特有的...。 我正在构建VM服务器(使用Proxmox VE,如果有所作为),并且想知道超线程如何影响虚拟机... 具体来说,如果我最大化虚拟机的数量,超线程会有所帮助还是会损害性能? 同样,最大的虚拟机将是具有约30个客户端(4核/ 8 GB RAM)的终端服务器,以及一个文件服务器(如果有帮助的话)。 更新:服务器是具有1TB RAID 10、32 GB RAM和双Intel Xeon E5530的Dell R410(我不确定确切的型号,但它是具有2+ Ghz的E55xx) 更新:大多数VM将在KVM上。

7
虚拟机高效异地远程备份解决方案的建议
我正在寻找有关备份当前6个虚拟机的建议(并且很快将增长到20个)。目前,我正在运行一个两节点的proxmox集群(这是一个使用kvm进行虚拟化并使用自定义Web前端进行管理的debian基础)。我有两个几乎相同的盒子,分别是AMD现象II x4和华硕主板。每个都有4 500 GB sata2硬盘,其中1个用于os和其他数据用于proxmox安装,另外3个使用mdadm + drbd + lvm在两台计算机之间共享1.5 TB的存储。我将所有虚拟机的lvm映像安装到kvm。我目前能够从一台计算机实时转移到另一台计算机,通常只需几秒钟(在运行带有m $ sql服务器的win2008的最大vm上大约需要2分钟)。我正在使用proxmox的内置vzdump实用程序来拍摄vm'的快照 并将它们存储在网络上的外部硬盘驱动器上。然后,我有了Jungledisk服务(使用机架空间)来同步vzdump文件夹以进行远程异地备份。 这一切都很好,但不是很可扩展。首先,备份本身每晚可能要花费几个小时。通过jungledisk的块级增量传输,同步仅可将一小部分数据异地传输,但仍需要至少半小时。 当然,更好的解决方案是允许我立即获取两个时间点的差异(例如,从上午6点到上午7点写的内容),将其压缩,然后将该差异文件发送到备份服务器,该文件将立即传输到备份服务器。机架空间上的远程存储。我对zfs进行了一些研究,它具有发送/接收的功能。再加上bzip中的一堆数据似乎很完美。但是,似乎使用zfs实现nexenta服务器实际上将需要至少一个或两个以上的专用存储服务器,才能将iSCSI块卷(通过zvol的???)提供给proxmox服务器。如果可能的话,我希望将安装程序保持在最小限度(即没有单独的存储服务器)。 我还简要阅读了有关zumastor的信息。看起来它也可以满足我的要求,但它似乎在2008年停止了发展。 那么,zfs,zumastor还是其他?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.