zabbix企业监控实战-1-监控系统简介

1. 监控系统的功能概述

监控,从中文的字义来看,有两个内容,一是监测,二是控制,重点在第一个字眼“监”上,即监测、预防的意思。监 控 , 对 应 的 英 文 单 词 是 Monitoring 。 按 照 维 基 百 科 对 于Monitoring 的 分 类 ( 链接地址是https://en.wikipedia.org/wiki/Monitoring),在计算机领域,可以将其分为5种监控类型。

  • 应用性能监控(Application Performance Monitoring)。
  • 业务交易监控(Business Transaction Monitoring)。
  • 网络性能监控(Network Monitoring)。
  • 操作系统监控(System Monitoring)。
  • 网络站点监控(Website Monitoring)。
    在任何一个IT业务环境中,都会存在各种各样的硬件设备、软件应用等。按照逻辑层次划分,我们可以将其划分为如图所示的模型。


    image.png

    多种应用构成了复杂的IT业务系统,如何保证这些资源正常运转,是各公司内IT部门的重要职责。要让这些应用能够稳定地运行,则需要专业的IT人员进行规划、设计、架构、维护和调优。在这个过程中,为了及时掌控基础环境和业务应用系统的可用性,需要获取各个组件的运行状态,如CPU的利用率、系统的负载、服务的运行、端口的连通、带宽流量、网站访问状态码等信息,而这一切都离不开监控系统的支撑。

2. 监控系统的实现原理

2.1 模块组成

一个监控系统的组成大体可以分为两部分:数据采集部分(客户端)和数据存储分析告警展示部分(服务器端),如图所示。这两部分构成了监控系统的基本模型。


image.png

对于采集到的监控数据,可以将其存储到数据库或者文本或者其他方式,具体采用哪一种,应根据实际需求来决定。

怎么规划监控系统的架构设计呢?下面将详细分析。

对于一般的监控环境,被监控的节点不多,产生的数据较少,采用C/S(Client/Server,客户端/服务器端)架构就足够了,如图1-4 所示,这种架构适合于规模较小、处于同一地域的环境。


image.png

对于大规模的监控环境,被监控的节点多,且监控类型多,监控产生的数据和网络连接开销会非常巨大,而且由于跨地域等多种因素,需要分布式的解决方案,常见的方式为C/P/S(Client/Proxy/Server,客户端/代理端/服务器端)架构(如图所示),采用中间代理将大大提高监控服务器端的处理速度,从而能支撑构建大型分布式监控的环境。


image.png

2.2 系统组成

image.png

2.3 采集协议

按照支持的协议方式,监控系统数据采集可以分为两种:专用客户端采集和公用协议采集(SNMP、IPMI、SSH、Telnet等),如图所示。


image.png

2.4 采集模式

监控系统数据采集的工作模式可以分为被动模式(从服务器端到客户端采集数据,对应的英文单词是pull)和主动模式(客户端主动上报数据到服务器端,对应的英文单词是push)两种,如图所示。通常,大多数监控系统都应该能同时支持这两种工作模式,但不同的监控系统由于采集技术不同,仅有部分能够同时支持这两种工作模式。


image.png

一般来说,被动模式对监控控制端服务器的开销较大,适合小规模的监控环境;主动模式对监控控制端服务器的开销较小,适合大规模的监控环境。

2.5 监控指标

监控系统通常都支持一些常见的监控采集指标,如操作系统监控、应用程序监控等。部分常见的监控指标如表所示。


image.png

2.6 数据存储

在监控客户端采集数据之后,会将数据上传给监控服务器端,监控服务器端程序将接收到的数据进行存储。通常监控系统会选用以下几种数据存储方式。
(1)本地存储。使用本地磁盘,基于文件的方式存储。
(2) 使用时序数据库进行数据存储 , 如古老的环状数据库(Round Robin Database, RRD)等。近年来,随着时序数据技术的不断发展,出现了比较成熟的时序数据库,如OpenTSDB(底层存储基于HBase)、Graphite、InfluxDB、Prometheus等,与直接使用文件的存储方式相比,这些时序数据库更加高效。
(3) 使用数据库管理系统 ( Database Management System,DBMS)进行数据存储,如常见的MySQL、Oracle、SQL Server等。使用这种数据库来存储监控数据,当数据量达到一定规模时,其读/写效率
均会显著下降,数据库的压力比较大,通常优化方案思路有3种,一是减少数据的存储量;二是优化数据库本身,调整配置参数,优化运行环境;三是使用分布式数据库和数据库集群技术方案。
(4)使用NoSQL数据库进行数据存储。NoSQL相对于DBMS这种传统的数据库有着一些天然的优势,单机的QPS通常较高。但NoSQL本身并不是为监控系统设计的,在数据结构存储方面存在一些缺陷,故直接
采用NoSQL作为监控数据存储的监控系统产品较少。
(5)使用列存储数据库进行数据存储。列存储数据库由于其设计之初专为大数据而有所考虑,故无须担心其存储容量,底层均有良好的解决方案。但由于其部署、运维均较为复杂,故一般监控系统也不会常采用这种技术作为数据库存储。这方面的数据库代表为HBase。
(6)使用全文搜索引擎数据库进行监控数据存储。这方面的代表是Elasticsearch,其作为监控数据库存储监控数据具有天然的优势,支持集群、分布式部署、容灾,并且集群能够提供较高的性能。目前采用全文搜索引擎数据库进行监控数据存储,典型的代表是ELK套件,在Zabbix 4.0以上版本可以选用Elasticsearch作为数据库存储。

2.7 系统功能

image.png

2.8 可扩展性

可扩展性是指监控系统本身具备良好的扩展能力,包括监控方式的扩展、监控能力的扩展、监控数据存储的扩展、分布式的支持等。要求监控系统能够随着不同环境而做出改变和调整,大多数监控系统都具备一定的扩展能力。
对于告警,要求支持多种方式,如短信、邮件、即时通信和其他接口,且具备可定制化能力,可以对第三方告警介质提供可编程接口。这一点在很多场合都非常重要,例如,将告警结果发送到专用的告警分析系统。
监控系统需要根据实际应用的需求,实时/非实时地采集和展示数据。另外,还包括历史趋势数据的展示和分析,以及容量报表、可用性报告的生成。

3. 监控系统的开源产品

在监控软件中,开源的解决方案有流量监控(MRTG、Cacti、SmokePing 等 ) 、 性 能 告 警 ( Nagios 、 Zabbix 、 Zenoss Core 、Ganglia 、 Netdata 等 ) 、 基 于 时 序 数 据 库 存 储 数 据 的 监 控(Graphite、OpenTSDB、InfluxDB、Prometheus、OpenFalcon等)、基于全文搜索引擎数据库存储数据的监控(如ELK套件)可供选择。


image.png

3.1 Cacti

Cacti(中文含义为“仙人掌”)是一套基于PHP、MySQL、SNMP和RRDtool开发的网络流量监测图形分析工具,如图所示。其数据采集仅支持SNMP方式,通过snmpget命令来获取监控数据,使用RRDtool命令工具存储历史数据和绘图,并提供数据和用户管理功能,可以根据用户权限查看不同的树状结构、主机设备以及指定的监控数据图,支持与LDAP结合进行用户认证,同时也能自定义模板。对于网络设备的监控,其展示效果非常不错,在10年前,它是广受网络管理员喜欢的监控产品。


image.png

3.2 Nagios

Nagios是一个插件式的监控系统,可以监控服务的运行状态和网络信息等,并能监视所指定的本地或远程主机参数以及服务,同时提供异常告警通知功能等,如图所示。
Nagios对开源监控系统的影响非常深远,曾经风靡一时,占据开源监控市场的大部分份额,并基于Nagios产生了很多新的监控产品。


image.png

3.3 Prometheus

Prometheus是一套开源的系统监控报警框架,其架构示意图如图所示。Prometheus最初的设计理念受Google的Borgmon监控系统所启发,由工作在SoundCloud的Google前员工于2012年创建,作为社区开源项目进行开发,2015年正式发布。2016年,Prometheus正式加入Cloud Native Computing Foundation(CNCF)组织,2018年其成为继Kubernetes 从 CNCF 毕 业 的 第 二 个 项 目 , 其 受 欢 迎 程 度 仅 次 于
Kubernetes。


image.png

3.4 OpenFalcon

OpenFalcon是一个企业级、高可用、可扩展的开源监控解决方案。它在GitHub上获得了数千个星(star)、数百次复刻(fork)、上百个代码提交(pull-request),社区用户超过6000人,超过200家
公司都在不同程度地使用OpenFalcon。
OpenFalcon官方网站地址:https://book.open-falcon.org/
OpenFalcon由多个组件构成,重要的组件有数据采集、数据传输、数据存储、告警分析、图形展示等,数据采集使用专用客户端,传输协议为私有的,数据存储支持OpenTSDB和RRD两种方式,其架构示意图如图所示。

image.png

3.5 ELK家族

ELK是Elasticsearch、Logstash、Kibana的简称,这三者是核心套件,但并非全部。
ELK官方网站地址:https://www.elastic.co/

image.png

3.6 Zabbix

Zabbix是企业级分布式监控系统,是一个开箱即用的成熟解决方案,具备完备的功能。综合其他监控产品来说,它是一个大而全、功能丰富且定制非常灵活的产品,具备其他监控产品的功能,同时提供了其他监控产品所不具备的功能,扩展非常灵活,是企业级监控系统比较合理的选择之一。
从功能上说,Zabbix支持多种采集方式和采集客户端,有专用的Agent(代理),也支持SNMP、IPMI、JMX、Telnet、SSH等多种协议,它将采集到的数据存放到数据库中 , 可 以 支 持 MySQL 、 Oracle 、PostgreSQL、SQLite、Elasticsearch等数据库,然后对其进行分析整理,达到条件触发告警,并支持对告警数据的分析统计。Zabbix具有良好的管理界面,如图所示。


image.png

image.png

4. 如何选择监控产品

image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,233评论 6 495
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,357评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,831评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,313评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,417评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,470评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,482评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,265评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,708评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,997评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,176评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,827评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,503评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,150评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,391评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,034评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,063评论 2 352

推荐阅读更多精彩内容