我正在开发一个在KVM上运行虚拟机的调度器。 调度具有内存和CPU资源的过度承诺。 为此,我需要一个基于CLI的监视工具,使我能够提供有关每个虚拟机的资源使用情况的信息,因为可能是由于资源的过度configuration,特定主机上的虚拟机运行速度非常缓慢,具体取决于每个虚拟机运行的基准/程序,然后我需要将虚拟机迁移到另一台主机等等。
我研究了基于libvirt的工具,比如collect,MUNIN,Nagios-vert等等( http://libvirt.org/apps.html#monitoring )我也看了一下Ubuntu的实用程序perf-kvm( http://manpages.ubuntu .com / manpages / maverick / man1 / perf-kvm.1.html )
我想问问社区会推荐哪种基于CLI的方式,这样我就可以做一个自动调度程序来处理上述情况。
你可以使用top,htop,vmstat,dstat,iotop …你也可以从/ proc // stats等中读出信息
就像是:
有些事情需要在客户操作系统中完成,为此您应该使用访客代理。 有几个已经可用 – 只要看oVirt.org的例子。 顺便说一下,如果你在oVirt.org上增加调度器,join这个项目,而不是重新发明轮子,也许会更好?
无论如何,一些统计数据不能通过标准方法收集,如每个进程的iops使用率,而不是每个块设备,并且为此您需要systemtap。 收集信息之前汇总信息的一个好方法是collectd