一、概述
Zabbix里面的内容和项目很多,简单的来说想要实现简单的监控一个服务器大致需要几个大步骤:定义修改模板、添加机器、设置报警触发,而且要项简单,连模板都可以不修改,装完就直接添加机器即可,本例主要以linux平台下怎样添加一个新机器作为说明。
二、定义模板
Zabbix针对不同的监控对象和平台内置了很多模板,比如linux、windows、以及SNMP设备及相关系统服务等。而且模板直接可以相互嵌套和调用,最简单的方式是我们添加一个监控节点时根据平台和监控类型直接选择一个模板系统就可以自动对其监控,生成相关图形。但是很多时候内置的模板不能很好提供我们想要的一些监控效果,或者有一些我们根本不需要监控的东西,因此就需要根据实际情况自定义一个模板。模板配置位置在:
Configuration>Templates
根据现有的Linux监控模板定义属于自己的模板,在模板页面下选择“Templates OS Linux”,进去后点击下方的 “Full Clone”,来对这个模板进行克隆,然后对这个模板进行命名如“OS linux”,最后点击下方"Add",在模板列表里面就会看到定义的模板。
,
三、修改模板
1.模板监控项Items
进入”OS Linux”模板,上面有很多监控内容,其中Items里面是所有预定义的系统监控项,根据里面的名字可以知道有CPU、内存使用情况、磁盘等等,其实可以不做任何修改。(我的环境里把里面的一些关于类似/etc/passwd这样的文件监控去掉了,我认为没用的全删了。)
2.修改Graphs
Graphs是定义生成图形的,可以根据需要定义让系统以什么样的方式针对哪些监控项显示图形。linux系统模板里Graphs里面有五项,其实默认可以不动,但是我觉得”Memory usage“的显示太单一,仅仅显示了有多少内存可用。点击进入Memory usage,进行修改:
在上面图中主要修改三处,其他的就是什么显示高宽度,还有显示类型什么,默认即可。这里我们要增加一个总共内存大小的图形,这样可以和当前可用内存做一个直观对比。
- MAX Value: 选择模板下的Total memory
- Items : Add选择模板下的Total memory,在Draw style中选择line,表示以线条显示,默认是填充图形,可以根据喜好自己选择颜色并通过 preview查看效果。
最终效果如下:总共内存980M,已经可用820M。
3.Discovery rule(发现规则)
顾名思义就是发现,主要用来自动发现磁盘和网卡,因为你每个服务器的网卡名称和磁盘分区可能不同,比如有网卡是eth0,有的是eth1,br0或者其他的等等,这个规则就是用来自动识别系统内的网卡和磁盘分区的,且里面有针对这个规则独立Items监控项和Graphs图形定义,将发现的网卡自动生成图形,默认情况下可以不做任何修改。
这样我们模板就定义好了,其实也没做什么修改,如果想简单甚至可以不用定义模板,就是系统自带的OS模板也行,不过真正要是用来的话可能很多人还是要或多或少的改一些的。
四、添加机器
1.进入 Configuration>Host>,点击右侧的Create host
2.建立新的主机,在Host页面添加基本信息
- Hostname主机名:apache server
- Groups in 给主机选择一个组:linux server,
- Agent interfaces:添加主机ip地址,因为我们是通过客户端代理进行监控的,所有要在Agent interfaces里添加,
3.在Templates页面给主机关联模板
- 先Select,选择之前定义好的模板“OS Linux”,然后Add 模板
- 在点击最下面的Add,进行提交,完成机器的添加。
在Configuration>Host>页面就可以看到已经添加的主机,且能看到所关联的模板。
五、查看监控
过一会在Monitor>Graphs下面就可以选择相应组和机器查看生成的图形,网卡和分区默认需要半个小时才能刷新出来,这个值可以改小,但是如果服务器很多的话为了不让zabbix压力过大尽量不要把发现扫描时间改的太短。这样主机监控就实现了,当然了,这是最最基本的功能,只让我们看看到当前服务器的某些状态。
六、其他监控项
在模板定义中处理Items,Graphs,Discovery rules还有一些其他的项,比如Applications、Triggers用的较多
- Applications:其实这是Items里面个监控项的一个分类集合,如果把所有CPU监控归一类,把所有内存等项归一类,然后在Monitor>Latest data中可以将显示这些集合里面监控项的值,如果不归类的话,在Monitor>Latest data中就会将所有Items值排列显示,显得杂乱无章,不易区分。当然自己可以定义分类和里面的监控项
- Traggers:用来标记哪些监控项出问题时需要触发警告及问题阀值的,与相应的监控项相关联,比如定义CPU使用率超过90%就代表有问题,需要触发警告等等,且可以定义警告级别。里面的定义稍显复杂,后面会做一些简单说明。
总结:这次主要很简单的演示了一个linux机器添加到监控系统的过程,鉴于本人能力有限,而且为了很快上手并没有针对比如key之类的展开详细说明,有机会可以详细的说下。实际工作当中用肯定要复杂的多,一些相对高级的功能会循序渐进的进行说明。