Articles of kvm virtualization

使用PCI-Pass Through将video卡分配给KVM访客虚拟机

这是使用KVM的Ubuntu 12.04LTS。 系统有一个显卡,可以看到pipe理程序的内核,如下所示: # virsh nodedev-dumpxml pci_0000_21_00_0 <device> <name>pci_0000_21_00_0</name> <parent>pci_0000_20_02_0</parent> <driver> <name>nvidia</name> </driver> <capability type='pci'> <domain>0</domain> <bus>33</bus> <slot>0</slot> <function>0</function> <product id='0x0a65'>GT218 [GeForce 210]</product> <vendor id='0x10de'>NVIDIA Corporation</vendor> <capability type='virt_functions'> </capability> </capability> </device> 还有一个PCIfunction#1,它是我省略了dumpxml的卡的audio部分。 在我的域XML中,我有以下几点: <hostdev mode='subsystem' type='pci' managed='yes'> <source> <address domain='0x0000' bus='0x21' slot='0x00' function='0x0'/> </source> <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0' multifunction='on'/> </hostdev> <hostdev mode='subsystem' type='pci' […]

虚拟化:vCPU与超线程主机CPUlocking?

我在具有Core i7-2600 CPU的Linux服务器上使用KVM / libvirt,它具有以下CPU拓扑(1个插槽,4个核心,8个线程): Physical | Logical ———+——– Core 0 | 0, 4 Core 1 | 1, 5 Core 2 | 2, 6 Core 3 | 3, 7 我通常在这个主机上运行3个虚拟机,每个虚拟机有2个虚拟CPU。 为了通过保持caching热度来提高性能,我想将VM的vCore固定到固定主机内核。 现在的问题是VM核心到主机核心的映射,考虑到主机CPU使用超线程的事实: 选项1:每个物理主机核心一个VM VM1: logical cores 1, 5 VM2: logical cores 2, 6 VM3: logical cores 3, 7 这样,虚拟机的两个虚拟核心将被映射到主机CPU上的同级超线程。 由于两个主机核心共享一些caching,所以客户代码将从caching本地获益。 但考虑到两个超线程也共享一些function单元,它们在计算负载下会相互减速。 选项2:分布式VM核心 VM1: logical cores […]

用于NAT后面的libvirt主机的TFTP

这花了我整天的工作,所以我想我会得到这个logging在这里! 我有一个使用NAT的LibVirt主机,而不是为托pipe的虚拟机桥接,使用安装时由LibVirt构build的默认IPTables规则。 我可以使用虚拟CD安装操作系统,然后获得完整的Internet连接,但是由于TFTP *在PXE启动方面更为复杂,伪装似乎不会将TFTP回复传递给虚拟机。 我可以看到来自tcpdump的各种实例的以下数据包序列: VM udp / ephemeral到LibVirt主机udp / 69请求文件 LibVirt主机udp /短暂到TFTP服务器udp / 69请求文件 TFTP服务器udp / ephemeral2到LibVirt主机udp /短暂的 在这一点上没有进一步的传递和虚拟机tftp客户端超时。 我尝试使用内核模块ip_conntrack_tftp / nf_conntrack_tftp和ip_nat_tftp / nf_nat_tftp,但这并没有帮助。 *虽然客户端到服务器的初始请求在udp / 69上,但是从服务器到客户端的回复来自一个伪随机临时端口。

如何使用yum在CentOS 5.3上安装kvm?

我试图在CentOS 5.3上安装kvm。 做“ yum install kvm ”不起作用。 问题是英特尔kvm内核模块不会加载: # modprobe kvm-intel FATAL: Module kvm_intel not found. kvm内核模块(在kmod-kvm包中)是针对内核2.6.18-160.el5编译的,但是我运行的是2.6.18-164.el5。 这意味着我需要加载的内核模块是/lib/modules/2.6.18-160.el5/extra/kmod-kvm/ ,但是由于我没有运行这个版本的内核,它没有find模块,如果我尝试加载它。 CentOS 5.3中的默认内核是2.6.18-128.el5 。 如果我做一个“ yum upgrade kernel ”,我得到2.6.18-164.el5。 据我所知,CentOS资料库没有2.6.18-160.el5。 至less,我不能只做“ yum install kernel-2.6.18-160.el5 ”。 我以为我可能会将kmod-kvm软件包作为源RPM下载,并将其与我的内核构build,但是执行yumdownloader –source kmod-kvm无法find源版本。

将正在运行的Linux系统转换为另一台机器上的KVM实例

我有两台希望虚拟化的物理机器。 我无法 (从物理上)将硬盘从任何一台机器插入到将作为虚拟主机的新机器中,所以我认为使用dd来复制系统的整个结构是不可能的。 我怎样才能把这些机器从硬件迁移到KVM环境呢? 我已经设置了空的,未格式化的LVM逻辑卷来托pipe他们的文件系统,但理解为虚拟机提供一个真正的分区可以实现比在文件系统上粘贴图像更高的性能。 我会更好地创build新的操作系统安装和rsyncing差异了吗? FWIW,两台虚拟机运行的是CentOS 5,主机运行的是Ubuntu Server 10.04,没有特别重要的原因。 我怀疑这个问题太重要了,因为它仍然是KVM和libvert。

在KVM linux中构build一个服务器

我拥有一台Linux服务器。 现在有几个用户想要在其上构buildWeb服务,但他们需要不同的环境。 为了方便,我给每个用户一个KVM虚拟机root的权限。 但是显然linux服务器只有一个IP。 如何将外部请求传递给相应的虚拟机? (我希望它有点复杂,如果是这样的话,我至less需要一些文档/网站,我可以开始阅读。)

如何在Debian / Ubuntu上将一系列公有IP连接到KVM虚拟机

我已经尝试了几个星期来弄清楚正确的networkingconfiguration,以便与我的服务器上运行的KVM虚拟机共享一系列公有IP, 但到目前为止运气不多 并在友好的ServerFault社区的帮助下,我设法使其工作。 你可以在下面find我的工作设置: 我的ISP将所有的stream量路由到192.168.8.118 (因此需要成为eth0的主要IP),但我的configuration是192.168.239.160/28 。 这里是主机上的/etc/network/interfaces : # Loopback device: auto lo iface lo inet loopback # device: eth0 auto eth0 iface eth0 inet static address 192.168.8.118 broadcast 192.168.8.127 netmask 255.255.255.224 gateway 192.168.8.97 pointopoint 192.168.8.97 # This device acts as gateway for the bridge, so provide a route. up ip route add 192.168.8.118/32 […]

如何在Windows Server 2008 Std x64中安装virtio balloon驱动程序

我试图在从微软网站下载devcon.exe后,在virtio驱动ISO的INF文件中运行安装命令。 我得到以下错误,我不知道如何进步; C:\Users\Administrator\Desktop\ADM64>devcon install BALLOON.inf PCI\VEN_1AF4&DEV_1002&SUBSYS_00051AF4&REV_00 devcon.exe failed. 'DEV_1002' is not recognized as an internal or external command, operable program or batch file. 'SUBSYS_00051AF4' is not recognized as an internal or external command, operable program or batch file. 'REV_00' is not recognized as an internal or external command, operable program or batch file. 谢谢。

KVM / Qemu客户关机问题

在运行具有KVM / Qemu虚拟化的CentOS 6.3的主机和客户机上,我有以下情况: “virsh shutdown kvm1”根本没有closures。 virsh列出客人作为运行。 “service libvirt-guests stop”在280秒内没有closures(shutdown_timeout = 300。on_shutdown = shutdown) 客人内部“现在关机”,客人变得无法到达。 virsh列出guest作为运行,但它无法连接到它。 在客人作品中“shutdown -h now”。 在客人作品中“shutdown -r now”。 Libvirt日志没有显示前三种情况。 我可以把客人停下来。 Grub没有acpi = off。 在下面的@mgorven回复之后安装了ACPI。 除了来自/ var / log / messages的这些条目之外,来宾日志上没有关于ACPI的内容 。 令人费解的是,有关ACPI的条目,因为它直到日志的最后一行才被安装。 底线,我不能从客人外面关掉。 我要检查什么来确定发生了什么?

pages_sharing和pages_shared在ksm上的差异

有人可以帮我理解这一点。 我正在运行带有5个虚拟磁盘的kvm主机。 这些是ksm司机统计 each page is 4KB cat /sys/kernel/mm/ksm/pages_shared 162221 cat /sys/kernel/mm/ksm/pages_sharing 264281 cat /sys/kernel/mm/ksm/pages_unshared 241483 “pages_sharing”是由vms创build的页面总数。 和“pages_shared”是被发现相似并合并在一起的页面的数量。 if that is true then why is pages_sharing-pages_shared != pages_unshared 264281-162221 != 241483