Zabbix(五):高级应用-web方案、被动监控、基于snmp协议被动监控、proxy配置测试实例

1.web方案

web scenario:web监控方案,web场景;

web scenarios指的是监控指定的web站点的资源下载及页面响应时间等数据指标;

(1)创建web监控需要先定义一个web scenario(方案):

一个web方案包括一个或多个HTTP请求或步骤(steps)

每次监控都是按照预先定义的步骤的顺序执行;

(2)通过web监控方案可以获取到下列信息:

整个web方案中所有步骤的速度和响应时间,以及平均下载速度和平均响应时间;

失败的步骤号

失败的报错信息

(3)在设置web方案中的具体步骤时,可以按需调用此步骤的下载速度和响应时间,以及响应状态码;

(4)Zabbix可以检测获取到HTML页面中是否包含预设的字符串信息,也可以实现模拟浏览器完成登录,身份验证和页面点击的功能;

(5)在创建完成一个步骤以后,Zabbix会自动在已经选择好的application中添加若干个items,这些items可以用于创建触发器及定义报警条件;

基于之前创建的nginxweb创建web,点击Hosts里面nginxweb后面的web,点击Create web scenario

在Steps添加相关内容

创建完成后,查看latest data,多了六项内容

2.Zabbix的主动/被动检测

被动检测:相对于agent而言,agent接口,Zabbix server向Zabbix agent请求获取配置的各items相关的数据,agent负责接收请求、获取数据并响应给Zabbix server

主动检测:相对于agent而言,agent(active)接口,Zabbix agent向Zabbix server请求与自己相关的items的配置,主动地将监控数据发送给Zabbix server;

配置主动检测,在agent端需要的基本配置:

ServerActive=Zabbix_server,Zabbix_proxy

Hostname=Local_hostname

在agent端需要的基本配置

##### Active checks related,在该配置段中配置一下内容

ServerActive=172.16.1.2

Hostname=zrs2.zrs.com

还要在server端配置一下内容

[[email protected] ~]# vim /etc/hosts

172.16.1.4  zrs2.zrs.com zrs2

删除之前的host,创建一个新的host

在这个host上面创建item,preprocessing中改为Change per second

查看,因为有之前创建的的模版,所以直接加进当前host中,为5个item和2个application,可以看到已经监控成功。

3.基于snmp协议被动监控


什么是SNMP

SNMP:“简单网络管理协议”,用于网络管理的协议。SNMP用于网络设备的管理。SNMP的工作方式:管理员需要向设备获取数据,所以SNMP提供了“读”操作;管理员需要向设备执行设置操作,所以SNMP提供了“写”操作;设备需要在重要状况改变的时候,向管理员通报事件的发生,所以SNMP提供了“Trap”操作。

监听端口

161/udp

162/udp

CentOS 6/7:支持SNMP协议的方法:

net-snmp,net-snmp-utils

配置文件:

/etc/snmp/snmpd.conf

启动服务:

systemctl start snmpd.service

测试工具:

snmpget -v 2c -c public HOST OID

snmpwalk -v 2c -c public HOST OID

在被管理的主机上,关闭zabbix-agent服务

[[email protected] ~]# systemctl stop zabbix-agent.service

在监控主机和被监控主机上都下载snmp服务

yum -y install net-snmp net-snmp-utils

在被监控的主机上启动服务

[[email protected] ~]# systemctl start snmpd.service

在监控主机上测试

[[email protected] ~]# snmpget -v 2c -c public 172.16.1.4 system.sysDescr.0

SNMPv2-MIB::sysDescr.0 = STRING: Linux zrs2.zrs.com 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64

删除之前的host,创建新的基于snmp的host,还用原来的name

创建item,监控网络流量,snmp可以任意写一个key,snmp监控在OID上面,preprocessing中改为Change per second

4.Zabbix Proxy


分布式监控的模型之一;

两种类型:

server-node-agent

server-proxy-agent(zabbix 3.0+)

安装和配置Zabbix proxy:

完成代理功能:

zabbix-proxy-mysql zabbix-get

实现将采集的数据传回给server:

zabbix-sender

想要监控proxy主机:

zabbix-agent

打开一台新的虚拟机172.16.1.5,安装zabbix-proxy-mysql zabbix-get zabbix-sender zabbix-agent作为反代主机

[[email protected] ~]# hostname

zrs4.zrs.com

配置文件

[[email protected] ~]# egrep -v '^$|#' /etc/zabbix/zabbix_proxy.conf 
ProxyMode=0
Server=172.16.1.2
Hostname=zrs4.zrs.com
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_proxy.pid
SocketDir=/var/run/zabbix
DBHost=172.16.1.5
DBName=zbxdb
DBUser=zabbixuser
DBPassword=zabbixpass
ConfigFrequency=60
DataSenderFrequency=5
StartPollers=5
StartPollersUnreachable=1
StartTrappers=5
StartPingers=1
StartDiscoverers=1
StartHTTPPollers=1
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000

创建数据库

[[email protected] ~]# systemctl start mariadb
[[email protected] ~]# mysql
MariaDB [(none)]> create database zbxdb charset 'utf8';
MariaDB [(none)]> use zbxdb;
MariaDB [(none)]> grant all on zbxdb.* to [email protected]'172.16.%.%' identified by 'zabbixpass';

导入数据库

[[email protected] ~]# cp /usr/share/doc/zabbix-proxy-mysql-3.4.4/schema.sql.gz /root
[[email protected] ~]# ls
anaconda-ks.cfg  initial-setup-ks.cfg  schema.sql.gz
[[email protected] ~]# gunzip schema.sql.gz 
[[email protected] ~]# mysql -uzabbixuser -h172.16.1.5 -p zbxdb < schema.sql 
Enter password:

启动服务

systemctl start zabbix-proxy.service

在Administration的Proxies中创建反代

打开一台新的虚拟机172.16.1.10,安装 zabbix-sender zabbix-agent,作为反代服务器的后端

[[email protected] ~]# hostname

zrs5.zrs.com

配置文件

[[email protected] ~]# egrep -v '^$|#' /etc/zabbix/zabbix_agentd.conf 
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
EnableRemoteCommands=1
Server=172.16.1.5
ListenPort=10050
 StartAgents=3
ServerActive=12.16.1.5
Hostname=zrs5.zrs.com
Include=/etc/zabbix/zabbix_agentd.d/

创建发现规则

再创建动作,就可以通过反代自动添加主机了。

查看Hosts,发现这个主机已经成功添加进来了,给监控到的这个主机创建一个item监控项,preprocessing中改为Change per second

然后查看Hosts,这个主机的绿灯也亮了。

查看这个主机的Latest data,正常监控了。

时间: 2024-10-09 21:55:27

Zabbix(五):高级应用-web方案、被动监控、基于snmp协议被动监控、proxy配置测试实例的相关文章

zabbix基于SNMP 协议监控路由器

zabbix基于SNMP 协议监控路由器 步骤 步骤超级方便. 1. 路由器上开启snmp 2. 确保外网能访问到 3. 用snmpwalk测试 4. 添加zabbix主机,SNMP interfaces中添加ip,去掉默认的zabbix agent,模块选择Template SNMP Interfaces snmpwalk测试命令 [[email protected] init.d]# snmpwalk -v 2c -c public 192.168.1.253 1.3.6.1.2.1.2.2

基于snmp协议监控华为s5720交换机

我遇到的问题: 最近在用cacti监控一台华为s5720交换机,监控模块是低版本的模板,监控高版本的交换机就不能获取数据. 根据原理找原因: 因为采用的是基于SNMP协议监控,用snmp获取数据必须获取OID(对象描述符).获取OID最精确的是联系设备厂商.s5720的OID是我联系厂商获得的,供大家参考. 类别 节点信息 对应节点的OID 备注 设备状态监控 CPU利用率 1.3.6.1.4.1.2011.5.25.31.1.1.1.1.5 盒式设备获取CPU利用率和内存利用率的大小还可以使用

Cacti基于SNMP服务添加监控远程Linux主机

Cacti安装完成,默认仅仅可以对本机自身监控,要实现对远程客户端Linux.Windows主机的监控,需要在远程客户端主机安装SNMP服务,通过SNMP捕获数据,Cacti服务端使用RRDtool来生成图表信息实现对远程客户端主机的监控. 下面通过实验完成Cacti添加远程Linux.Windows主机监控服务. 一.添加监控Linux主机 Cacti服务端:192.168.1.251(CentOS 6.7) Cacti客户端:192.168.1.21 (CentOS 6.5) Step1:客

[Amaze UI] 如何推进 mobile first 的前端 Web 方案

背景:云适配创立之初,我们就开始积累自己的前端框架,同时也借鉴了Bootstrap等国外框架的优点.在内部使用过程中,大家一致反映不错,我们就希望把这个产品开源,希望分享给更多的人,也希望更多的人来贡献代码,来共建中国前端开源生态环境. 由于Amaze UI目前处在内测期,我们希望能尽可能多的收集到优秀的.有建设性的反馈建议和看法,与广大优秀前端开发者共同完善Amaze UI 的功能,推动中国移动跨屏前端技术的发展.(内测地址:http://amazeui.org/landing) 下面提前跟大

学习笔记——Maven实战(五)自动化Web应用集成测试

自动化集成测试的角色 本专栏的上一篇文章讲述了Maven与持续集成的一些关系及具体实践,我们都知道,自动化测试是持续集成必不可少的一部分,基本上,没有自动化测试的持续集成,都很难称之为真正的持续集成.我们希望持续集成能够尽早的暴露问题,但这远非配置一个 Hudson/Jenkins服务器那么简单,只有真正用心编写了较为完整的测试用例,并一直维护它们,持续集成才能孜孜不倦地运行测试并第一时间报告问题. 自动化测试这个话题很大,本文不想争论测试先行还是后行,这里强调的是测试的自动化,并基于具体的技术

Zabbix安装(三):Web页面初始化

1.复制zabbix页面文件 [[email protected] ~]# cd /home/zabbix/zabbix-2.2.5 [[email protected] zabbix-2.2.5]# cp -R frontends/php/ /var/www/html/zabbix 2.访问Web页面进行初始化 http://10.188.1.103/zabbix 出现以下报错请参考上小节中的二.2 配置PHP: http://ywzhou.blog.51cto.com/2785388/157

zabbix自定义监控实现思路以及自定义监控某个端口的连接数

一 zabbix自定义监控实现思路 我在前面有写到: zabbix3.x服务端安装和配置 zabbix3.x客户端安装和配置 zabbix监控memcached 实际上我们要想使用zabbix来监控一些服务的原理很简单,步骤分别是: 写一个脚本用于获取待监控服务的一些状态信息 在zabbix客户端的配置文件zabbix_agentd.conf中添加上自定义的"UserParameter",目的是方便zabbix调用我们上面写的那个脚本去获取待监控服务的信息 在zabbix服务端使用za

Zabbix监控(十六):分布式监控-Zabbix Proxy

说明:Zabbix支持分布式监控,利用Proxy代理功能,在其他网络环境中部署代理服务器,将监控数据汇总到Zabbix主服务器,实现多网络的分布式监控,集中监控. 1.分布式监控原理 Zabbix proxy和Zabbix server一样,各自监控自己网络内的设备,Proxy将监控数据传给Server,管理员在Server上就可以集中监控了.Proxy可以有多个.可以跨公网.可以跨地域限制,能有效分担Server的资源负载. 2.Zabbix Proxy安装环境参考 http://ywzhou

zabbix分布式监控与SNMP监控

分布式监控 作用 分担压力,减轻负载 多机房监控 zabbix Server  ===>  zabbix agent (只能同一个局域网监控) 环境准备 做好快照 zabbix server m01 zabbix proxy cache01 zabbix agent  cache01 在客户端cache01安装zabbix proxy 配置zabbix yum源并安装proxy [[email protected] ~]# rpm -ivh http://repo.zabbix.com/zabb