www.hj8828.com 15

开源照旧商用?十大云运行监察和控制工具横评

中小企业及创业团队云上监控方法

www.hj8828.com 1

创业团队往往人少,强调效率,强调速度,所以一般会选择使用公有云来部署业务,基于云的监控是一个难点,本文讨论创业团队云上监控的方法。

要分享这个题目,是因为前几天我有个朋友,刚好就在一个创业团队,他们的业务初步上线,效果比较好,但是有几次业务出现问题,都是收到用户反馈,然后才去排查,从发现到处理完成,时间已经很长了。经过几次折腾,这时候才意识到监控的重要性。

为了快速解决问题,他们使用了商业监控方案,效果不错,用了一周就完成了系统及业务层面比较全面的监控,能做到业务有问题及时短信、邮件报警,然后快速处理。监控系统上来之后,明显缩短了业务故障的处理时间,提升了用户的满意度。

本文讨论以下几个问题:

那些企业适合使用公有云

公有云监控的难点在那里

云上业务应监控那些方面

云上业务监控的方法介绍

中小企业云上监控的建议

那些企业适合使用公有云

云计算的概念热了好几年了,云计算、虚拟化对互联网行业来说已经是标配。互联网行业现在都是使用各种云,或者使用公有云,或者自己搞私有云。大部分企业使用的是混合云,即私有云、公有云一起使用,而且即使使用公有云,也会选择多家使用。

传统行业现在也在积极拥抱云计算,各个行业都在将自己的业务和互联网结合,向“互联网+”转变。

最开始拥抱公有云的是中小创业团队,尤其是手游页游兴起的时候,云确实解决了中小创业团队的痛点,不需要自己买服务器,自己建设数据中心,自己部署网络。

中小创业团队本来人力、资源紧张,云降低了他们的门槛,使他们可以专注自己的业务。初创的云计算公司和中小创业团队,一起抱团,开始了云计算行业的第一波使用热潮,目前这股热潮还在继续。

云计算是目前火热的创业浪潮的加速剂,使创业变的更简单,门槛更低。甚至,许多企业已经养成了习惯,公司做大了,上市了,还继续使用云,因为确实从云上尝到了甜头。国外还有一些例子,经历从云到自建,再到完全纯云化的过程。

但是,企业上云只是第一步,业务在云上跑得如何,稳定不稳定,出了问题如何及时发现,只有及早的发现,甚至预警,才能尽量减少业务的影响时间和范围,整个环节要依赖许多技术手段,监控就是其中最重要的环节之一。

公有云监控的难点在那里

第一个难点,公有云服务商不可能提供完善的监控手段

从宿主机层面监控云主机要做到准确很难,CPU利用率、网络、磁盘IO,能做到近似准确,但是更细节的信息是没有办法看到的,比如到底是那个应用使用CPU较多,更别说应用层面指标的监控。

而且即使目前公有云上提供的这些简单的CPU、网络、磁盘监控,都是有时间限制的,从7天到30天不等,因为存储长期的数据,会消耗公有云运营商大量的存储空间。

www.hj8828.com,第二个难点,公有云服务器即使能提供完善的监控服务,用户也很顾忌

公有云要提供完善的监控数据,必须在云主机内部安装客户端程序,用户一般都这个都很顾忌,公有云服务商也会很顾虑。

理论上,从宿主机上获得正在运行的云主机上的数据,难度很低,何况还安装一个客户端,大部分用户是不放心的,前段时间,某云安装在用户云主机内部的客户端出现问题,更是一个佐证。

第三个难点,用户要实施监控,成本也比较高

使用云的以中小企业居多,这些企业的特点就是开发人员是个位数,运维是开发兼任,最多一个人。这时候运维的主要职责是业务的部署,业务跑得稳定最重要,对系统、业务的监控只能做到很初级的监控,很难做到非常细致的监控。

云上业务应监控那些方面

企业实施在云部署业务,需要监控以下几个方面的内容:

1. 云服务器商的网络质量情况

这一点最容易被忽视,许多企业以为选择了公有云,网络质量这里就万事大吉了,放到公有云上面的业务,肯定是要依赖网络来开展服务,有些业务对网络质量是非常敏感的,大部分云不提供网络质量监控的,建议上云的企业,对网络质量的监控也要重视起来。

2. 云主机系统层面的监控

云主机系统层面监控包括云主机的健康状况及CPU、内存、网络、磁盘使用情况,监控云主机主要是为了以下几个方面:

§ 监控云主机是否正常运行,如果云主机宕机及时发现;

§ 监控云主机的压力情况,如果压力超过阀值,及时做出调整;

§ 监控云主机的使用情况,如果长期压力过低,应对业务进行压缩,节省成本。

3. 业务层面的监控

经常会碰到,云主机运行正常,但是业务出现问题,可以分为以下几种情况:

业务进程僵死;

业务遇到性能瓶颈,比如读写太多,数据库不能支撑,这时候往往在系统层面的指标也可能有反应;

业务逻辑层面的预定瓶颈,比如业务一个进程逻辑上只能支撑1024个链接,当超过1000链接以上,业务就不能对外提供服务;

触发程序bug。

如果对业务层面没有细致的监控,往往业务出现问题很长时间,才能发现,监控就是我们的眼睛和雷达,对业务指标监控的越细,越有利于我们发现问题,也越有利于我们根据历史的监控数据排查问题,避免下次再发生同样的情况。

云上业务监控方法介绍

我们知道业务的监控非常重要,那么监控方法有那些:

1.
使用开源工具
,网络质量监控方面,可以使用开源的SmokePing,系统和业务方面,目前国内比较流行的是Zabbix,也有其他监控工具,比如Cacti等。这些工具的共同特点是:

开源免费;

学习曲线比较陡峭,一般要熟练使用需要一到两年时间;

功能上能满足基本的需要,但是要监控更细致的指标,一般需要二次开发;

很难和自己已有的其他系统整合,要整合需要二次开发。

2. 使用商业服务

国内目前在监控商业化方面做的比较好的就是监控宝了,可以申请免费试用。

网络质量方面,监控宝有全球的网络质量监控:

www.hj8828.com 2

也有国内的网络质量监控:

www.hj8828.com 3

监控宝有自己固定的节点,不像使用SmokePing,还需要自己找各地的IP地址,而且自己找的IP地址经常会出现ping不通的问题。

云主机系统层面的监控方法,监控宝有针对云主机专用的解决方案。

www.hj8828.com 4

甚至还能监控Docker虚拟机:

www.hj8828.com 5

监控宝的云主机监控对用户来讲非常简单,一键安装监控端,很快就可以出图,默认就包括非常完善的指标。

比如网络质量就分为全世界和中国的:

www.hj8828.com 6

www.hj8828.com 7

性能方面CPU、内存、网络、磁盘使用情况指标都有:

www.hj8828.com 8

也可以非常方便的根据自己的需要,自定义自己的业务监控指标:

www.hj8828.com 9

还可以自定义报警模版及报警方式:

www.hj8828.com 10

另外,监控宝还有API,可以方便的和自己的其他业务系统整合起来,还有手机上的APP,在手机上也可以随时了解自己的业务情况。

中小企业云上监控的建议

很多人认为已经有开源的解决方案就没有必要使用商业方案,其实中小企业非常适合使用商业方案,好处如下:

花钱买效率,商业的解决方案非常完善,几天之内就可以完成部署和使用,而使用开源方案,需要不断的打磨,周期是以年为单位的,并且随着业务不停的变化,实际是一个长期过程;

不用过多考虑人的因素,好不容易企业培养起来一个开源监控熟练手,结果离职了,然后一切又要从头开始;

我的朋友就是使用商业方案,比较好的解决了自己的问题。当然,如果运维开发工程师比较多了,自己的业务规模已经非常大,大到需要构建自己的私有云,这时候可能就需要根据业务的需求,开发一套满足自己需要的监控系统。

创业团队往往人少,强调效率,强调速度,所以一般会选择使用公有云来部署业务,基于云的监控是一个…

原文网址链接:
随着云计算和互联网的高速发展,大量应用需要横跨不同网络终端,并广泛接入第三方服务(如支付、登录、导航等),IT系统架构越来越复杂。快速迭代的产品需求和良好的用户体验,需要IT运维管理者时刻保障核心业务稳定可用,而企业运维中的痛点和难点也急需解决。

  1. 面向业务的运维,不但关心单点IT资源的运行状态,更关心整个业务系统的健康状态

  2. 如果企业使用了大量的API和模块化应用,那么关注每个接口的性能变化情况和指标

  3. 对于运维主管及企业管理层来说,特别需要上墙的监控大屏

  4. 运维需要每周、每月查看报告趋势分析,但传统运维工具数据导出困难

  5. 需要第一时间转雀和快速发现故障节点,减少业务中断带来的损失

云智慧对业内主流的开源运维监控系统和商业运维监控系统进行对比,分析各种产品的定位、目标用户和功能特点,希望帮助广大运维、开发和创业者找到最适合自己的运维工具。

开源运维监控产品篇

Zabbix

推荐星级:五颗

Zabbix是一个基于WEB界面的提供分布式系统监控以及网络监控功能的企业级开源运维平台,也是目前国内互联网用户中使用最广的监控软件,云智慧遇到的85%以上用户在使用Zabbix做监控解决方案。

www.hj8828.com 11

入门容易、上手简单、功能强大并且开源免费是云智慧对Zabbix的最直观评价。Zabbix易于管理和配置,能生成比较漂亮的数据图,其自动发现功能大大减轻日常管理的工作量,丰富的数据采集方式和API接口可以让用户灵活进行数据采集,而分布式系统架构可以支持监控更多的设备。理论上,通过Zabbix提供的插件式架构,可以满足企业的任何需求。

用户群:85%以上的泛互联网企业。

优点:

  1. 支持多平台的企业级分布式开源监控软件

  2.  安装部署简单,多种数据采集插件灵活集成

  3. 功能强大,可实现复杂多条件告警,

  4. 自带画图功能,得到的数据可以绘成图形

  5. 提供多种API接口,支持调用脚本

  6. 出现问题时可自动远程执行命令(需对agent设置执行权限)

缺点:

  1. 项目批量修改不方便

  2. 社区虽然成熟,但是中文资料相对较少,服务支持有限;

  3. 入门容易,能实现基础的监控,但是深层次需求需要非常熟悉Zabbix并进行大量的二次定制开发,难度较大;

  4. 系统级别报警设置相对比较多,如果不筛选的话报警邮件会很多;并且自定义的项目报警需要自己设置,过程比较繁琐;

  5. 缺少数据汇总功能,如无法查看一组服务器平均值,需进行二次开发;

  6. 数据报表需要特殊二次开发定义;

Nagios

推荐星级:四颗

Nagios是一款开源的企业级监控系统,能够实现对系统CPU、磁盘、网络等方面参数的基本系统监控,以及SMTP,POP3,HTTP,NNTP等各种基本的服务类型。另外通过安装插件和编写监控脚本,用户可以实现应用监控,并针对大量的监控主机和多个对象部署层次化监控架构。

www.hj8828.com 12

Nagios最大的特点是其强大的管理中心,尽管其功能是监控服务和主机的,但Nagios自身并不包括这部分功能代码,所有的监控、告警功能都是由相关插件完成的。

用户群:适合复杂IT环境的企业

优点:

  1. 出错的服务器、应用和设备会自动重启,自动日志滚动

  2. 配置灵活,可以自定义shell脚本,通过分布式监控模式

  3. 支持以冗余方式进行主机监控,报警设置多样

  4. 命令重新加载配置文件无需打扰Nagios的运行

缺点:

  1. 事件控制台功能很弱,插件易用性差

  2. 对性能、流量等指标的处理不给力

  3. 看不到历史数据,只能看到报警事件,很难追查故障原因

  4. 配置复杂,初学者投入的时间、精力和成本比较大

Ganglia

推荐星级:四颗

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

www.hj8828.com 13

用户群:适用于大型服务器集群用户。

优点:

  1. 适合监控系统性能,通过曲线很容易见到每个节点的工作状态

  2. 可以自定义监控项,监控展示有表格和图像两种,支持手机版

  3. 部署方便,通过不同的分层管理上万台机器,无需逐个添加配置

缺点:

  1. 没有内置的消息通知系统

  2. 没有报警机制,出现问题不能够及时报警

Zenoss

推荐星级:四颗

Zenoss
Core是Zenoss的开源版本,其商用版本为ZenossEnterprise。作为企业级智能监控软件,Zenoss
Core允许IT管理员依靠单一的WEB控制台来监控网络架构的状态和健康度。Zenoss
Core的强大能力来自于深入的列表与配置管理数据库,以发现和管理公司IT环境的各类资产。Zenoss同时提供与CMDB关联的事件和错误管理系统,以协助提高各类事件和提醒的管理效率。

www.hj8828.com 14

优点:

  1. Zenoss比较出色的地方在于它的Dashboard,可以配置很多portlet

  2. 每个用户的界面都是分开管理的,自定义dashboard不会影响其他用户

  3. 强大监控功能支持服务器、路由交换、防火墙、存储、数据库、中间件监控

  4. 采用基于HBASE的opentsdb存储任意时间段的数据

  5. 将状态监控,性能监控,资源管理,良好的报告机制进行有机的整合

缺点:

  1. 对资源要求较高,即使只管理少数几台设备,也需要消耗大量硬件及内存等附加资源。

  2. 针对windows系统,开源版只提供SNMP,通过WMI检测CPU,Disk,软硬件和性能只在收费版提供。

Open-falcon

推荐星级:三颗

Open-falcon是小米运维团队从互联网公司的需求出发,根据多年的运维经验,结合SRE、SA、DEVS的使用经验和反馈,开发的一套面向互联网的企业级开源监控产品。

www.hj8828.com 15

 

                                Open-falcon架构

用户群:目前有几十家企业用户不同程度使用。