标签: kvm-virtualization

为什么我在 Linux 的 KVM 下运行的 Windows 7 VM 没有使用所有的虚拟处理器?

全部

自从我将其中一个 VM 从 Windows 2008 Server 迁移到 Windows 7(终极版)以来,我的服务器出现了问题:尽管我为 VM 分配了四个核心,它甚至似乎看到了它们,但它似乎认为它有两个核心!

它可以识别我的处理器但不使用它们!

谁能告诉我这里发生了什么?我认为这可能是 KVM 和 Windows 7 之间存在一些不兼容,但由于它看到了虚拟处理器,我开始认为不是......有任何线索吗?

这是进程管理器的屏幕截图,在同一个盒子上只显示了两个内核:

任务管理器

windows-7 multi-core kvm-virtualization

14
推荐指数
3
解决办法
3万
查看次数

如何自动启动由 virt-manager 创建的 VM?

我创建了一个在 kvm/qemu 上运行的带有 virt-manager 的虚拟机。当通过 virt-manager 启动时,机器运行良好。但是,我希望能够通过 init.d 中的脚本启动和停止 VM,以便它与主机一起启动和关闭。我需要让 virt-manager 显示机器正在运行,并且能够通过那里连接到它的控制台。

当我使用ps -eaf | grep kvm通过 virt-manager 启动虚拟机后运行生成的命令行时,我收到一些有关重定向字符设备的控制台消息,但机器确实启动并正常运行。但是,我没有从 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 tablet -vnc 127.0.0.1:1 -k en-us -vga cirrus
Run Code Online (Sandbox Code Playgroud)

virtualization kvm-virtualization

14
推荐指数
5
解决办法
5万
查看次数

在 Ubuntu 上使用 KVM 使用 libvirt 0.8.3 从主机到客户机的端口转发

主机有一个可用的外部 IP,因此我使用 NAT 设置了我的 KVM 来宾。

如何设置端口转发来转发一些来自外部的请求给客人?

我找不到任何关于此的文档。最接近的答案可能是这个答案,但也提到在 libvirt 0.8.3 中有更简单的方法来做到这一点。有谁知道更现代的方法来做到这一点?

ubuntu libvirt kvm-virtualization

14
推荐指数
1
解决办法
1万
查看次数

有没有办法确定哪个虚拟接口属于kvm主机中的虚拟机?

我正在使用带有桥接网络的 qemu/kvm。在主机中有几个没有 IP 的“vnetX”网络接口。我正在寻找一种方法来了解哪个 vnetX 属于虚拟机。

我尝试将这些接口上的 MAC 地址值与虚拟机上的 MAC(或定义它们的 XML)匹配,但不匹配。

有 brctl show 显示属于网桥的 vnet 接口,但这不是有用的信息。

有没有办法知道这种关系?谢谢!!

networking bridge qemu kvm-virtualization

14
推荐指数
3
解决办法
4万
查看次数

KVM 来宾 io 比主机 io 慢得多:这正常吗?

我在 CentOS 6.3 上设置了 Qemu-KVM 主机系统。四个 1TB SATA 硬盘在软件 RAID10 中工作。来宾 CentOS 6.3 安装在单独的 LVM 上。人们说他们认为客人的表现几乎等同于主持人的表现,但我不这么认为。我的 i/o 测试显示来宾系统的性能比主机系统慢 30-70%。我尝试更改调度程序(设置elevator=deadline在主机和elevator=noop来宾上),blkio.weight在 cgroup 中设置为 1000,将 io 更改为 virtio ......但这些更改都没有给我任何显着的结果。这是访客 .xml 配置部分:

<disk type='file' device='disk'>
  <driver name='qemu' type='raw'/>
  <source file='/dev/vgkvmnode/lv2'/>
  <target dev='vda' bus='virtio'/>
  <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
</disk>
Run Code Online (Sandbox Code Playgroud)

有我的测试:

主机系统:

臭氧测试

# iozone -a -i0 -i1 -i2 -s8G -r64k
                                                            random  random 
              KB  reclen   write rewrite    read    reread    read   write 
         8388608      64  189930  197436   266786   267254   28644 …
Run Code Online (Sandbox Code Playgroud)

linux storage software-raid kvm-virtualization

14
推荐指数
1
解决办法
4万
查看次数

使用 FlashCache 改善 IO

我有一台带有 2 个硬盘驱动器 (2x 1 TB) 的服务器,以 RAID 1 (SW-RAID) 运行。我想通过使用flashcache. 上面运行着 KVM 虚拟机,使用LVM.

对此,我有以下问题:

  • 这甚至会起作用吗?flashcache适用于块设备,但是这些都是具有自己设置的虚拟机。
  • 我希望提高多少性能?大多数虚拟机运行网站和一些主机游戏。
  • SSD需要多大?拥有更大的 SSD 是否会提高性能,因为它能够缓存更多文件?
  • 如果SSD死了会怎样?是否flashcache可以从传统 HDD 检索文件,我可以简单地更换 SSD?
  • writebackwritethroughand相比会快多少writearound

不幸的是,我无法访问测试系统,所以我可以flashcache在不卸载磁盘的情况下安装在实时服务器上吗?我在这里找到了一个很棒的教程,我将使用它。

lvm centos kvm-virtualization flashcache

14
推荐指数
1
解决办法
7387
查看次数

libvirt+KVM 的快照/回滚?

我最近开始在具有 8G 内存的 Linux 主机系统上将 KVM 用于我的开发/测试环境。之前,我在我的虚拟环境中使用 VMware Fusion,但我的 Macbook 只有 2G 内存。我在主机上尝试了 VMware Server 和 ESX 而不是 KVM,但是 webUI 不能在 Mac OSX 的 Firefox 上运行,无论如何我们将使用 KVM 做更多的事情。

我想念的 VMware 的主要功能是强大的快照/回滚,但我在 KVM 中缺少它。我理解快照命令,但它在完成后关闭来宾操作系统,然后复制磁盘映像以保留其状态很麻烦。

这真的是在 KVM 上管理快照的最佳方式吗?

virtualization snapshot vmware-esx kvm-virtualization

13
推荐指数
2
解决办法
1万
查看次数

备份 qcow2 kvm 来宾

我找不到有关备份 qcow2 kvm 来宾的任何好的信息。我对来宾运行状态并不真正感兴趣,只对文件系统感兴趣。这个问题建议使用savevm但会创建一个适当的快照。我想远程备份文件系统。

有没有比以下更好的方法:

  1. suspend virt_machine # 暂停虚拟机
  2. rsync --sparse /home/vm/image.qcow2 /tmp/image.dec_14_2010.qcow2 # 将镜像复制到同一驱动器上
  3. 恢复 virt_machine
  4. rsync --sparse /tmp/image.dec_14_2010.qcow2 ssh://backup@backupmachine:/vmbackups

这有几个缺点。首先,复制一个巨大的图像文件需要(相对)很长时间。其次,我必须始终确保我有足够的空间来备份我的机器。这并不理想。有没有其他更好的方法来管理 KVM 备份?

谢谢。

virtualization backup virtual-machines kvm-virtualization

13
推荐指数
2
解决办法
2万
查看次数

virsh 控制台和 tty 大小

我有一个通过 ssh 连接的虚拟化服务器。如果我现在更改窗口的大小,它将自动传播到服务器。使用stty -a,检查列和行值最容易看到。

然后我使用virsh console连接到基于 KVM 的虚拟机上的串行接口。当我现在更改窗口的大小时,它不会传播到虚拟服务器。这最容易通过检查 看到,stty -a当我更改窗口大小时,它不会在虚拟机上更新。这意味着换行符在终端中无法正常工作,并且任何依赖窗口大小进行格式化的应用程序(emacs、man 等)都会被弄乱,除非客户端上的窗口大小与服务器上的默认大小匹配。

一种解决方法是使用 stty 手动设置窗口大小以匹配客户端窗口,但我想知道是否有任何方法可以让此信息自动传播并在虚拟机中设置窗口大小。

linux terminal stty kvm-virtualization

13
推荐指数
1
解决办法
8689
查看次数

如何在 KVM 主机上挂载虚拟机的 LVM 分区?

如果我尝试在 KVM 主机上执行以下操作:

# kpartx -av /dev/VolGroup00/kvm101_img
add map kvm101_img1 : 0 208782 linear /dev/VolGroup00/kvm101_img 63
add map kvm101_img2 : 0 125612235 linear /dev/VolGroup00/kvm101_img 208845
# mount /dev/mapper/kvm101_img1 /mnt
Run Code Online (Sandbox Code Playgroud)

然后我正在安装 /boot 分区。但是,如果我输入以下内容,则会出现错误:

# mount /dev/mapper/kvm101_img2 /mnt
mount: you must specify the filesystem type
Run Code Online (Sandbox Code Playgroud)

这是客户机上的 fdisk 布局:

# fdisk -l
Device Boot      Start         End      Blocks   Id  System
/dev/hda1   *           1          13      104391   83  Linux
/dev/hda2              14        7832    62806117+  8e  Linux LVM
Run Code Online (Sandbox Code Playgroud)

是否可以在来宾上找到根分区并将其挂载到主机系统上?

virtualization linux lvm kvm-virtualization

13
推荐指数
3
解决办法
4万
查看次数