这听起来可能有点偏执,但我真的怀疑我配置的 libvirt+kvm 是否在 debian 中使用了任何硬件加速。我使用这指南。事实上我已经检查过了,kvm-intel 模块肯定已经加载。但是在使用 freebsd 的虚拟机中,例如,在安装操作系统、使用 csup 提取端口树,当然还有编译端口时,我遇到了巨大的延迟。该机器上的资源非常大:4 核 CPU 和 4GB 内存。我可以确认,在同一台机器上手动设置 libvirt 之前,我在 debian 上对 proxmox 进行了相同的设置。所以我确实知道客户机的速度有多快。所以这真的不是关于硬件问题的问题,我的意思是 OVH 托管声明:使用 Intel Core i5-2400 4x3.1+ GHz 6 Mb L2 - QPI 5 GT/秒,虚拟化为:VT 指令
正如我之前所说,此设置有效。唯一的问题可能是,我错过了内核模块配置,但已加载 kvm-intel,我的朋友检查到 libvirt 也使用它。所以请告诉我我做错了什么,也许指南给出了错误的步骤..?也许 freebsd 客户机不支持某些东西?如果您需要其他信息,请在评论中写下。也许值得一提的是,我已经更新了内核,因为已完成 debian 的新安装(在主机上)。也许加载的模块找不到与内核相关的东西..无论如何,我真的很困惑下一步该怎么做。
此配置用于创建虚拟机:
# virt-install --connect qemu:///system -n bsd -r 4096 --vcpus=2 --disk path=/home/vm/hdd/bsd.img,size=100 -c /home/vm/iso/FreeBSD-8.2-RELEASE-amd64-disc1.iso --vnc --noautoconsole --os-type unix --os-variant freebsd7 --accelerate --network=bridge:br0,mac=02:00:00:a7:66:32 --hvm
更新: ps -ef | grep qemu
106 2370 1 5 09:40 ? 00:24:10 /usr/bin/kvm -S -M pc-0.12 -enable-kvm -m 4095 -smp 2,sockets=2,cores=1,threads=1 -name roman -uuid 405855d7-7fbe-7ecb-d125-b23fd9c9d07a -nodefaults -chardev socket,id=monitor,path=/var/lib/libvirt/qemu/roman.monitor,server,nowait -mon chardev=monitor,mode=readline -rtc base=utc -boot c -drive file=/home/vm/hdd/roman.img,if=none,id=drive-ide0-0-0,boot=on,format=raw -device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 -drive if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw -device ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 -device ne2k_pci,vlan=0,id=net0,mac=02:00:00:a7:66:31,bus=pci.0,addr=0x3 -net tap,fd=32,vlan=0,name=hostnet0 -chardev pty,id=serial0 -device isa-serial,chardev=serial0 -usb -vnc 127.0.0.1:0 -k en-us -vga cirrus -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x4
答案1
-enable-kvm
在 cmd 行中表示 VT 您未处于模拟模式。但是,我也看到-M pc-0.12
那里,我不确定这会如何影响性能。-M 表示模拟机器类型,这可能是这样设置的,因为您指定了 BSD 作为客户操作系统。我会尝试为 RHEL6 构建一个 VM(例如),然后在那里安装 FBSD,看看性能是否有变化。
进一步查看,您的第一个磁盘作为 ide 工作(比 virtio 慢得多),netdev 是 ne2k,也比 virtio 慢得多。不确定是否有适用于 virtio_net 或 virtio_blk 的 FBSD 驱动程序,但值得快速谷歌搜索
答案2
您可以info kvm
在 qemu 监视器中调用(在 Qemu 窗口中Ctrl+ Alt+ ,或者您可以使用 启动 qemu )2-monitor stdio