【有奖讨论】数据中心运维,主要看气质,还要看品质,分享监控软件的点点滴滴。
获奖详情:http://bbs.chinaunix.net/thread-4235300-1-1.html话题背景
随着行业的发展,业务系统越来越庞大,涉及的软硬件维护点越来越多,运维的复杂度和难度会越来越大;随着去IOE的潮流和后IOE时代的架构特色,PC服务器、虚拟机和开源数据库等软硬件产品的比重上升,运维的内容和节点数量都有比较明显的变化。工欲善其事必先利其器,相信很多朋友都有使用运维监控软件的体验,本次我们就来讨论一下运维监控的那些事。
讨论话题
1、你所用过的监控软件有哪些?感觉有什么优缺点?
2、你认为在监控软件的使用过程中,有哪些难点?
3、在监控软件使用过程中,有哪些收获?
欢迎大家对上述问题进行讨论
讨论时间
2015-12-10至2016-01-10
活动奖励
活动结束后将选取4名讨论精彩的童鞋,每人赠送一本《Zabbix监控系统》图书一本作为奖励。
奖品简介
作者: 王余应
出版社:电子工业出版社
出版日期:2015 年5月
开本:16开
页码:343
版次:1-1
购买链接:http://product.dangdang.com/23684420.html
内容简介
《Zabbix监控系统》共分为9章,介绍了Zabbix系统的体系结构、安装配置方法、数据采集方法、各个模块的应用和配置方法,以及Zabbix系统的基本原理和规则等,并从操作系统层面、数据库层面和Zabbix系统组件层面介绍了Zabbix系统的优化方法。最后,作者结合多年的运维实践经验,总结出维护和管理Zabbix系统过程中所遇到的常见问题和技巧。
试读样章
本帖最后由 刺客阿地 于 2015-12-10 14:52 编辑
:mrgreen: 居然没人出现?我先占个板凳。
目前公司用的是nagios ,cacti,其他监控工具暂时没用。
对于这两种监控工具,我工作当中暂时还没怎么接触,谈不出优缺点。。。楼下各位朋友走起...... 1、你所用过的监控软件有哪些?感觉有什么优缺点?
答:从工作以来,我用过的监控系统有cacti,nagios,zabbix.下面我就说说他们。
cacti是用snmp协议来取数据,通过rrdtool来储存和更新数据(侟在rra下的文件里),并生成图。由此可见snmp和rrdtool是cacti的关键。
但是我们并不需要深入的了解rrdtool,和snmp ,我们是需要通过简单的配置就可以生成图像,我对于我们来说很方便(优点)。
rrdtool来处理数据效率高,多样性绘图,但是cacti监控的内容不多(缺点)。有一些插件还是不错的。我现在用的是monitor,mactrack,weathermap.
我们现在主要是用cacti来监控交换机上的流量。
nagios是一款很专业的监控软件,监控服务器状态很强大。但是配置起来复杂一些。能监控的应用层面(网络服务监控)的内容比cacti较多(优点),插件也非常多。这个赞一个。
nagios会调用插件去检测服务器状态,并把插件返回来的状态信息并进行处理后,把状态结果通过web显示出来。并根据状态实现告警。感觉报警机制要比cacti强。
图像看着没cacti好。(缺点) nagios客户端得安装NRPE. 说是支持400-500台机器的监控。我没试过,没有那么多的机器。- -
zabbix 分为zabbix server 和zabbix agent.也就是说客户端得安装agent.
优点点是支持多平台的监控软件,功能强大,监控灵活,报警灵活。
支持分布式。支持snmp,jmx,ipmi类型。自带画图功能,得到的数据可以绘成图形。全web管理。自带key,同时支持调用脚本。很方便。
缺点是批量修改不方便,中文资料少。画图没cacti好。官网说zabbix 支持5000台机器的监控。
2、你认为在监控软件的使用过程中,有哪些难点?
答:难点的话可能是配置方面,监控项设置方面吧。
我们现在用的是cacti+zabbix,感觉够用了,zabbix用起来比较灵活。
zabbix 可以根据自己的需求设置一些触发器,达到触发器的数值就会报警。
比如说,系统的平均负载,进程数,流量,tomcat jmx,dns 之类的都可以实现。
3、在监控软件使用过程中,有哪些收获?
答:在使用过程中会熟悉哪些指标需要监控,哪些是非必要的。会系统的全局有大致的宏观了解。
故障一般的都是软件层面的,及时登陆到机器上看看是什么情况,大多数都可以解决。
将来的规划是现深入的学习zabbix,说实话,zabbix 真不错,真心推荐给大家。很灵活。
如果有机会再试试分布式。如果有运维研发,zabbix是一个好的选择进行二次开发。
其实不管哪个监控软件,只要是自己了解,顺自己的手,能够满足需要都OK的。 本帖最后由 o枫叶o飘零 于 2015-12-10 16:17 编辑
1、你所用过的监控软件有哪些?感觉有什么优缺点?nagios
缺点:部署太麻烦,默认的web首页看得很粗糙。 还要结合别的软件才能绘图
优点:资料多,用的人也多,所以有什么问题能及时baidu、谷歌。
cacti 结合nagios用的 所以没有多大感觉。。。
ganglia
缺点:web上手起来有点麻烦,而且中文插件还得单独去下{:qq30:}
优点:图形显示还是比较方便
而且我们这边用ganglia主要是为了专门去监控hadoop、hbase的....
zabbix
缺点:看图不方便。举个例子:我想看同一批集群的网卡流量,就必须要在screen里先定义,不然只能一台一台的看。。。这一点就没有nagios和ganglia方便...
还有一点 就是默认模板的cpu load 比较坑....
优点:上手比较容易,单独添加主机什么也方便
server+proxy+agent
这种架构适合监控多机房的机房 一个集群最多只占用一个外网端口,信息传递直接由proxy到server,agent只需要提交数据给同网段的proxy就行
2、你认为在监控软件的使用过程中,有哪些难点?
难点应该是报警的准确性和扩展性吧,报警的及时性(免费的邮箱经常被拦截。{:qq35:})
我这边目前的架构就是这种
server+proxy+agent
不知道是因为proxy的主被动模式没有弄好还是怎么样。
当server网络有问题时... 所有机器都报警了 。。 报警邮件顿时疯狂的接收。。。
当server网络恢复时。。 所有机器又都恢复了。。 又开始疯狂的接收恢复邮件
zabbix_server不知道有没有双机热备的功能 就怕server挂了 那所有的都得重做。。。
3、在监控软件使用过程中,有哪些收获?
收获了爱情(开个玩笑){:qq23:}
收获了BOSS对运维的一些认识。。。 觉得运维还是必不可缺的
也收获了一些坑。。。
上监控时,BOSS叫我监控起开发写的一些接口。。
然而 现在BOSS似乎觉得我监控的蛮好 就打算把100多个接口也监控上去。。
我艹 接口返回的东西不一样 要写无数个脚本......工作量有点痛苦。。。
用过nagios与zabbix 1、你所用过的监控软件有哪些?感觉有什么优缺点?
使用过mrtg、cacti、nagios、zabbix、cat等,目前基本以nagios、zabbix、cat这3个组合为主
mrtg作为很早期的网络带宽监控,目前在不少的核心交换端还在使用
cacti的图很漂亮,搭配rrdtool非常不错,如果是做千台以上的服务器节点监控,还是比较吃力的
nagios和zabbix在大规模监控上面做的很不错,不过到很多节点的时候,在数据层和管理上还是要下很多功夫的
2、你认为在监控软件的使用过程中,有哪些难点?
最重要的还是以业务的提前预警和故障告警为主吧,依托自己的业务来展开,不断的细化和优化
3、在监控软件使用过程中,有哪些收获?
监控大致分为以下几个层次,分别为主机层、服务进程和端口、应用层
主机层:所有的硬件设备监控,比如网络设备的端口带宽和服务器的硬件等
服务进程和端口:业务服务的进程和端口是不是存在,业务进程是不是有响应(url)
应用层:业务的调用关系和响应时间等 运维工程师们在大数据时代,下面对大量网络安全事件,若没有有效工具是无法完成分析工作,他们往往面对如下挑战:
1)每天出现巨大数量的安全报警,管理员很难对这些报警做出响应。
2)误报严重,管理员无法准确判断故障。
3)大量重复、零散而没有规律的报警,黑客的一次攻击行动,会在不同阶段触发不同安全设备的告警,这样导致报警数据之间在时间和空间上存在大量重复数据,如果不实现安全事件的关联处理,就无法有效的提高告警质量。
当出现这些问题的部分原因是企业缺乏事件监控和诊断等运维工具,因为如果没有高效的管理工具支持,就很难让故障事件得到主动、快速处理。市面上有很多运维监控工具,例如商业版的Cisco Works 2000、Solarwinds、ManageEngine以及专注故障监控的WhatsUp,在开源领域有MRTG、Nagios、Cacti、Zabbix、Zenoss、OpenNMS、Ganglia等。
这些开源工具做了一个简单的比较:
http://chuantu.biz/t2/22/1449723095x-1376440151.jpg
由于它们彼此之间没有联系,即便是你部署了这些工具,很多运维人员并没有从中真正解脱出来,原因在于目前的技术虽然能够获取计算机设备、服务器、网络流量,甚至数据库的警告信息,但成千上万条警告信息堆积在一起,让人根本没办法判断问题的根源在哪里,缺乏对信息进行筛选、数据挖掘的能力,其实我们并不缺少工具,商业的也好,开源的也吧,一抓一大把,为什么还是用不好?真正缺少的是分析数据的智能化。
另外我们的查看各种监控系统需要多次登录,查看繁多的界面,更新管理绝大多数工作都是手工操作,即使一个简单的系统变更或更新,往往需要运维人员逐一登录系统,当设备数量达到成百上千时,其工作量之大可想而知。而这样的变更和检查操作在IT 运维中往往每天都在进行,这无疑会占用大量的运维资源。因此,运维工作人员需要统一的集成安全管理平台已迫在眉睫。
看到子萌在群里的链接,正好前一阵子在做监控系统的转换,就来参与下~
1、你所用过的监控软件有哪些?感觉有什么优缺点?
Zabbix:
优点:
应用比较成熟,不需要做太多的二次开发
server-proxy-agent部署结构比较清晰
支持插件
自动注册的判断规则和后续动作的组合很多进而可以支持基于主机名或其他的各种主机管理减少人工干预
逆天的discovery支持在各个地方使用变量,除了各种name标识外,甚至还包括trigger判断的阈值,报警信息等.
监控种类比较齐全,如windows,交换机,虚机等...
缺点:
不友好的视图组合支持.screen太难用.
存储不支持水平扩展.
性能有瓶颈,主要出现在server的数据库上.机器数量3000+,nvps在4000左右出现瓶颈,这个数值貌似是不包含zabbix_sender通过文件方式传回的value的,在规划监控项的interval的时候往往要迁就性能,不能支持更细时间粒度的监控,就是省着使用
监控配置复杂度太高.简单的监控还好,配一个变量比较多的discovery往往要调试很久,要更新脚本,conf,调试sender文件内容
主机名修改后要重启agent才能生效...不然一直往老的host上吐数据...
不支持主机组和模板之间的绑定,只能用自动注册的动作来山寨的绑定.
所有监控项的收集都需要提前配置
Falcon:
优点:
部署模块拆分的更细,结构更清晰.portal,dashboard,transfer,agent,judge,sender,alert,graph等等.
各个模块均支持水平扩展.扩容相当容易.
支持多种监控数据的展示方式,比zabbix的graph,screen好用1W倍.
监控策略配置简单,更容易面向用户.
支持插件,类似zabbix的脚本,这里值得一提的是这个插件自带时间调度,命名类似10_scriptname.sh的脚本名的时候,会每10秒执行一次.一些简单的模块监控可以放到这里面.
judge和graph分离,报警判断和绘图是2个模块,互不影响.
http协议的自定义监控项数据收集.并且收集的监控项不需要提前配置.大大减小了自定义监控项收集的复杂程度.
缺点:
需要大量的二次开发,最好能对接一套内部的管理平台来进行主机管理.
插件生效需要配置,这个配置只能和主机组绑定,而不是主机组配置的模板绑定.
报警内容不支持自定义变量
监控项的interval从小改大的时候,图像会有断点,还没看过源码,估计是只有在第一次注册监控项的时候才写interval的值,后面判断有这个监控项的时候interval就不再判断了.但是不敢肯定哈,求大神指正.
2、你认为在监控软件的使用过程中,有哪些难点?
我认为在使用监控软件的使用过程中,并没有难点…各种功能的实现总是最简单的.
关键是怎么用好工具.
最难的其实还是掌控业务.
域名监控,语义监控,模块监控,结构体监控,日志监控,这些的规划和实现都有方法可循,可怎么通过这些监控100%覆盖自己的业务,并且精确定位到故障,这个才是最难的.其中还涉及一个在后端分析报警内容的事情…也是我后面主要的精力投入点.
说一个不算难点的地方,就是其实这两套监控系统都要上额外的配置管理,其他的就没了.
3、在监控软件使用过程中,有哪些收获?
收获还是比较多,一开始参与的时候可能只是底层脚本的编写,然后提升到部署级别,更好的了解ha,容灾,在架构思想上有进益,然后监控软件选型,知道不同监控的优劣所在,学会思考,培养大局观.
然后在这个过程中,对自己的服务的掌控能力也会越来越强. Nagios /cacti
基本上 优缺点大家都说了。还有个很重要的缺点就是配置,zabbix据说能自动发现和配置,有机会试试看。 回复 1# jackson198574
1、你所用过的监控软件有哪些?感觉有什么优缺点?
zabbix cacti nagios感觉zabbix 的监控真的很强大功能齐全,但是使用的话不是很便捷。但是能使用全面
2、你认为在监控软件的使用过程中,有哪些难点?
zabbix 的监控很简单 但是你想建空单数据够细致的话 你需要自己写脚本完善使用
每个主机都需要安装agent性能方面有一定的损耗
3、在监控软件使用过程中,有哪些收获?
完善自己的监控系统,让你在排查问题的时候方便你的使用