NO.B.0007——zabbix-agent的被动主动模式对比item的调度方式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NO.B.0007——zabbix-agent的被动主动模式对比item的调度方式相关的知识,希望对你有一定的参考价值。
一、概述:
二、被动模式
1、创建一台主机:
2、为主机添加Items:
注:net.tcp.service支持以下类型的协议:
FTP HTTP、HTTPS、IMAP、LDAP、NNTP、POP、SMTP、SSH Telnet、NTP
3、回到ZABBIX-Agent客户端修改配置文件:
[root@localhost ~]# vim /etc/zabbix/zabbix_agentd.conf
Server=192.168.1.59,192.168.1.103 // 你的服务器地址,zabbix-server
// 若你的服务器有多个地址,可以用逗号分开。
Hostname=Another host // 你的客户端名称
# ServerActive= 127.0.0.1 // 你的服务器地址zabbix-server
// Agent操作常用命令:
[root@localhost ~]#
sed -ri ‘s/^Server=(.*)/Server=192.168.1.1/‘ /etc/zabbix/zabbix_agentd.conf
[root@localhost ~]#
sed -ri ‘s/^ServerActive=(.*)/ServerActive=192.168.1.1/‘ /etc/zabbix/zabbix_agentd.conf
[root@localhost ~]#
sed -ri ‘/# StartAgents=3/aStartAgents=0‘ /etc/zabbix/zabbix_agentd.conf
[root@localhost ~]#
sed -ri "s/^Hostname=(.*)/Hostname=$(hostname)/" /etc/zabbix/zabbix_agentd.conf
[root@localhost ~]#
egrep ‘^Server|^ServerActive|^Hostname|^StartAgents‘ /etc/zabbix/zabbix_agentd.conf
[root@localhost ~]#
zabbix_agentd && ps -ef|grep zabbix_agentd
StartAgents=0 #客户端agent模式。设置为0表示启用主动模式,而被动模式被关闭,但被监控端的 zabbix_agentd 不监听本地端口
Server=x.x.x.x #被动模式的server IP地址,如果为纯主动模式可以注释
ServerActive=x.x.x.x #主动模式的serverIP地址
Hostname=test_host #重要:客户端的hostname,不配置则使用主机名
注:纯主动模式下的zabbix agent,只能支持Zabbix Agent (Active)类型的监控项。
5、使用telnet在ZABBIX-server端测试:(firewall.server和zabbix-agent服务是否打开)
//查看端口是否开启:
[root@localhost ~]# ss -tunlp
tcp LISTEN 0 128 *:10050
OR
//在服务器端ZABBIX-server端安装Telnet来测试:
[root@localhost ~]# yum -y install telnet
[root@localhost ~]# telnet 192.168.1.60 10050
Trying 192.168.1.60...
Connected to 192.168.1.60.
Escape character is
如何克隆我们的item
配置 ——> 主机 ——> 监控项 ——> Another host ——> 名称改为SSH server status ——> 键值:net.tcp.service[ssh] ——> 克隆
6、通过命令获取item相关的值
// 1、安装zabbix-agent
[root@localhost ~]# yum -y install zabbix-agent
// 2、通过zabbix-get获取item相关的值:
[root@localhost ~]# zabbix_get -s 127.0.0.1 -k system.cpu.load
0.000000
三、主动模式:
1、zabbix-agent主动向我们的zabbi-server发起连接,询问监控的条目。
2、zabbix-server进行回zabbix-agent的请求,
3、zabbix-agent收集zabbix-server要收集的item相关值,
4、把收集的值返回给zabbx-server
[root@localhost ~]# vim /etc/zabbix/zabbix_agentd.conf
Option: StartAgents // 选择:StartAgents
# Number of pre-forked instances of zabbix_agentd that process passive checks.
//处理被动检查的zabbix_agentd的预分支实例的数量。
# If set to 0, disables passive checks and the agent will not listen on any TCP port.
//#如果设置为0,则禁用被动检查,代理将不会监听任何TCP端口。
# If this parameter is not specified, active checks are disabled.
//如果未指定此参数,则禁用活动检查。
ServerActive=192.168.1.59:10051 //配置服务器的地址及端口
5、配置成功后发现值特别大,而且会一直加;这是因为他统计的是一个所有值的和。
配置——>主机——>监控项——>进程——>每秒更改
设置为每秒更改
6、现在检查:只能加快我们更新数据的时间,不能加快数据库,数据库把数据加到缓存的时间
被动模式:zabbix4.x 现在检查 支持被动模式的现在检查(只有被动模式的请求才会发送成功)
主动模式:zabbix4.x现在检查 不支持主动模式的现在检查(发送失败)
ZABBIX被动模式和主动模式的对比:
zabbix-agent版本的监控项:
也可以向其他server发送版本信息:配置文件在zabbix_agent.conf文件中修改ServerActive后面用逗号分开。
[root@localhost ~]# vim /etc/zabbix/zabbix_agentd.conf
ServerActive=192.168.1.59:10051
如果zabbix被动模式:
1、需要我们的zabbix-server主动向zabbix-agent检索数据,那么它就会消耗我们服务器的大量资源。
2、我们需要在zabbix-agent打开10050端口
3、针对初学者相比zabbix-agent主动模式的话更容易配置,
4、支持自定义间隔模式获取信息。
5、zabbix-server默认带的模板都是被动模式,如果我们需要使用主动模式的话,需要更改它的获取信息模式。
如果我们使用zabbix-agent主动模式的话:
1、需要我们zabbix-agent主动联系服务器,这样就分担了一些负载和压力,因为服务器负责回应即可
2、zabbix-agent无需再开放10050端口给zabbix-server去链接,增加了我们的网络安全性。
3、将会较少的网路链接,进一步节约我们的网路带宽
被动模式:
1、在zabbix-front-web前添加item之后,这时候zaibbix-server他不会知道有该item,因为它还没有把该item加载到它的缓存中。其实,只是把它放入到数据库中。
2、默认60s去读取一次数据库,去数据库加载到zabbix-server的缓存中需要60s,如果你配置的item更新间隔为60s的情况下,最快的去获取item的速度60s,最慢的速度应该是60s~120s之间。
3、服务器它是以内部item ID来进行轮询。比如去查一个CPU Load。轮询间隔是60s。
主动模式:
1、在zabbix-front-web上添加item之后,这时候zaibbix-server他不会知道有该item,因为它还没有把该item加载到它的缓存中。其实,只是把它放入到数据库中。
2、在没有添加到缓存的情况时,zabbix-agent主动模式来询问zabbix-server要监控那些item。此时zabbix-sever认为说没有监控任意监控项。
3、zabbix-agent active默认是2分钟轮询一次。
4、如果我们设置的zabbix-agent更新间隔为60s情况下。对于zabbix-agent active模式大约需要三分钟来获取数据。
以上是关于NO.B.0007——zabbix-agent的被动主动模式对比item的调度方式的主要内容,如果未能解决你的问题,请参考以下文章