什么东西可以监控OpenStack呢?OpenStack对监控的需求起码有以下这些:

 

  • 不仅要能监控物理机,也能监控虚机
  • 监控信息也必须是tenant隔离的
  • 监控项的收集应该是自动地
  • 监控工具应该一般化以监控任何设备
  • 监控工具必须提供API

下面是监控工具的一般架构:

 

zhjk

 

网上搜索了一下,现在主流的监控工具有:Nagios, cacti, Zabbix, Muni, Zenoss。我不是做运维的对这些工具都不熟,以前不熟,现在也不熟。下面是一些理解,不一定准。

Nagios,最老牌了,比较通用的监控工具。特大的特点是报警。图形化功能一般般。一般要安装Agent,配置起来看网上的说法是比较复杂的,没用过,没实际发言权。

cacti,图形化功能不错,所以Nagios一般结合它来使用。

Zabbix,监控和图形化功能都还可以了,尤其有一本电子书 zabbix 1.8 network monitoring

Zenoss, 监控新贵,它使用无Agent的通用技术如SNMP和SSL来监控,部署起来会比较方便。尤其是Zenoss公司有人现在也加入OpenStack社区了,专门开发了一个OpenStack特有的扩展(

https://github.com/zenoss/ZenPacks.zenoss.OpenStack)不幸的是,目前只支持Nova API 1.1,且它只能收集单个tenant的数据,不利于rating和billing。

OpenStack Ceilometer工程主要监控的是tenant下虚机的数据,用来做billing的,物理机的监控支持不大好。

比较来比较去,如果是我,可能会做如下选型决定,不一定正确 :

Nagios 或者 Zenoss (视情况)

 

下面内容来自:http://docs.openstack.org/developer/ceilometer/, 我们看一下Ceilometer工程的现状, 架构如下:

 

zhjk2

 

运行OpenStack各组件的节点上一般有Agent来收集信息,收集后发给MQ,Ceilometer的Collector进程监控到数据之后存储到DB之中。从http://docs.openstack.org/developer/ceilometer/measurements.html 这页显示的监控项来看,目前Ceilometer监控来的数据主要来只是用来做billing的

 

文章来源:http://blog.csdn.net/quqi99/article/details/9400747
文章作者:张华 http://blog.csdn.net/quqi99