OpenStack企业云平台监控实践

摘要:
《OpenStack企业云平台架构与实践》结合作者亲身经历的各类OpenStack的咨询、规划和实施经验,从理论和工程角度,讲述如何将OpenStack变成企业可靠的、托管企业各类生产环境的云平台的方方面面。本文节选自第8章。
性能监控

对于OpenStack云平台,主机、存储和网络的监控需求和传统IT环境是一样的,关注的主要指标包括 CPU、内存、磁盘、网络I/O等。本文对于监控并不会展开说明,这里展示在OpenStack部署中使用最多的一款开源软件Ganglia。

Ganglia需要在各个节点运行客户端程序,在中心节点部署服务器进程,来对整个集群的性能进行监控,并提供各种视图。另外,Ganglia服务器端进程还可以组成集群,提供高可靠性,用于支持大型或生产环境的监控。

图1展示了用Ganglia来展现一个由5节点组成的机群的Load、内存、CPU和网络I/O的视图,并以时间轴来显示。另外历史数据也被保留和查看。



图1  Ganglia的Overview界面

图2展示了4个节点的Load视图,并在一个视图中进行聚合展示。不同颜色标识不同节点的负载情况。



图2  Ganglia的聚合视图和节点视图

图3是CPU详细监控项目。



图3  Ganglia的CPU监控

图4是一个二次开发的,可以用来监控节点运行的虚拟机的性能,本图展示的是监控一个虚拟机的视图。


图4  Ganglia监控虚拟机内存

服务与资源监控

Nagios是在OpenStack部署中广泛使用的,用于监控云平台各种服务的开源工具,另外,它的扩展性良好,很容易加入自行开发的监控项目,为用户提供了很大的便利性和灵活性。

图5展示了Nagios的连接视图,这里5个节点在同一个网络里。绿色代表该节点服务正常,而红色则说明该节点至少有一个以上的告警需要处理。



图5  Nagios的连接视图

另外,Nagios可以很容易地与邮件系统和短信平台集成,发送告警信息。

另外,本书展示的界面只是默认的,社区里有许多不同的展示界面,而且是免费的,可以根据自己的需要和偏好进行选择,提供不同的样式和数据展现形式。但数据本身则还是由Nagios服务提供。

图6是Nagios的主机视图,该节点的健康状况,以及信息收集时间等信息一目了然。



图6  Nagios的主机视图

图7展示了Nagios的服务监控视图。默认的Nagios可以监控磁盘、SSH、ping等系统基本服务,但是Nagios对OpenStack却一无所知,这是需要自己进行开发和扩展的,另外网上也有不少免费的监控脚本可以集成进来。



图7  Nagois的服务监控视图

对于OpenStack服务的监控,最基本的可以从进程角度进行监控,如进程是否运行,响应速度如何等。更好的监控,可以结合不同服务的命令,通过查询来判断服务本身的质量如何。这需要初步了解各个服务的使用,以及用到租户、用户、密码等信息。但如果云平台修改密码,则这里也需要进行相应的修改。


消息中间件监控

消息中间件在OpenStack云平台起着心脏的作用,运行不正常则整个云平台会运行不起来,因此监控消息中间件在OpenStack云平台至关重要。

图8展示了一款免费软件,可以用于消息中间件统计信息的展现和一些基本管理。



图8  RabbitMQ的Overview视图

图9显示了消息中间件当前的各种连接,这些连接从不同节点和不同服务而来。



图9  RabbitMQ的连接视图

图10展示了消息中间件的通道视图。



图10  RabbitMQ的通道视图

图11展示了消息中间件的交换(Exchange)视图。



图11  RabbitMQ的交换视图

图12展示了消息中间件的队列视图,并包括了统计信息。



图12  RabbitMQ的队列视图

图13是管理员视图,可以修改密码、增加用户等。



图13  RabbitMQ的管理员视图

日志分析

OpenStack云平台由于服务众多,会产生大量的日志输出,在云平台初建,涉及Debug时,日志量巨大,对于问题的调试非常不方便,因为关联的服务往往运行于不同节点之上。

LogStash在各个节点部署了代理程序,可以将日志输出汇聚到中心节点进行分析。中心节点本质上是个搜索引擎和信息统计工具。

图14展示了LogStash的Overview视图,可以看到整个云平台日志产生的数量趋势。



图14  LogStash的Overview视图

图15展示了LogStash收集的OpenStack云平台的日志信息汇总,并按时间顺序显示,并可以按不同的维度进行排序、关键词搜索。



图15  LogStash的消息视图

图16展示了过滤后的视图,这里我们只关心哪个节点在什么时候发生了什么事情。LogStash可以很好地帮助我们实现这些。



图16  LogStash的消息过滤视图

#############################
本文节选自 《OpenStack企业云平台架构与实践》第8章第8节,由电子工业出版社,2014年11月出版。

作者简介
张小斌,苏宁北京研发中心云计算研发部负责人,拥有15年丰富的计算机软件设计、开发和管理经验,主要著作有《黑客分析与防范技术》和《计算机网络安全工具》(国内最早的网络安全书籍)。曾在朗讯贝尔实验室和硅谷Terawave等公司工作多年;在HP担任解决方案架构师;在赛门铁克任主任工程师,研发存储备份软件,曾参与公司全球“Cutting Edge”技术大会并做技术报告;在北电网络、Websense、TrustGo分别担任技术经理、研发经理和研发总监职位,曾负责邮件安全、移动安全、移动互联网搜索引擎等的研发管理工作;在VMware和IBM的云计算部门负责云计算产品的架构设计和解决方案等工作。

猜你喜欢

转载自my.oschina.net/u/2285247/blog/1589776