wineast
财经 | 宏观 | 国内 | 国外  投资 | 风投 | 天使 | 私募 | 产业 | 并购 | 投行  证券 | 金融资本 |  创 业 板 
商机 | 公司 | 产品 | 供求  学院 | 创业 | 管理 | 连锁 | 投行 | 理财 | 贷款  机构 | 投资机构 |  外商投资 
服务 | 展会 | 招聘 | 名录  市场 | 项目 | 投资 | 专利 | 技术 | 产权 | 连锁  互动 | 创业社区 |  有问必答 
您当前位置:中国创业投资网 >> 新闻频道 >> 产经新闻 >> 互联网 >> 浏览文章

云计算管理三利器Nagios、Ganglia和Splunk(2)

2012-5-1 20:50:55程序员杂志 【字体:

概述

我们在搭建趋势云计算平台时,遇到了很多的问题和挑战。开始搭建时,第一次来了那么多性能强劲的机器,我们在感到兴奋的同时,也不免有些顾虑。大家坐在一起讨论,问题就列了满满一白板。

出了问题怎么办,有没有预警机制?有没有可视化的管理界面?管理平台需要自己开发吗?开发难度有多大?有没有开源的管理工具?那么多日志分布在各个机器上,有没有更有效的方法管理?能否生成好的报表?机器宕机,管理员能否收到短信通知?如何做性能调优?扩容升级时,能否给出依据?

带着这些问题,我们开始了自己的云计算平台管理和运营之旅,一路走来,收获颇丰。现在基本上形成了如图1所示的一整套云计算平台监控体系。

图1云计算平台监控架构

云计算管理三利器Nagios、Ganglia和Splunk

在这个系统中,我们综合利用了Nagios、Ganglia和Splunk,搭建起云计算平台监控体系,使其具备错误报警、性能调优、问题追踪和自动生成运维报表的功能。有了这套系统,我们终于能够轻松管理Hadoop/HBase云计算平台了。接下来将简单介绍它们的特点和功能。

Nagios:云计算平台的智能报警器

总不能天天盯着机器看吧,因此我们首先关心的是机器的监控与报警。最理想的境界是:如果机器出故障了,我能第一时间处理;如果机器没有问题(最好永远没有问题),我能去喝茶、钓鱼和睡大觉。

发现机器有没有问题,对我们而言不是什么难事。写个脚本,Ping一下IP,Telnet每台机器的Service端口,如果增加了新机器就改改配置即可。但这样也太原始了吧,可视化效果差,不好维护,没有层次,不好管理,出不来报表,总不能老是用Excel人工写报表吧。有没有更好的方法呢?

有,你可以用Nagios。

Nagios是一个可运行在Linux/Unix平台之上的开源监视系统,可以用来监视系统运行状态和网络信息。Nagios可以监视所指定的本地或远程主机以及服务,同时提供异常通知功能。

Nagios可以提供以下几种监控功能。

监控网络服务(SMTP、POP3、HTTP、NNTP、Ping等)。监控主机资源(处理器负荷、磁盘利用率等)。简单的插件设计使得用户可以方便地扩展自己服务的检测方法。并行服务检查机制。具备定义网络分层结构的能力,并使用“parent”主机定义来表达网络主机间的关系,这种关系可被用来发现和明晰主机宕机或不可达状态。当服务或主机问题产生与解决时将告警发送给联系人(通过电子邮件、短信、用户定义方式)。具备定义事件处理功能,可以在主机或服务的事件发生时获取更多问题定位。自动的日志回滚。可以支持并实现对主机的冗余监控。可选的Web界面用于查看当前的网络状态、通知和故障历史、日志文件等。

Nagios最好用的地方就是它将这些每天管理员做的工作自动化,你只需设定好要监听的端口即可,它会默默地工作,帮忙定时地去检测服务端口的状态,一旦发现问题,会及时发出报警。报警可以是电子邮件也可以是手机,从而使得管理员第一时间就能收到系统的状况。

Nagios的报表功能也很强大。管理员可以很容易地得到每天、每周和每月的Service运行状况。

云计算管理三利器Nagios、Ganglia和Splunk

图2SPN后台运行的所有Service的当前状态

如图2所示,红色部分清楚地标注有问题的机器,点开链接,就可以得到有问题机器的情况。虽然在HBase中,几台RegionServer宕机不会对整体服务产生大的影响,但多少会影响到系统的Performance。而且,如果某几台RegionServer频繁宕机,对整个系统的稳定性也会产生不好的影响。有了Nagios,我们可以快速定位有问题的机器,及时地将一些机器移除出HBase系统,待调整好了再上线运行,以保证系统的稳定性。

现在,Nagios已经成为了很多公司必备的监控工具。只需要简单地配置,就可以实现强大的功能,将管理员从日常烦琐的工作中解放出来。

有了Nagios,哪怕就是管理上千台机器,也不会手忙脚乱,而是有一种统领千军、运筹帷幄的感觉。

Ganglia:看到云计算平台的方方面面

Nagios的确不错,但你是不是真的可以喝茶、钓鱼、睡大觉呢?显然还不行。有了Nagios,你基本上可以做个优秀的救火队员,能在事发第一时间到达现场、处理事故。但如何防患于未然,真正做到运筹帷幄、游刃有余呢?

我们需要更加精确的数据,能够看到云计算平台的方方面面,能根据这些数据,做出性能调整、升级、扩容等的决策,从而保证Service能够满足不断增长的业务需求。

这时候,你需要Ganglia。

Ganglia是UCBerkeley发起的一个开源实时监视项目,用于测量数以千计的节点,为云计算系统提供系统静态数据以及重要的性能度量数据。Ganglia系统基本包含以下三大部分。

分享到:


网友评论:

  • 阅读排行
  • 本日
  • 本周
  • 本月
关于我们 | 免责条款 | 网站地图 | 联系我们 | 广告服务 | 帮助中心 | 会员登陆 | 友情链接 | 订阅RSS |