在分布式监控系统中怎么实现主动与被动Zabbix-创新互联

今天就跟大家聊聊有关在分布式监控系统中怎么实现主动与被动Zabbix,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

目前成都创新互联已为上千家的企业提供了网站建设、域名、网络空间、网站托管维护、企业网站设计、汝城网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

1、什么是主动监控?什么是被动监控?


我们知道获取数据的方式有两种,一种是get,一种是push;在zabbix中描述主动监控和被动监控都是站在agent的一方来描述的;我们把agent主动将数据发送给zabbix server这种方式采集数据,叫做主动监控;把zabbix server 向zabbix agent获取数据的方式叫做被动监控,这种方式只有zabbix server周期性的请求zabbix agent,zabbix agent才会响应对应的数据给zabbix server ,如果zabbix server 不请求,则zabbix agent不会发送数据给zabbix server ;而主动监控不管zabbix server请不请求agent,agent它都会以指定时间频率向server推送数据;默认zabbix 是使用的被动监控,这也意味着zabbix server 要不停的去请求各zabbix agent去采集数据,否则就没有数据;

2、主动监控的工作过程

要实现主动监控,首先agent要知道自己采集那些数据,然后发送给server端,其次zabbix server 怎么区分不同的agent 发来的数据;在zabbix 监控系统中,主动监控的工作过程是,在zabbix web上配置好监控配置后,首先保存到zabbix database中,然后由zabbix server到database中把对应的配置进行应用;在主动模式中,zabbix server 第一次会主动链接zabbix agent 把监控配置推送给zabbix agent,zabbix agent 拿到监控配置以后,它就按照指定的时间频率采集指定的数据发送给server端;而zabbix agent为了标识自己的身份,它在向server端发送数据时,它会把配置文件中指定的hostname带上,以hostname来标识自己是那个agent;

3、zabbix trap模式

trap模式也是主动监控中的一种,它的工作过程不依赖zabbix server配置的时间间隔,也不依赖zabbix agent;它的工作过程是,在被监控主机上使用zabbix sender工具,不定时的发送数据,而zabbix server端会运行一个traper的进程一直等待各个被监控端发来的数据;然后记录数据到数据库,从而完成一次数据收集的过程;这种模式主要用在收集当被监控端遇到紧急事件,临时发出的信息;

配置zabbix agent工作为被动模式

在分布式监控系统中怎么实现主动与被动Zabbix

提示:默认情况zabbix agent采用被动模式监控,但是我们要配置允许那个zabbix server来向zabbix agent发送指令采集数据;上面红框中的Server指令就是来配置允许那个zabbix server向本agent发送指令采集数据,它可以配置多个zabbix server的ip地址;配置好以上Server以后保存配置,启动zabbix agent,在zabbix web界面配置使用zabbix agent 选择zabbix agent即可完成对应item的配置;如下图

在分布式监控系统中怎么实现主动与被动Zabbix

配置zabbix agent工作为主动模式

在分布式监控系统中怎么实现主动与被动Zabbix

提示:配置zabbix agent工作为主动模式,除了要配置Server还要配置ServerActive和对应主机名,ServerActive指令用于指定将数据发送给谁;而配置主机名的方式可以使用Hostname直接指定一个固定的主机名,或者使用HostnameItem来使用内建的zabbix key system.hostname获取主机名;这两种方式选择一种即可;

主动模式zabbix agent配置文件

[root@node05 ~]# grep -Ei ^[a-z] /etc/zabbix/zabbix_agentd.conf 
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=192.168.0.43
ServerActive=192.168.0.43
HostnameItem=system.hostname
Include=/etc/zabbix/zabbix_agentd.d/*.conf
[root@node05 ~]#

在zabbix web gui配置使用对应zabbix agent 的类型为zabbix agent (active)

在分布式监控系统中怎么实现主动与被动Zabbix

查看我们刚才定义的item是否能够采集到数据呢?

在分布式监控系统中怎么实现主动与被动Zabbix

提示:能够采集到数据说明我们配置zabbix agent 为主动模式是正常的;

在zabbix web上配置使用zabbix trapper类型的item

在分布式监控系统中怎么实现主动与被动Zabbix

提示:以上配置表示允许node05.test.org这台主机使用zabbix sender向zabbix server发送数据,发送数据的key为test_trap,这个key没有实质上的意义,主要用来标识对应数据的;这样配置以后,在zabbix server 上就配置好一个trapper来接收node05.test.org使用zabbix_sender 发送test_trap这个key 的数据了;

在node05上安装zabbix-sender工具

在node05上使用zabbix_sender向zabbix server发送test_trap这个key的数据

提示:-z用户指定zabbix server的地址,-s用户指定本机主机名称;-k用于指定接收数据的key,-o表示发送对应key的数据,-o可以直接给定一个值或者使用命令替换的方式;

在zabbix web上才看对应key是否收到数据呢?

在分布式监控系统中怎么实现主动与被动Zabbix

提示:可以看到对应key已经收到数据;这种trap通常可以在没有zabbix agent情况下,对应被监控主机又想以特定频率向zabbix server发送特定的数据时使用,我们可以把在被监控端执行的zabbix sender命令配置成一个定时任务,这样也可以完成周期性的数据采集;

以上就是zabbix中常用的两种主动监控的配置,接下来我们再来了解下zabbix 的web监控

什么是web监控啊?从字面意思理解就是监控web网页嘛,对就是监控web网页;我们知道一个web站点通常都不是一个页面,除了主页还有其他系统页面,比如支付系统,订单管理系统等等;如果我们监控一个web站点是否正常,如果只监控主页很显然不够;在zabbix上它提供了监控web页面的接口,我们只需要配置其对应被监控的页面的访问url即可;在zabbix 的web监控中,默认它会监控我们指定页面的3个指标数据,分别是监控指定页面的资源下载速度,页面响应时间和响应码;

配置node05上的web服务监控

在node05上安装web服务nginx做测试

模拟提供多个访问页面,并启动nginx

在zabbix web页面上配置监控node05上的web服务

在分布式监控系统中怎么实现主动与被动Zabbix

提示:在主机列表中找到对应主机,选择web;

在分布式监控系统中怎么实现主动与被动Zabbix

提示:选择create web scenario进入创建web场景页面;

在分布式监控系统中怎么实现主动与被动Zabbix

提示:填写名称和application,选择更新时间间隔,以及尝试次数和agent(客户端浏览器,这里选择模拟谷歌的浏览器),填写好web scenari 基础信息后,点击step,填写要监控的页面相关信息;

在分布式监控系统中怎么实现主动与被动Zabbix

提示:点击add添加要监控的web url相关信息;

在分布式监控系统中怎么实现主动与被动Zabbix

提示:如果有其他信息,在对应位置点击add添加即可;按照以上逻辑添加其他网页url;

在分布式监控系统中怎么实现主动与被动Zabbix

提示:如果被监控的web页面需要验证登录用户名和密码,可以选择Authentication菜单填写对应的用户名和密码即可;如下

在分布式监控系统中怎么实现主动与被动Zabbix

提示:如果没有验证需求,最后的authentication可以选择不填写;最后添加好web url后点击Add就把对应的web 页面添加到zabbix 监控中了;

在分布式监控系统中怎么实现主动与被动Zabbix

查看添加到web 监控,它到底采集哪些数据项?是否有数据呢?

在分布式监控系统中怎么实现主动与被动Zabbix

提示:从上面的页面信息可以看到我们添加到web监控,它在每个url上都监控了下载速率,状态码和响应时长;上述监控采集到数据中,我们可以看到对于work1指定的url 它监控响应码是403,原因是我们没有给message.html授权nginx用户可读,所以它响应403;修改权限即可;

查看nginx的访问日志,看看它是否在周期性的访问对应的页面?

提示:从上面的日志中我们可以看到,zabbix server 以每一分钟的频率模拟谷歌浏览器在访问对应监控的页面;

看完上述内容,你们对在分布式监控系统中怎么实现主动与被动Zabbix有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注创新互联行业资讯频道,感谢大家的支持。


当前标题:在分布式监控系统中怎么实现主动与被动Zabbix-创新互联
文章URL:http://pwwzsj.com/article/csdido.html