Questions tagged «kvm-virtualization»

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

3
virsh控制台和tty大小
我有一个通过ssh连接到的虚拟化服务器。如果现在更改窗口的大小,它将自动传播到服务器。使用stty -a,检查列和行值最容易看到。 然后virsh console,我用于连接到基于KVM的虚拟机上的串行接口。现在,当我更改窗口的大小时,它不会传播到虚拟服务器。通过选中stty -a,最容易看出这一点,当更改窗口大小时,该值不会在虚拟机上更新。这意味着换行符在终端中无法正常工作,并且任何依赖于窗口大小进行格式化的应用程序(emacs,man等)都将混乱,除非客户端上的窗口大小与服务器上的默认大小匹配。 一种解决方法是使用stty手动设置窗口大小以匹配客户端窗口,但是我想知道是否有任何方法可以使此信息传播并自动在虚拟机中设置窗口大小。

1
复制稀疏文件的最快方法是什么?什么方法产生的文件最小?
背景:我正在复制一个稀疏的qcow2 VM映像,该映像大小为200GB,但是具有16GB的已分配块。我尝试了多种方法在同一服务器上复制此稀疏文件,并获得了一些初步结果。环境是RHEL 6.6或CentOS 6.6 x64。 ls -lhs srcFile 16G -rw-r--r-- 1 qemu qemu 201G Feb 4 11:50 srcFile 通过cp-最佳速度 cp --sparse=always srcFile dstFile Performance Notes: Copied 200GB max/16GB actual VM as 200GB max/26GB actual, bloat: 10GB Copy time: 1:02 (mm:ss) Via dd-最佳整体表现 dd if=srcFile of=dstFile iflag=direct oflag=direct bs=4M conv=sparse Performance …

4
如何减少KVM虚拟机磁盘映像的大小?
如何减小或缩小KVM虚拟机磁盘的大小? 我分配了一个500GB的虚拟磁盘(存储在/var/lib/libvirt/images/vm1.img中),但发现此功能太过强大了,所以现在我想释放一些空间供其他虚拟磁盘使用。机器。关于如何增加而不是减少图像存储量似乎有很多答案。我找到了virt-resize工具,但它似乎仅适用于原始磁盘分区,而不适用于磁盘映像。 编辑:我正在使用带有Ext4格式化分区的LVM。 编辑:显示我的LVM分区布局的GParted屏幕截图。我需要做更多的事情,然后才调整文件系统的大小。我知道没有安全的方法来调整LVM的大小。而且请不要告诉我使用pvresize。尽管名称如此,它不支持调整LVM的大小。 我确实尝试过sudo pvresize /dev/vda5,但是它只是说physical volume "/dev/vda5" changed但实际上并没有减小尺寸。 我尝试开始parted手动设置分区大小(非常危险),但是这样做print all只会给我错误“ / dev / sr0无法识别的磁盘标签”。 编辑:通过遵循这些指令,我能够成功地缩小逻辑卷和物理卷(尽管我必须记住要在指令所省略的某些命令之前和之后激活和停用lvm。 现在,GParted显示了250G的未分配可用空间。如何从KVM磁盘映像中删除它,并将其返回给底层虚拟机管理程序?

1
使用Firewalld为VM配置1:1 Nat
我已经在服务器中设置了2个虚拟机,并且正在尝试使用CentOS 7上的Firewalld为它们设置1:1 NAT。当前两个虚拟机都位于虚拟网桥(virbr0,vnet0,vnet1)的后面,并且已经制作了副本与它们一起使用的每个IP的NIC数量。我想这样设置: eth0:0(公共IP)-----> vnet0(内部IP); eth0:1(公用IP)-----> vnet1(内部IP) 据我了解,我正在寻找1:1 NAT,但不确定如何设置。我最初用桥接器配置了所有内容,但是托管服务提供商不允许网络上的桥接器,虚拟NIC的虚构Mac使得一切都从网络上消失了。 我已经尝试了一些方法,但对防火墙保护还不太满意。


6
将目录转换为QEMU / KVM虚拟磁盘映像
我有一个充满数据的目录/var/backups/disk1,我想将其转换成虚拟磁盘映像,然后可以使用QEMU或KVM进行引导(该目录包含虚拟机的文件系统,通过rsync复制出来)。 尽管有很多说明可以将完整的物理磁盘转换为虚拟磁盘,但是将单个目录的内容打包为虚拟磁盘映像却比我想象的要困难得多。有任何想法吗? 顺便说一句,我知道我可以qemu-img用来将块设备转换为虚拟磁盘(例如qemu-img convert -f /dev/sdc -O qcow2 disk.qcow2),因此,如果我只能使该目录/var/backups/disk1看起来像是块设备,那么理论上我应该可以使用qemu-img。我曾考虑过使用NBD或回送设备将目录公开为块设备的创新方法,但是没有成功。


9
有人在生产中使用KVM吗?
已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 我一直在尝试在Ubuntu 9.10上使用KVM设置一对服务器,以在它们之间托管8个虚拟机,最终导致各种问题,从VM冻结到无法启动。 我已经设置并运行了一个虚拟服务器,然后设置了第二个虚拟服务器,当涉及OpenSSL的任何操作都将导致VM以一种怪异的方式锁定时-所有网络流量都将停止,它不会在控制台上处理登录,但是它并没有占用主机任何CPU时间。第一台虚拟服务器是相同的,并且运行良好。 我尝试设置的另一台VM已安装好Ubuntu,然后拒绝重新启动,并抛出了与XFS有关的内核异常。 我现在已经在两台主机上都安装了Citrix XenServer 5.5,并且现在设置我的第三个VM完全没有问题。尝试VMware时,我也有同样的经历,但是我更喜欢Xen,因为它似乎在免费许可证上提供了更多功能。 我的问题是我只是不喜欢KVM,还是KVM看起来不稳定?您是否在生产中使用或计划使用KVM,您的成功程度如何? 编辑: 感谢所有的答案。我最近将两台物理服务器升级到了使用KVM 0.12.3的Ubuntu 10.04 LTS。我现在在KVM上安装我的第六个虚拟机,甚至还没有暗示我以前遇到的问题,所以我现在坚持使用KVM :)

7
有没有办法确定哪个虚拟接口属于kvm主机中的虚拟机?
我正在使用qemu / kvm和桥接网络。在主机中,有几个没有IP的“ vnetX”网络接口。我正在寻找一种方法来知道哪个vnetX属于虚拟机。 我试图将这些接口上的MAC地址值与虚拟机(或定义它们的XML)上的MAC地址相匹配,但是不匹配。 有brctl show显示了属于网桥的vnet接口,但这不是有用的信息。 有没有办法知道这种关系?谢谢!!

2
什么是bridge_fd?
我正在Ubuntu 9.04(服务器)上创建网桥网络 我设置以下配置文件 / etc / network / interfaces auto lo iface lo inet loopback auto eth0 iface eth0 inet manual auto br0 iface br0 inet static address 192.168.1.10 network 192.168.1.0 netmask 255.255.255.0 broadcast 192.168.1.255 gateway 192.168.1.1 bridge_ports eth0 bridge_fd 9 bridge_hello 2 bridge_maxage 12 bridge_stp off 我不知道此参数会影响bridge_fd,bridge_hello,bridge_maxage,bridge_stp


6
如何自动启动virt-manager创建的VM?
我用virt-manager创建了一个在kvm / qemu上运行的虚拟机。通过virt-manager启动时,机器运行良好。但是,我希望能够通过init.d中的脚本来启动和停止VM,以便它随主机一起上下移动。我需要让virt-manager证明机器正在运行,并能够通过那里连接到它的控制台。 当我使用ps -eaf | grep kvm通过virt-manager启动vm之后通过运行产生的命令行时,我收到一些有关重定向字符设备的控制台消息,但是计算机确实可以启动并正常运行。但是,virt-manager没有任何迹象表明它已经开始。如何修改命令行以让virt-manager接管正在运行的VM?在virt-manager之外启动时,命令行上还有其他需要更改的内容吗? 命令行(为便于阅读而略微重新格式化): /usr/bin/kvm -S -M pc-0.12 -enable-kvm -m 512 -smp 1 -name BORON \ -uuid fa7e5fbd-7d8e-43c4-ebd9-1504a4383eb1 \ -chardev socket,id=monitor,path=/var/lib/libvirt/qemu/BORON.monitor,server,nowait \ -monitor chardev:monitor -localtime -boot c \ -drive file=/dev/FS1/BORON,if=ide,index=0,boot=on,format=raw \ -net nic,macaddr=52:54:00:20:0b:fd,vlan=0,name=nic.0 \ -net tap,fd=41,vlan=0,name=tap.0 -chardev pty,id=serial0 -serial chardev:serial0 \ -parallel none -usb -usbdevice …

1
KVM / Qemu,Ubuntu:为什么更多的来宾CPU可以快速增强Disk-I / O?
我们有一个由两个节点组成的Heartbeat / DRBD / Pacemaker / KVM / Qemu / libvirt群集。每个节点都运行带有以下软件包/版本的Ubuntu 12.04 64位: 内核3.2.0-32-通用#51-Ubuntu SMP DRBD 8.3.11 qemu-kvm 1.0 + noroms-0ubuntu14.3 libvirt 0.9.13 起搏器1.1.7 心跳3.0.5 虚拟客户机正在运行Ubuntu 10.04 64位和Ubuntu 12.04 64位。我们使用libvirt功能将主机CPU的功能传递给虚拟客户机,以实现最佳的CPU性能。 现在,这是此群集上的常见设置: VM“监视”具有4个vCPU VM“监视”使用ide作为磁盘接口(出于显而易见的原因,我们目前正在切换到VirtIO) 我们最近进行了一些简单的测试。我知道他们不是专业人士,没有达到高标准,但是他们已经显示出强劲的趋势: 节点A正在运行虚拟机“ bla”节点B正在运行虚拟机“监控” 当我们将文件从VM“ bla”同步到VM“ monitoring”时,我们仅达到12 MB / s。当我们在虚拟机“监控”中执行简单的dd if = / dev / null of // …

1
将USB驱动器直接映射到libvirt KVM虚拟机?
我正在搜索有关使用libvirt将现有驱动器(USB驱动器)映射到KVM虚拟机的信息。我一直在浏览http://libvirt.org/formatstorage.html#StoragePoolTarget。但是我不太了解将现有设备公开到VM所需的选项(甚至可能的话)。 从我正在阅读的target内容来看,该元素期望该path元素到计算机上的文件夹中以存储基于文件的图像。可以是path这样的设备/dev/sdc1吗?用type的raw?


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.