nginx反代web页面没有正常显示_运维丨分布式监控系统之Zabbix主动、被动及web监控的过程详解... - Go语言中文社区

nginx反代web页面没有正常显示_运维丨分布式监控系统之Zabbix主动、被动及web监控的过程详解...


 武汉商启网络信息有限公司现招聘销售、客服、网络工程师,详情请点击查看原文!

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工作为被动模式

2beeece18da6bbee6126743b61807651.png

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

c3fdb736740503f7ea4fe6bfd3346b53.png

  配置zabbix agent工作为主动模式

13957a4f28882b08350850cb39d78fec.png

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

  主动模式zabbix agent配置文件

1

2

3

4

5

6

7

8

9

[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)

7dce6bc70e0a990278256a55361c56db.png

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

7936266a5002e920f6300c60210e4ad1.png

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

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

952e04e52848e8e6346f6ffaa8775d8d.png

  提示:以上配置表示允许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是否收到数据呢?

976502171826b1d8d3455cc273b26449.png

  提示:可以看到对应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服务

8c10a9946c80f533e89740e9f0c088d6.png

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

73e9a17fb845413a19ac00d5f96176f9.png

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

46c3b1f39ec66864dd3c581b1802910b.png

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

ff393917544e67c924803cf9a702ffe5.png

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

d156404311f6cf00a573357a21912a6f.png

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

1aea28423d8b7ac463f80f89c76e546c.png

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

ee573f9af25776b89ae3247eb6bcde0e.png

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

a425516eee33d75713e7f90836efc8c3.png

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

d439997c8733fb33e0d699aba661373f.png

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

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

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

  以上就是zabbix web监控相关的配置和演示;后续我们就可以针对web监控的采集到指标数据定义触发器,告警等等操作;

31292e0fa9950d135a2ba1f60157c125.png

武汉商启网络|客户至上,合作共赢!

微信ID:shangqi_2016 e1943f4ca4c9a64bf2a9b632c4e45e15.png
版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/weixin_39867200/article/details/111680571
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2021-06-26 20:49:35
  • 阅读 ( 954 )
  • 分类:运维

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢