2

对于一个研究项目,我试图在 Ubuntu 服务器 12.04 下的 KVM 中使用 python libvirt 绑定启动尽可能多的 VM。所有虚拟机在启动后都设置为空闲,并使用最少的内存。最多我能够在单个主机上启动 1000 个 VM,此时内核(Linux 3x)变得无响应,即使 CPU 和内存使用量都远未接近极限(48 核 AMD,128GB 内存。)之前这样,在几百个 VM 之后,启动过程逐渐变慢。

我认为这一定与 KVM/Qemu 驱动程序有关,因为 linux 内核本身在处理这几个进程时应该没有问题。但是,我确实读到 Qemu 驱动程序现在是多线程的。关于这种缓慢的原因可能是什么的任何想法 - 或者至少我应该从哪里开始寻找?

4

2 回答 2

2

您正在使用 qemu-kvm 正确启动所有 VM,并且在 100 多个 VM 之后,您会觉得它变得越来越慢。所以当你觉得它停止使用 kvm 时,只需使用 qemu 启动,我希望你会看到同样的缓慢。我的猜测是,在这么多虚拟机之后,KVM(硬件支持)就会耗尽。因为 KVM 只是用于添加少量硬件寄存器的软件层。所以 KVM 可能是这里的罪魁祸首。

还有这个实验的目的是什么?

于 2012-09-16T08:25:45.883 回答
-1

The following virtual hardware limits for guests have been tested. We ensure host and VMs install and work successfully, even when reaching the limits and there are no major performance regressions (CPU, memory, disk, network) since the last release (SUSE Linux Enterprise Server 11 SP1).

Max. Guest RAM Size --- 512 GB

Max. Virtual CPUs per Guest --- 64

Max. Virtual Network Devices per Guest --- 8

Max. Block Devices per Guest --- 4 emulated (IDE), 20 para-virtual (using virtio-blk)

Max. Number of VM Guests per VM Host Server --- Limit is defined as the total number of virtual CPUs in all guests being no greater than 8 times the number of CPU cores in the host

for more limitations of KVm please refer this document link

于 2012-11-02T08:40:49.427 回答