hualinxu ext zbx 1.3:zabbix 基础概述

目录

一、开源监控及对比

1.1 cacti、nagios、zabbix对比

1.1.1 cacti

 1.1.2 nagios

1.1.3 zabbix

1.2 网络监控系统对比

二、zabbix介绍

2.1 zabbix基础功能

2.2 zabbix构架

2.3 zabbx组件

2.4 一个完整的zabbix监控组成

2.5 术语

2.5.1 主要术语

2.5.2 其它术语

2.6 其它概念

附录一、网络监控系统对比


学习zabbix之前,了解一下zabbix概念是很有必要的,我这里就简单说一下。

一、开源监控及对比

目前免费开源的基础监控软件主cactinagioszabbix,它的主要区别如下

1.1 cactinagioszabbix对比

1.1.1 cacti

1.重在采集服务器、网络设备的监控数据并绘图
2.依赖于snmp协议
3.不好自定义监控
4.告警支持不友好

cacti小巧,最适合流量监控,比如交换机流量,使用的是rrdtoo保存l数据 ,一种很古老的已经有很简单的时序数据库的功能。

现在还有小部分企业在使用,主流也是监控流量相关的。

 1.1.2 nagios

1.重在监控告警,但zabbix更出色,告警配置web化
2. Nagios添加监控需要更改配置文件
3.无监控历史数据,图形支持差
4.不支持分布式监控(假如北京1000台、.上海1000台、 杭州1000台)

PS:nagios和它的名字一下“难搞死”,安装非常麻烦,我曾经试过安装它及插件,足足花了3天的时间才搞定,各种问题。

基本上不用 

1.1.3 zabbix

1.所有监控配置都WEB化,WEB采用php开发
2.支持分布式监控
3.支持多种方式数据采集:简单监控、Agent监控、 snmp接口监控、 JMX接口监控
4.告警配置web化:邮件、微信、钉钉、短信
5. Zabbix和Grafana的结合方便监控数据的可视化
6.先搭建zabbix ,在实战中zabbix

PS:现在化的监控,大型基础监控工具。比如携程也是在用它,只是于是基于二次开发的。

1.2 网络监控系统对比

具体的对比详见附录一

 

二、zabbix介绍

2.1 zabbix基础功能

数据采集方式:zabbix agent,agent(active),SNMP,SSH等;

数据存储方式:RDBMS, MySQLMariaDBPostgreSQLSQLiteOracle or IBM DB2等等

数据展示方式:php,web,gui;

报警功能:支持报警升级;

2.2 zabbix构架

2.3 zabbx组件

  • Zabbix主要由zabbix server和zabbix agent组成;

  • server端负责从agent端收集监控数据,并存储在数据库中,同时对数据进行分析展示,并触发相关报警;

  • agent端负责监控数据的采集,并发送给server端;(现在zabbix5.0有agent2,go写的,加入了一些新功能)

  • 数据采集方式除了在被监控主机上部署agent程序外,还可通过ICMP/IPMI/SNMP等协议对网络设备进行监控,同时配置web监控方式可以监控web页面的下载速率和响应时间等重要参数,很有参考价值哦;

  • Zabbix proxy是在大规模分布式监控场景中,采用的一种用以分担server端压力的分层结构,Proxy只负责一定区域内的数据采集工作,然后定期将数据一次性发送给server,极大的减轻了server的负载压力,使得可以支持更大规模的监控需求;

2.4 一个完整的zabbix监控组成

2.5 术语

可以看zabbix5.0官方文档DEFINITIONS,我这里而只是简单说一下

2.5.1 主要术语

  • Host主机:要监控的网络设备;

  • Host Group主机组:主机的逻辑容器,可包含主机和模板;通常用于给用户或用户组指派监控权限时使用;

  • Item监控项:一个特定监控指标的相关数据,是数据采集的核心,每个item都由key进行唯一标识;

  • Trigger触发器:用于为监控项item所收集的数据定义阈值,触发器的状态在OK和PROBLEM间不断切换;

  • Event事件:触发器的状态转变,新的agent或重新上线的agent的自动注册等,都会产生event;

  • Action动作:指对于特定event实现定义的处理方法,由通知内容、条件、操作这3部分组成;

  • Escalation报警升级:发送警报或执行远程命令的自定义方案;

  • Media Type媒介:发送通知的手段或通道,如Email,Jabber或SMS等;

  • Notification通知:通过选定的media向用户发送的有关某event的信息;

2.5.2 其它术语

  • Remote Command远程命令:预定义的命令,可在被监控主机处于某特定条件下自动执行;

  • Template模板:用于快速定义被监控主机的预设条目集合,通常包含了item、trigger、graph、screen、application等;

  • Application应用:一组item的集合;

  • Web scennaria web场景:用于检测web站点可用性的一个或多个HTTP请求;

  • Frontend前端:Zabbix的web接口

2.6 其它概念

UserParameter用户参数:可在被监控端通过设置UserParameter的方式,获得Zabbix预定义的key无法收集到的监控数据

  • 语法格式:UserParameter=<key>,<command>

  • 如:UserParameter=mysql.ping,mysqladmin -uroot ping | grep -c alive

  • server端的调用的key为:mysql.ping ,可获得被监控主机上mysql程序的存活状况

  • 如:UserParameter=memory.usage[*],/bin/cat /proc/meminfo | awk '/^$1:/{print $$2}' ,带参数的UserParameter可批量监控多个同类监控项

  • server端的调用的key为memory.usage[MemFree] ,获得被监控主机剩余内存的数值

  • server端的调用的key为memory.usage[MemTotal} ,获得被监控主机总内存的数值

Macros宏:zabbix基于宏保存预设的文本模式,并在调用时将其替换为其中的文本,可理解为全局变量;

  • 宏的名称只能使用大写字母、数字及下划线;

  • 分为zabbix内置宏和用户自定义宏;

  • 内置的宏,有{HOST.NAME},{HOST.IP},{TRIGGER.NAME},{TRIGGER.DESCRIPTION}等;

  • 用户自定义的宏要使用{$MACRO}这种特殊的格式引用,以区别于zabbix内置的宏;

 

 

附录一、网络监控系统对比

摘自维基百科《Comparison of network monitoring systems

NameIP SLA ReportsLogical GroupingTrendingTrend PredictionAuto DiscoveryAgentlessSNMPSyslogPluginsTriggers / AlertsMIBCompilerWebAppDistributed MonitoringInventoryPlatformData Storage MethodLicenseMapsAccess ControlIPv6Latest release dateLatest release version
Argus - The all seeingYesYesYesNoNoYesYesYesYesYesNoViewing, Acknowledging, ReportingYesUnknownPerlFlat fileBerkeley DBArtistic LicenseNoYesYes2013-023.7
Avaya VPFMYesYesYesNoYesNoYesYesYesYesNoFull ControlYesYesUnknownMySQLCommercialYesYesYesUnknownUnknown
CactiYesYesYesYesYesYesYesYesYesYesNoFull ControlYesYesPHPRRDtoolMySQLGNU GPLVia pluginYesYes2019-06-071.2.4
CheckmkYesYesYesYesYesYesYesYesYesYesNoFull ControlYesYesCPythonRRDtoolGNU GPLYesYesYes2020-08-191.6.0p16
collectdNoNoNoNoPush model;
multicastpossible
YesYesYesYesYesNoViewingYesNoCRRDtoolGNU GPLNoApache ACLYes2019-11-135.10
CruzYesYesYesNoYesYesYesYesYesYesNoFull ControlYesYesJavaC++.NETMySQLOracleCommercialYesYesYes2019-028.0.0
FreeNATSYesYesNoNoYesNoNoVia pluginYesIn PHP CodeNoFull ControlNoNoPHPMySQLGNU GPLNoYesUnknown2011-07-091.13.3b
GangliaNoYesYesNoVia gmond check inNoVia pluginNoYesNoNoViewingYesUnknownCPHPRRDtoolBSDYesNoUnknown2016-06-143.7.2
HinemosYesYesYesYesYesYesYesYesYesYesNoFull ControlYesYesJavaPostgreSQLGNU GPLYesYesYes2017-06-096.0.1
HPE Openview Network Node Manager (NNMi)YesYesYesYesYesYesYesVia integrationYesYesNoFull ControlYesYesC++JavaPerlPostgreSQLOracle DatabaseCommercialYesYesYes2016-0810.20
IcingaVia pluginYesYesNoVia pluginYesVia pluginVia pluginYesYesNoFull ControlYesVia pluginC[1]MySQLPostgreSQLOracle DatabaseGNU GPLUnknownYesYes2019-03-192.10.4
InterMapperYesYesYesNoYesYesYesYesYesYesNoViewingYesYesWindowsLinux & Mac OSPostgreSQLLimited free, CommercialYesYesYes2017-076.1.5
isyVmonYesYesYesNoVia pluginNoYesYesYesYesNoFull ControlYesVia pluginPHPRRDtoolMySQLLimited free, CommercialVia pluginYesYesUnknownUnknown
Kaseya Network MonitorYesYesYesNoYesYesYesYesYesYesYesFull ControlYesYesUnknownFirebirdSQLCommercialYesYesUnknownUnknownUnknown
MuninNoYesYesYesNoNoYesNoYesPartialNoViewingVia nodesUnknownPerlRRDtoolGNU GPLUnknownUnknownYes2020-03-242.0.59
NagiosVia pluginYesYesNoVia pluginYesVia pluginVia pluginYesYesNoYesYesVia pluginCFlat fileSQL (via ndoutils), MySql (Via Nconf)GNU GPLYesYesYes[2]2019-07-294.4.4[3]
NeDiNoYesYesNoYesYesYesYesNoYesNoYesYesYesPerlPHPPgMySQLRRDToolMariaDBGPL3, CommercialYesYesYes2016-041.6[4]
NetdiscoNoNoNoNoYesYesYesYesYesYesNoYesYesYesPerlPostgreSQLBSDYesYesYes2017-102.036011[5]
NetXMSUnknownYesUnknownUnknownYesYesYesYesUnknownYesYesYesYesYesCJavaOracleMySQLMongoDBPostgreSQLIBM DB2TuxedoGNU GPLYesYesUnknown2020-02-263.2.472
NeuralStarYesYesYesNoYesYesYesYesYesYesNoFull ControlYesYesUnknownMS SQLCommercialYesYesYesUnknownUnknown
CA UIM fka Nimsoft MonitorYesYesYesYesYesYesYesYesYesYesNoViewing, Acknowledging, ReportingYesYesUnknownSQLServerOracleMySQLLimited free, CommercialYesYesYes2013-06-301.8.6
OctopussyNoYesYesNoYesYesNoYesYesYesNoFull controlNoYesPerlASPMySQLGNU GPLNoYesNo2017-06-031.0.16
op5 MonitorYesYesYesYesYesYesYesYesYesYesNoYesYesVia pluginCPHPFlat fileSQLLimited free, CommercialYesYesYesMonthly7.3.0
OpenKBMYesYesYesNoYesYesYesYesYesYesNoYesYesYesUnknownProprietary with JDBC supportCommercialYesYesYesUnknownUnknown
OpenNMSYesYesYesYesYesYesYesYesYesYesYesFull ControlYesYesJavaJRobin / RRDTool / Apache CassandraPostgreSQLAGPLv3YesYesYes2019-09-2625.0.0
Opmantek NMISYesYesYesYesYesYesYesYesYesFull ControlNoYesYesYesPerlMongoDBRRDtoolGPL, CommercialYesYesYes2020-068.7.0

9.1.0

OPNET's AppResponse XpertYesYesYesYesYesYesYesNoYesYesNoViewing, Acknowledging, ReportingYesNoUnknownUnknownCommercialYesYesUnknownUnknownUnknown
OpsviewYesYesYesNoYesYesYesYesYesYesNoFull ControlYesNoPerlCExtJSSQLCommercialYesYesNo2019-08-076.2
OSI NetExpertYesYesYesYesYesNoYesYesYesYesNoYesYesYesJavaC++OracleCommercialYesYesYes2013-0410.0
PA Server MonitorNoYesYesYesYesYesYesYesNoYesNoViewing, ReportingYesYesC++SQLiteMicrosoft SQL ServerCommercialYesYesNo2014-075.5
PacketTrapYesYesYesYesYesNoYesYesYesYesNoViewing, ReportingYesYesUnknownSQLCommercialYesYesYesUnknownUnknown
Pandora FMSYesYesYesYesYesYesYesYesYesYesNoFull ControlYesYesPerlPHPC++JavaScriptMySQLOracleGPLv2, CommercialYesYesYes2017-077.0 NG 707
PathSolutions TotalViewNoYesYesYesYesYesYesYesNoYesNoYesYesYesWindowsSQLiteCommercialYesYesNo2018-06-019.01
Performance Co-PilotNoYesYesNoYesOptional, LimitedYesYesYesYesNoViewingYesYesC PerlPythonPOSIXMinGWFlat fileGPLLGPLNoYesYes2016-11-153.11.6
PRTGYesYesYesYesYesYesYesYesYesYesYesYesYesYesWindowsFlat fileLimited free, CommercialYesYesYes2019-05-1519.2.50
ScienceLogicYesYesYesYesYesYesYesYesYesYesNoFull ControlYesYesPythonMySQLCommercialYesYesYesUnknownUnknown
SevOneYesYesYesYesYesYesYesYesYesYesNoFull ControlYesYesCC++PHPMySQLCommercialYesYesYes2018-095.7.2.4[6]
ShinkenVia pluginYesYesNoYesYesVia pluginVia pluginYesYesNoViewing, Acknowledging, ReportingYesVia pluginPythonFlat fileMySQLOracleGraphiteSqliteMongoDBAGPLYesYesYes2016-03-102.4.3
SolarwindsYesYesYesYesYesPartialYesYesYesYesNoFull ControlYesYes.NETSQLCommercialYesYesYesUnknownUnknown
SpiceworksUnknownYesUnknownUnknownYesYesUnknownUnknownYesYesUnknownUnknownUnknownYesPHPSqliteUnknownYesUnknownUnknown2018-03-217.5.00107
CA SpectrumYesYesPerf. AddOnPerf. AddOnYesNoYesYesYesYesYesYesYesYesC++JavaJavaScriptSleepycat-QSL, MySQLCommercial, per DeviceYesYesYes2020-01-2710.4.1
Xymon/HobbitYesYesYesNoVia pluginVia pluginVia pluginNoYesYesNoViewing, Acknowledging, ReportingYesVia pluginC, ShellFlat fileRRDToolMySQL via pluginGNU GPLVia pluginApache ACLNo2017-01-184.3.28
Vigilo NMSYes (NMS and NOC editions)YesYesYes via integrationYes via integrationYesYesYes via Prelude SIEMYesYesNoViewing, Acknowledging, ReportingYes (NMS and NOC editions)Yes via GLPIPythonPerlPostgreSQLRRDtoolFree (GPLv2) OSS edition, Commercial NOC/NMS editionsYes (NMS and NOC editions)Yes (NMS and NOC editions)Via plugin2017-09-144.1.0
ZabbixYesYesYesYesYesYesYesYesYesYesNoFull ControlYesYesCPHPOracleMySQLPostgreSQLIBM DB2SQLiteGNU GPLYesYesYes2020-05-125.0.1[7]
Zenoss CoreYesYesYesYesYesYesYesYesYesYesNoFull ControlYesYesPythonJavaZODBMariaDBApache HBaseFree Core GPL, Commercial EnterpriseYesYesYes2018-01-096.1.0
ZIS-SystemYesYesYesYesYesYesYesYesYesYesNoFull ControlYesYesWindowsMariaDBCommercialYesYesYes2020-02-015.8
NameIP SLA ReportsLogical GroupingTrendingTrend PredictionAuto DiscoveryAgentlessSNMPSyslogPluginsTriggers / AlertsMIBCompilerWebAppDistributed MonitoringInventoryPlatformData Storage MethodLicenseMapsAccess ControlIPv6Latest release dateLatest release version
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值