Jes*_*ess 5 networking libvirt bandwidth-control ubuntu-10.04 kvm-virtualization
是否可以监控/限制 KVM 来宾的带宽?我想在我的服务器上为人们提供虚拟机,但我想小心不要超过我的每月带宽限制。我能找到的唯一支持它的地方是“云”框架,我猜我要么在 Linux 中遗漏了一些简单的东西,要么我需要与我上方的路由器交谈(我无权访问)。
我建议使用libvirt来管理您的 KVM 虚拟机。它使整个事情比使用简单的 QEMU/KVM 容易得多,并且还提供了不错的 CPU、IO 和网络统计信息。您会喜欢virt-top和virt-manager等工具,它们在libvirt框架之上运行。
要从脚本收集虚拟机接口统计信息,您可以使用virsh命令行接口到libvirt或某些语言 API。virsh命令的格式如下:
virsh domifstat VMNAME IFNAME
Run Code Online (Sandbox Code Playgroud)
..其中 VMNAME 是虚拟机的名称,IFNAME 是(虚拟)网络接口的名称。要找出网络接口的名称,您可以执行以下操作:
virsh dumpxml VMNAME
Run Code Online (Sandbox Code Playgroud)
在生成的 XML 输出中,查找您的网络接口定义。查找如下一行:
<target dev='vnet0'/>
Run Code Online (Sandbox Code Playgroud)
在这种情况下,您的 IFNAME 将是“vnet0”。
或者,您可以使用统计信息收集守护程序,例如collectd,它支持监控libvirt统计信息,但在这种情况下,有时存储“virsh domifstat”输出的简单 shell 脚本可能就足够了。
归档时间: |
|
查看次数: |
7615 次 |
最近记录: |