zabbix监控服务器功能很强大,固然配置也极为复杂。今天总结一下zabbix监控体系中的各个元素的做用以及他们之间的关系。固然,这个总结看起来多是十分杂乱的,须要耐心梳理。如下内容均以zabbix2.4.1版本为例。mysql
想要了解zabbix的监控体系,从Template开始,下面简单剖析一下Template:linux
1,zabbix中的Template就是一整套定制好的监控方案。这个方案中能够包含预约义好的Applications 、Items、Triggers 、Graphs 、Screens 、Discovery 、Web 。sql
2,能够在Configuration->Templates中看到zabbix自带的Template,如对Linux系统、mysql等的监控方案。这些能够在直接使用。也能够在这里定义本身的Template,个性化监控本身想要监控服务,这点很是强大。shell
3,以监控Linux系统为例说明怎么使用Template。首先要在被监控的机器上安装zabbix客户端程序(安装方法另行总结吧)。打开zabbix页面,登陆管理员账号,依次点击Configuration->Hosts->create host,添加要监控的主机信息。Host name和Visible name建议使用监控对象的IP,选择机器所在的group,Agent interfaces中添加被监控主机的IP,端口默认。惦记Templates选项,点击Link new templates后面的select,选择Templates组中的Template OS Linux,依次点击Link new templates框中的ADD和页面下方的ADD。服务器
这样对目标主机的linux系统监控就配置好了。点击Monitoring->Latest data就能够看到监控结果了:spa
zabbix是如何在按照Template的指示工做的呢?
对象
Template里面各个元素的功能和关系:内存
4,Template的几大要素:
it
比较重要的两个:io
Application:简单的说Application就是分组,对服务端监控项目的分组。好比上面用到的Linux系统监控Template中就有CPU,Memory等分组,分别对应一系列针对CPU和内存的监控项。将这些彼此有密切联系的监控项放一个分组(即同一个Application)中,看起来十分直观。
Items:就是Application分组中具体的一个个监控项。仍是一上文Linux系统监控Template的CPU Application为例,里面包含了CPU system time、CPU idle time、CPU interrupt time等等多项CPU监控指标。Items最重要的一个参数是key。zabbix客户端就是根据这个key去寻找对应的shell脚本,运行并获取对应的值,返回页面展现给用户。正如前面所说,一个Application对应1到多个Items。一个Application就是一个Items族群。另外Items必须放到某一个Application中去,不然在监控页面是看不到这个Items对应的监控结果的。
5,关联(Link to)与被关联(Linked):前面说过,新建一个监控对象Host时,能够关联一个Template,这样这台机器对应这个Template的监控信息就会展示在监控结果页面中。此外,zabbix还提供了Template关联Template。假设Template A 关联了Template B。那么关联了A的主机一样也就关联了B。在这个主机的监控页面上,就会有A,B两个监控结果同时展示出来。这极大了增长了监控配置的灵活性和多样性。
上面简单总结了Template的用法、构成。以及Template中间的关联。zabbix给了用户极大的自由去定制本身的监控计划,同时也使得这件事变得有点杂乱无章,没有头绪。之后继续总结其余功能。