一 主动模式和被动模式
- 主动或者被动是相对客户端来讲的
- 被动模式,服务端会主动连接客户端获取监控项目数据,客户端被动地接受连接,并把监控信息传递给服务端
- 主动模式,客户端会主动把监控数据汇报给服务端,服务端只负责接收即可。
- 当客户端数量非常多时,建议使用主动模式,这样可以降低服务端的压力。
- 服务端有公网ip,客户端只有内网ip,但却能连外网,这种场景适合主动模式
二 添加监控主机
- 先添加主机组lijie-test 首先我们登陆到监控中心去配置,在添加监控主机前我们需要先添加一个主机群组,需要我们进入配置主机群组页面 点击创建主机群组,进入以下界面,我们需要填写好组名,然后点击添加按钮
- 再添加主机,主机名称和可见名称都写lijie-02,这个名字是75.134客户端的hostname 首先进入添加主机的页面 进入后填写好以下信息,其中IP地址就填写我们刚才配置好的zabbix客户端的IP地址 填写好这几项信息后,我们点击页面底部的添加按钮,就完成了添加,我们就可以在主机页面看到我们添加的主机 定义主动或者被动模式的话,可以点击上图的监控项进去配置
- 几个概念:应用集、监控项、触发器、图形、自动发现、web监测 应用集:就是监控项目的集合,如下图,64个监控项目分布在11个应用集里面 监控项:这里面是监控的所有的项目,总共64项 触发器:针对每一个监控项目设置的告警规则,也可以定义告警的级别 这里设置的告警级别是有颜色的,这个颜色会提现在下图的页面中,当我们一登录成功后,就会提示我们颜色,我们就能方便地知道哪些地方有问题 图形:zabbix能成图是因为zabbix存放了历史的数据的 自动发现规则:这里包含了两层含义,一个是磁盘空间文件系统的使用量、使用比例;另一个是网卡的流量,这些都是自动的,自动发现分区有哪些区,如果自己手动配置的话是比较麻烦的,因为每一台机器的分区数、挂载点、网卡个数、网卡名称等是不一样的,因此需要自动发现,然后给我们形成图表和触发器 web检测:用于监控某一个网站,我们可以设置监控这个网站的很多规则,比如网站某个页面出问题了,返回的状态不是200OK的时候就告警
三 添加自定义模板
- 可以自定义一个常用模板,方便给新增主机添加监控项目
模板是非常有用的,当我们增加一些固定、特有格式、特有组的一些服务器的时候,又需要给这些服务器添加一些个性化的监控项目时,我们就需要将这些监控项目添加到一个特定的模板里,然后我们再把这个模板链接到这一组机器里,每增加类似的机器,我们就连接这个模板,这样就很方便去添加这些监控项目、触发器、图形、自动发现规则等 - 自定义lijie模板 关于模板,我们首先需要自定义一个模板,安装下图方式进入添加模板页面
- 进入添加模板页面,填写好模板名称、可见名称,注意群组应该选择Templates模板群组
- 填写完毕后,点击页面底部的添加按钮就可以了
- 把其他自带模板里面的某些监控项目(比如cpu、内存等)复制到lijie模板里
这时候lijie模板里面是没有任何应用集、监控项、触发器这些的,我们可以到其他自带的目标里面复制一下监控项目过来,这里Template OS Linux模板比较适合,我们就从这里面复制监控项目过来,进入模板的监控项目列表中,选中我们想要复制的项目,然后点击页面底部的复制按钮 - 随后进入到以下页面,选中模板下面的lijie模板,然后点击复制
- 随后我们到模板中查看,可以看到lijie模板中就有了5项监控项目
- 我们也可以用同样的方法把触发器、图形、聚合图形、添加到lijie里面来
- 定义触发器
- 添加图形
- 自动发现,找到Template OS Linux,点击右侧的自动发现,参考Mounted filesystem discovery和Network interface discovery定义规则 自动发现下面没有复制这个选项
- 可以直接导出、导入模板,然后再删除不需要的对象 我们也可以将这个模板导出
- 然后会下载一个后缀名为xml的文件,我们直接编辑这个文件就可以了
- 编辑这个文件的话,需要修改里面的模板名字、然后删除不需要的对象,工作量相对比较大,而且导入时容易出错,因此一般不建议使用这种方法
这个时候我们可以使用另外一种方法,我们先来将之前复制过来的监控项删除 - 然后选择链接的模板,点击选择按钮,在弹出的页面中选择好想要链接的模板Template OS Linux
- 然后我们点击添加按钮,页面就会成为下面的样子,这时候我们再点击更新按钮
- 这时候我们可以看到模板lijie的应用集、监控项、触发器、图形等都已经有数据了
- 但是因为我们想要的数据是自动发现的数据,所以需要将其他的监控项删除,但如果是直接删除这些监控项是无法删除的,因为这些监控项数据是我们从另一个模板链接过来的
- 我们再来看链接的模板页面里面,可以看到有取消链接和取消链接并清理两个按钮
- 其中取消链接按钮是取消lijie模板跟原来Template OS Linux模板的链接关系,并不会删除原来的监控项,而取消链接并清理按钮则会取消链接关系并删除原来的监控项,我们使用取消链接按钮后,来到监控项页面可以看到原来页面中的链接模板名字已经没有了
- 这时候我们就可以删除除了自动发现外的项目了,删除的时候我们需要先删除监控项、再删除应用集
删除监控项时,我们先选择需要删除的项目,再点击下方的删除按钮 - 然后提示删除成功
- 再来删除应用集,只要后面有数字的项目就不能删除,选中没有数字的项目,点击下方删除按钮
- 提示删除成功
- 然后来删除触发器,触发器里面的项目我们都留着,图形里面删除第二项
- 自动发现规则留着,至此,我们这个lijie模板已经配置OK了,而且没有任何链接 接下来做的就是将我们之前配的主机跟这个模板链接起来,再做进一步的细化
四 处理图形中的乱码
- 设置为中文后,zabbix图形的中文文字会显示小方框
我们将主机lijie-02链接到模板lijie上,然后切换到主机的CPU负载项目下 切换后,我们看到预览界面下方有些小方块 这些小方块实际上是中文,乱码是因为在zabbix的字体库中没有中文字体,需要从windows上借用一个过来 - 服务端打开定义字体的配置文件
vim /usr/share/zabbix/include/defines.inc.php //搜索ZBX_FONTPATH
- ZBX_FONTPATH 定义的路径是“fonts”,它是一个相对路径,绝对路径为/usr/share/zabbix/fonts,在这个路径下面有一个文件“graphfont.ttf”,而这个文件最终是软链接到/usr/share/fonts/dejavu/DejaVuSans.ttf文件的,DejaVuSans.ttf这个字体文件是不支持中文的
[root@lijie-01 ~]# vim /usr/share/zabbix/include/defines.inc.php
[root@lijie-01 ~]# ls /usr/share/zabbix/fonts
graphfont.ttf
[root@lijie-01 ~]# ll !$
ll /usr/share/zabbix/fonts
总用量 0
lrwxrwxrwx. 1 root root 33 4月 12 16:27 graphfont.ttf -> /etc/alternatives/zabbix-web-font
[root@lijie-01 ~]# ll /etc/alternatives/zabbix-web-font
lrwxrwxrwx. 1 root root 38 4月 12 16:27 /etc/alternatives/zabbix-web-font -> /usr/share/fonts/dejavu/DejaVuSans.ttf
[root@lijie-01 ~]#
而字体文件为“ZBX_GRAPH_FONT_NAME”所定义的“graphfont”,它是一个文件,绝对路径为/usr/share/zabbix/fonts/graphfont,我们现在要做的就是将ZBX_FONTPATH路径下的ZBX_GRAPH_FONT_NAME定义的文件软链接到一个支持中文带中文的字体下面
- windows字体路径为“C:\Windows\Fonts\”,找到带中文的字体比如隶书, 将这个文件复制到我们windows的桌面上,然后使用sftp的方式将这个文件,也就是SIMLI.ttf放到linux的/root/目录下 然后将文件移动到到linux的/usr/share/zabbix/fonts/下,并且改名为graphfont.ttf,也可以将graphfont.ttf文件软链接到SIMLI.ttf
[root@lijie-01 ~]# ls
11.txt 1.txt~ anaconda-ks.cfg bb.txt lijie.txt ??????.pdf SIMLI.TTF
123 1.txz~ a.txt b.txt log sed sim.pid
1.txt 3.txt awk grep logs shell temp
[root@lijie-01 ~]# mv SIMLI.TTF /usr/share/zabbix/fonts/
[root@lijie-01 ~]# cd !$
cd /usr/share/zabbix/fonts/
[root@lijie-01 fonts]# ls
graphfont.ttf SIMLI.TTF
[root@lijie-01 fonts]# ln -s graphfont.ttf SIMLI.TTF
ln: 无法创建符号链接"SIMLI.TTF": 文件已存在
[root@lijie-01 fonts]# mv graphfont.ttf graphfont.ttf.bak
[root@lijie-01 fonts]# ls
graphfont.ttf.bak SIMLI.TTF
[root@lijie-01 fonts]# ln -s SIMLI.TTF graphfont.ttf
[root@lijie-01 fonts]#
这时候我们再刷新主机的图形预览界面,可以看到原来的小方块已经显示为中文了
我们也可以切换到检测中下面的最新数据页面,将lijie-02主机加入进来,可以看到下面的表中是有数据的
然后我们点开其中一个的图形
可以看到以下图形界面
但这些图形是在配置的图形界面下是看不到的
这是因为我们之前只配置了上图展示出来的图形,如果要想新增图形,可以点击上图中的创建图形按钮,然后跳转到以下界面,填写好,然后点击最下方的添加按钮
然后我们就可以在配置图形界面中看到我们新增的图形了
五 自动发现
我们来到lijie-02的自动发现下面,可以看到有一个图形原型的按钮
但是有时候配置完成后我们在图形界面下面并没有看到自动发现的图形,这是因为自动发现的时间间隔是1小时,(由于我这里配置成功超过1h,因此已经可以看到网卡图形数据)我们刚配置成功还不会出现数据,这时候我们可以点击进入自动发现的项目列表中的一项,进入到自动发现规则配置页面,然后将原本的数据更新时间3600s设置为60s,然后点击页面下方的更新按钮
随便可以看到时间间隔变为了1m
我们这里为了让配置更快生效,我们去重启一下zabbix-server和zabbix-agent,这时我们再看图形就会有数据了,为了不影响使用效果,此时我们将60s可以改为600s时间间隔,我们也可以来看下网卡ens33的数据流量状况
我们也可以从windows中传输数据到linux中来做下测试,我们给linux传输一个大点的文件,可以看到网卡流量的变化
查看流量我们也可以在命令行中使用nload命令,但要注意的是nload命令流量是上传下载大小,其单位为字节KB,而在图形界面看到的网卡流量的单位是比特
另外图形的颜色、线条的虚实等配置需要到模板lijie中去配置