linux常用十四种的云运维监控工具优缺点概述

原创 浪子丶刘少  2019-04-02 09:20  阅读 2,927 次 评论 1 条 百度已收录
        随着云计算和互联网的高速发展,大量应用需要横跨不同网络终端,并广泛接入第三方服务(如支付、登录、导航等),IT系统架构越来越复杂。快速迭代的产品需求和良好的用户体验,需要IT运维管理者时刻保障核心业务稳定可用,而企业运维中的痛点和难点也急需解决。
        1、面向业务的运维,不但关心单点IT资源的运行状态,更关心整个业务系统的健康状态
        2、如果企业使用了大量的API和模块化应用,那么关注每个接口的性能变化情况和指标
        3、对于运维主管及企业管理层来说,特别需要上墙的监控大屏
        4、运维需要每周、每月查看报告趋势分析,但传统运维工具数据导出困难
        5、需要第一时间转雀和快速发现故障节点,减少业务中断带来的损失
        前流行的开源运维工具如Zabbix、Nagios等大部分来自国外,虽然这些开源产品功能非常强大,但对技术要求很高,而且缺少足够的中文文档和本土服务支持,一般运维人员要想用好难度很大。
        于是就有国内IT厂商小米、TalkingData对其自主开发的运维系统进行了开源,同时作为商用监控服务商代表的云智慧,也对其监控宝产品进行逐步开源,让运维、开发人员在获得便捷部署和易用性的同时,可根据自己的业务需求进行灵活的二次开发。
    刘少对业内主流的开源运维监控系统和商业运维监控系统进行对比,分析各种产品的定位、目标用户和功能特点,希望帮助广大运维、开发和创业者找到最适合自己的运维工具

一、Zabbix

        Zabbix是一个基于WEB界面的提供分布式系统监控以及网络监控功能的企业级开源运维平台,也是目前国内互联网用户中使用最广的监控软件,云智慧遇到的85%以上用户在使用Zabbix做监控解决方案。
        入门容易、上手简单、功能强大并且开源免费是云智慧对Zabbix的最直观评价。Zabbix易于管理和配置,能生成比较漂亮的数据图,其自动发现功能大大减轻日常管理的工作量,丰富的数据采集方式和API接口可以让用户灵活进行数据采集,而分布式系统架构可以支持监控更多的设备。理论上,通过Zabbix提供的插件式架构,可以满足企业的任何需求。
  用户群:85%以上的泛互联网企业。

  优点:

  1. 支持多平台的企业级分布式开源监控软件;
  2. 安装部署简单、管理方便;
  3. 功能强大,监控灵活,可实现复杂多条件告警;
  4. 多种数据采集插件,灵活集成;
  5. 自带画图功能,得到的数据可以绘成图形;
  6. 同时支持调用脚本,很方便;
  7. 提供多种API接口,定制化最高的监控软件;
  8. 出现问题时可自动远程执行命令(需对agent设置执行权限);

  缺点:

  1. 项目批量修改不方便;
  2. 社区虽然成熟,但是中文资料相对较少,服务支持有限;
  3. 入门容易,能实现基础的监控,但是深层次需求需要非常熟悉Zabbix并进行大量的二次定制开发,难度较大;
  4. 系统级别报警设置相对比较多,如果不筛选的话报警邮件会很多;并且自定义的项目报警需要自己设置,过程比较繁琐;
  5. 缺少数据汇总功能,如无法查看一组服务器平均值,需进行二次开发;
  6. 数据报表需要特殊二次开发定义;

二、Nagios

        Nagios原名NetSaint,是一款开源的企业级监控系统,于1999年推出,由Ethan Galstad开发并维护至今。Nagios能够实现对系统CPU、磁盘、网络等方面参数的基本系统监控,而且还能监控包括SMTP,POP3,HTTP,NNTP等各种基本的服务类型。另外通过安装插件和编写监控脚本,用户可以实现应用监控,并针对大量的监控主机和多个对象部署层次化监控架构。
     Nagios最大的特点是其开发者将Nagios设计成监控的管理中心,尽管其功能是监控服务和主机的,但是他自身并不包括这部分功能代码,所有的监控、告警功能都是由相关插件完成的。
  用户群:全球超过100万用户。许多跨国企业和组织都在使用(西门子、飞利浦、雅虎、索尼、AOL等),尤为适合复杂IT环境的企业。

  优点:

  1. 自动化运维,出错的服务器、应用和设备会自动重启;
  2. 配置灵活,监控项目很多,可以自定义shell脚本,通过分布式监控模式,非常适合大型网络;
  3. 自动日志滚动;
  4. 支持以冗余方式进行主机监控;
  5. 在服务事件和主机事件之间良好的相关性;
  6. 命令重新加载配置文件无需打扰Nagios的运行;
  7. 报警设置多样性;

  缺点:

  1. 很弱的事件控制台;
  2. 对性能、流量等指标的处理不给力;
  3. 看不到历史数据,只能看到报警事件,很难追查故障原因;
  4. 配置复杂,初学者投入的时间、精力比较大;
  5. 插件的易用性不好;

三、Ganglia

        Ganglia是加州大学伯克利分校发起的一个开源集群监控项目,设计之初是用于监控数以千计的网络节点。Ganglia是一个跨平台可扩展的,高性能计算系统下的分布式监控系统。它已被广泛移植到各种操作系统和处理器架构上,目前世界各地成千上万的集群中应用。
        用户群:适用于服务器集群用户。

  优点:

  1. 适合监控系统性能,通过曲线很容易见到每个节点的工作状态,对合理调整、分配系统资源,提高系统整体性能起到重要作用;
  2. 支持浏览器方式访问,但不能监控节点硬件技术指标;
  3. 适合大型集群环境;
  4. 部署方便,不用逐台机器添加配置;
  5. 一台服务器能够通过不同的分层管理上万台机器;
  6. 可以自定义监控项,监控展示有表格和图像两种,支持手机版。

  缺点:

  1. 没有内置的消息通知系统;
  2. 没有报警机制,出现问题不能够及时报警;

四、Zenoss

        Zenoss Core是Zenoss的开源版本,其商用版本为Zenoss Enterprise。作为企业级智能监控软件,Zenoss Core允许IT管理员依靠单一的WEB控制台来监控网络架构的状态和健康度。Zenoss Core的强大能力来自于深入的列表与配置管理数据库,以发现和管理公司IT环境的各类资产(包括服务器、网络、和其他结构设备)。Zenoss同时提供与CMDB关联的事件和错误管理系统,以协助提高各类事件和提醒的管理效率。
        Zenoss做到了开源和商业化的较好结合,既吸收开源软件的优点,同时又通过商业化运作来保证提供可靠的后续软件服务。

  优点:

  1. Zenoss比较出色的地方在于它的Dashboard,可以配置很多portlet(即widget)。
  2. 每个用户的界面都是分开管理的,自定义dashboard不会影响其他用户。
  3. 强大监控功能(服务器、路由交换、防火墙、存储、数据库、中间件)
  4. 在servicepool里,用到最新的docker技术,便于用户对控制台进行更新与管理。
  5. 数据存储的架构:采用基于HBASE的opentsdb存储任意时间段的数据
  6. 较好的将状态监控,性能监控,资源管理,更好的报告机制进行有机的整合
  7. 直观且专业的管理界面对于用户极具吸引力。

  缺点:

  1. 对资源要求较高,即使只管理少数几台设备、它也需要消耗大量硬件及内存等附加资源。
  2. 针对windows系统,开源版只提供SNMP,通过WMI检测CPU,Disk,软硬件和性能只在收费版提供。

五、Hyperic HQ

        Hyperic HQ是一个基于Java的Web基础设施监控和管理平台,提供监测生产环境中各技术栈的可视性。体系结构的关键要素是HQ Server,可用于集中管理和持久性存储,以及HQ Agent提供了对每个监测平台基础地监测和控制。
        用户群:通常用于大型计算环境,其核心价值是能够自动并且轻松管理和控制数百台机器的上千软件资源。资源库包括:操作系统、应用服务器、应用组件及其他软件组件。

  优点:

  1. 自动发现功能出色。通过点击就能发现资产列表。
  2. 监测9+系统,自带75+个资源插件。
  3. 最大化可用性:在问题发生之前,警报、控制去纠正问题。
  4. 可以追踪性能、配置、安全的变化。

  缺点:

  1. 指标都是默认提供的,无法自定义指标(在不开发的基础上)。
  2. 基础功能比较缺乏,需要强大的二次开发能力。

六、OpenNMS

        OpenNMS是一个企业级基于Java/XML的分布式网络和系统监控管理平台。OpenNMS是你管理网络的绝好工具,它能够显示你网络中各中终端和服务器的状态和配置,为你方便地管理网络提供有效信息。
        OpenNMS专注于三个方面:服务轮询、数据收集、事件和提示管理。

  优点:

  1. 定制仪表板功能令人赞叹
  2. 已经得到广泛普及,目前已经有超过15,000+款插件可供用户选择。
  3. 搜索功能实用。如以节点为单位搜索DNS或者POP3等特定服务;对与资产(包括位置、操作系统及运行状态)相关的数据字段进行搜索。
  4. 报表功能非常全面,其中包含大量预创建模板并能够运行临时报告。

  缺点:

  1. 界面对使用者不太直观

七、Cacti

        Cacti是一套完整的网络流量监测图形分析解决方案,基于RRDTool的数据存储和图形功能实现网络监控。Cacti提供快速的数据查询,先进的图形模板,多种化数据采集方法和用户管理功能。通过一个直观、易于使用的界面,实现从局域网规模到数百台设备的复杂网络监控,可以指定每一个用户能查看树状结构、Host以及任何一张图,还可以与LDAP结合进行用户验证,同时也能自己增加模板,功能非常强大。

  优点:

  1. 界面比较好看,主要用途还是用来收集历史数据和画图;
  2. 树图设置自由度高,可以调节经常看的图放在前面;
  3. 用户权限设置细;

  缺点:

  1. 检验的频率是默认5分钟,增加频率会有一些Bug;
  2. Web界面设置比较难找;
  3. 添加自定义图表比较麻烦;

八、监控宝

        监控宝是云智慧为用户提供IT性能监控(IT Performance Monitoring)的SaaS产品,包含网站监控、服务器监控、中间件监控、数据库监控、应用监控、API监控和页面性能监控等功能。包含免费版、畅享版和企业版,目前用户约40万,监控宝app也是国内唯一提供移动监控服务的产品。
  用户群:覆盖电子商务、移动互联网、广告传媒、在线游戏、教育医疗等行业的几十万用户,小米、陌陌、高德、用友、金山、途牛、聚美优品、陆金所、中国平安、建行信用卡中心、春雨医生、畅游、国家电网、中国电信、滴滴打车、春秋航空、凤凰网等各行业领先企业和中国互联网百强企业超过30%在使用监控宝。

        优点:

  1、 作为国内最早提供基于SaaS服务的网络监控平台,监控宝不但为初级用户提供免费的标准服务,企业用户还可以按需购买所需的监控、告警资源,最大限度的节省企业运维成本;
  2、 监控宝通过遍布全球的300多个分布式监测节点,对网络进行稳定性和可用性的主动监控和实时分析,支持http(https)、ftp、ping、udp、tcp、smtp、traceroute等多种协议,测量CDN效果及DNS状态,全网全地域性能趋势分析。
  3、 实时捕捉服务器深层性能指标,支持Linux/Unix/Windows系统及云平台,支持CPU使用率、CPU平均负载、内存使用比例、磁盘IO、磁盘空间使用率、网络流量和系统进程数统计等物理指标及30多种应用服务,云主机监控端一键开启,无需复杂配置。对于应用服务的监控,监控宝已经支持常见的应用类型包括:Apache、Lighttpd、Nginx、Tomcat、IIS、Memcache和Redis,存储层监控支持Hadoop、MySQL、MongoDB、SQLServer、Oracle的健康状态及性能监控。
  4、 监控宝是国内目前唯一支持API监控的网络监控产品,通过API接口调用模拟用户使用过程,支持对get、post、put、delete、head、options六种请求方式进行实时监控;支持JSON、XML、Text、Response Status验证及Postman脚本导入。
  5、 Docker监控也是监控宝的独家功能,能够实时监控Docker容器的CPU、内存、网络流量及Swap状态,让开发者和运维人员在使用Docker时清晰掌握其资源消耗状况。
  6、 监控宝提供页面性能管理,基于国际标准制定页面性能指数,识别加载元素的状态及正确性,对全网全用户加载响应时间分析,同时准确定位问题元素及优化建议。
  7、 及时有效的告警通知对运维来说至关重要,监控宝可以根据SLA设置告警阈值,第一时间发送告警通知。监控宝覆盖最全面的告警通知方式:电子邮件、短信、电话语音、URL回调通知、App Push等。另外监控宝提供分级告警通知,能够根据告警事件的不同等级将不同的告警推送给不同的人员,支持企业分层管理!
  8、 监控宝目前对其SmartAgent进行了开源,用户可以根据业务需求定制化开发Agent,同时用户的数据安全得到保障。
  9、 监控宝提供私有化部署解决方案,满足政企、金融行业专有网络监控的需求。
  10、 来自Compuware、CA、IBM等企业IT服务资深专家,超过5年的本土化企业级SaaS服务经验,以及超过百人的技术服务团队,为用户提供最佳的服务保障。
  缺点:免费版只支持6个监控点,每月免费短信100条,监控频率为30分钟。

九、Open-falcon

        Open-falcon是小米运维团队从互联网公司的需求出发,根据多年的运维经验,结合SRE、SA、DEVS的使用经验和反馈,开发的一套面向互联网的企业级开源监控产品。
        Open-falcon架构
  用户群:在2015年5月份发布并且形成了一个数百人的交流群,目前有几十家企业用户不同程度使用。

  优点:

  1. 强大灵活的数据采集:自动发现,支持falcon-agent、snmp、支持用户主动push、用户自定义插件支持、opentsdb data modellike(timestamp、endpoint、metric、key-value tags)
  2. 水平扩展能力:支持每个周期上亿次的数据采集、告警判定、历史数据存储和查询
  3. 高效率的告警策略管理:高效的portal、支持策略模板、模板继承和覆盖、多种告警方式、支持callback调用
  4. 人性化的告警设置:最大告警次数、告警级别、告警恢复通知、告警暂停、不同时段不同阈值、支持维护周期
  5. 高效率的graph组件:单机支撑200万metric的上报、归档、存储(周期为1分钟)
  6. 高效的历史数据query组件:采用rrdtool的数据归档策略,秒级返回上百个metric一年的历史数据
  7. dashboard:多维度的数据展示,用户自定义Screen
  8. 高可用:系统无核心单点,易运维,易部署,可水平扩展;
  9. 插件式监控框架,通过各种插件目前支持Linux主机监控(指标更多)、Windows主机监控、Mysql监控、Redis监控、Memache监控、RabbitMQ监控和交换机监控。
  缺点:由于小米公司的知名度、其运维水平能力很高,open-falcon的功能相对完整、开放性及免费特点,相信在未来会在国内监控运维领域占据一个很大很高的地位。不过由于其发布时间较短,很多基础的服务监控插件(如Tomcat、apache等)还不支持,很多功能还在不断完善中,另外由于缺少专门的支持,虽然有开放社区,但是解决问题的效率相对较低。

十、OWL

        OWL 是大数据公司Talkingdata运维部开发的一款分布式企业级监控解决方案。既能监控IT基础资源,又支持其他数据的监控,融合了运维人员喜闻乐见的语言和技术(如Python,Shell等),还能服务于开发人员,方便灵活地放入更多的业务监控指标。
        OWL 体系架构
  由于Talkingdata是做大数据分析的公司,因此在设计OWL 时,充分考虑了各种大数据算法及分布式存储,使得监控报警更加灵活,数据分析更加丰富,业务监控也比较方便。
  用户群:Talkingdata自用,预计在年底开源,已有不少运维开始关注。

  优点:

  1. 基于复杂算法的浮动报警规则:OWL 不仅支持固定报警阈值,也支持浮动报警。即在到达预设的阀值后,自动追加阀值,这样一定程度上可以降低信息的发送量,在系统恢复正常之后,OWL 监控系统也能自动恢复到之前的阀值;
  2. 灵活方便的用户自定义报表:监控系统的每个用户(如网络工程师,系统工程师,DBA,DevOps等)都可以定制自己的图表工作台;
  3. 真正可视化的资产管理:OWL最新版保持了先前的特色-模拟机柜图,现实资产的同时显示主机的监控状态,位置和状态一目了然;
  4. 部署方便的Agent ,支持进程守护:OWL 的监控Agent 不依赖OS,方便部署,可支持多种插件,并借助于双生机制,实现了进程守护;
  5. 可平行扩展的底层数据存储:选择了平行扩展性好的hbase,上层使用tsdb封装。这虽然丧失了灵活数据查询形式,但是对于数据存储,可以做到比较好的透明化;
  缺点:由于产品尚未公开发布,所以只能从介绍信息判断,目前产品还不是很成熟,功能主要围绕Talkingdata自身的运维需求,包括可视化资产管理的内容。其它功能除了告警可能会更深入之外,与open-falcon比较类似。

十一、360网站服务监控

        360网站服务监控是一款面向广大站长的网站监控产品,提供免费的网站、服务器监控。
        用户群:个人站长

        优点:

        服务免费,支持网站HTTP监控、PING监控、域名DNS监控和服务器监控
        提供网站访问全景数据和简单配置信息。

        缺点:

        只支持简单的网站和服务器监控,历史数据保留15天,且免费监控点数量仅为四个。
        最后一次产品更新是2014年9月,目前已停止更新和运营支持。

十二、阿里云监控

        阿里云监控是一款免费网站监控产品,可监控站点和服务器,并提供多种告警方式:短信,旺旺,邮件。
        用户群:阿里云用户

        优点:

        与阿里云服务捆绑紧密,允许用户自定义数据监控
        阿里云多IDC间内网数据传输,不占用客户公网资源
        支持对业务数据的通用统计,从各个角度反应服务的运行情况

        缺点:

        所有服务基于阿里云,功能单一,扩展性差
        功能不够强大,只能满足基础监控需求

十三、百度云观测

        百度云观测是百度推出的一款云服务产品,类似于360云监控、阿里云监控,主要是为站长提供免费的一站式网站监测、预警服务,功能覆盖网站运行状况、安全和访问速度等多个方面。
        用户群:个人站长

        优点:

        对于用户每日访问的站点进行安全检测
        国内各大城市云节点覆盖,支持CDN、DNS状态和主机监控

        缺点:

        需要进行网站认证
        监控点少,功能简单,只能监测网站状态,不支持服务器、应用监控。

十四、小蜜蜂网站监测

        小蜜蜂网站监测是一款针对中小企业需求开发的综合测量网站运营情况线上工具,可以定时监控网站或服务器器的可用率(Uptime),一旦网站无法连结、或是服务器发生错误,即可发送告警通知。
        用户群:中小企业网站管理员

        优点:

        小蜜蜂通过探测节点和Last Mile两种模式监测网站可用性,支持多种站点监控类型和不同的网络访问传输协议;
        提供多样化监控告警设置,并支持站内实时告警消息,支持RSS。

        缺点:

        只支持基本的网站监控,监控点不可选,监控服务不稳定;
        网站性能历史数据不够详细,且无法导出。
        随着新技术的不断发展,云服务已经互联网企业的必须,但是长期以来会存在传统物理主机和云主机、私有云和公有云并存的状态。此外,互联网企业的发展速度非常快,小米、滴滴出行等很多企业都是在短短几年内发展起来的,因此选择一款合适的云监控产品,伴随企业同步成长,是非常必要的。
本文地址:https://www.ezliushao.com/58.html
加入我们:请加入刘少技术博客交流群:扫描二维码刘少技术博客的QQ交流群 | 浪子丶刘少 QQ:1150110267(注:微信暂停添加好友)
版权声明:本文为原创文章,版权归 浪子丶刘少 所有,欢迎分享本文,转载请保留出处!

发表评论


表情

  1. Szx
    Szx's Blog 【新手】 @回复

    很不错的总结!