hualinxu ext zbx 1.5:zabbix5 agent配置主动模式

目录

一、agent的主动和被动模式介绍

1.1 主动模式

1.1.1 abbix-Agent主动向Zabbix-Server发送请求的工作流程

1.1.2 Zabbix-Agent发送数据给Zabbix-Server的工作流程

1.2 被动模式

1.3 共存问题

二、配置说明

三、例子

3.1 agent安装及配置主动模式

3.1.1 agent安装

3.1.2 配置agent为主动模式

3.2  添加zabbix监控


我在《centos8搭建zabbix5.0》只搭建默认使用是agent被动模式,但实际工作中使用主动模式比较多。

所以本篇讲一下zabbix agent的主动模式搭建

一、agent的主动和被动模式介绍

 Zabbix-Agent的工作模式可以分为主动模式(Active)和被动模式(Passive)

主动模式:agent-->server(push推送)

被动模式:agent<--server(pull拉取)

PS:server接收agent推过来的监控数据,所以我push(推送),server从agent把监控数据拉过来,所以叫pull(拉取)。

1.1 主动模式

主动模式是指Zabbix-Agent将采集到的数据主动推送给Zabbix-Server,其行为是Zabbix-Agent向Zabbix-Server主动发起的数据连接过程,Zabbix-Server不必等待Zabbix-Agent的数据采集行为,Zabbix-Agent能够一次批量发送多条数据给Zabbix-Server,属于一对多的响应模式对Zabbix-Server的性能开销较少,适合大规模环境使用。

1.1.1 abbix-Agent主动向Zabbix-Server发送请求的工作流程

在主动模式中,Zabbix-Agent在启动时就会向Zabbix-Server发送请求,以获取需要主动监控的监控项。这部分的运行流程总结如下:

(1)Zabbix-Agent向Zabbix-Server建立一个TCP连接。
(2)Zabbix-Agent请求需要检测的数据列表。
(3)Zabbix-Server响应Zabbix-Agent,发送一个Item列表(Item key、Delay)。
(4)Zabbix-Agent响应请求。
(5)完成本次会话后关闭TCP连接。
(6)Zabbix-Agent开始周期性地采集数据。

1.1.2 Zabbix-Agent发送数据给Zabbix-Server的工作流程

当Zabbix-Agent将监控项数据采集完成之后,会将数据发送给Zabbix-Server。这部分的运行流程总结如下:

(1)Zabbix-Agent向Zabbix-Server建立一个TCP连接。
(2)Zabbix-Agent将数据发送给Zabbix-Server,其发送周期等于Item的更新周期。
(3)Zabbix-Server处理Zabbix-Agent发送的数据。
(4)关闭TCP连接。

1.2 被动模式

被动模式是指Zabbix-Server向Zabbix-Agent请求数据,Zabbix-Agent被动接受数据请求后进行回应,属于一对一的响应模式。比如有100个监控项,Zabbix-Server需要向Zabbix-Agent请求100次,同时,Zabbix-Agent在响应Zabbix-Server时,对监控项数据采集也需要消耗时间,此时,Zabbix-Server只能耗着时间安静地等待Zabbix-Agent。相对于主动模式的高效,被动模式从时间开销和发送数据量上都处于劣势,对Zabbix-Server的性能开销较大,适合小规模环境使用。

1.3 共存问题

主动模式和被动模式在同一个Zabbix-Agent上,是可以共存的,比如让一部分监控项处于被动模式,另一部分处于主动模式。处于主动模式的监控项,由Zabbix-Agent周期性地采集数据传输给Zabbix-Server;处于被动模式的监控项,则由Zabbix-Server周期性地从Zabbix-Agent获取数据。

二、配置说明

在Zabbix-Agent的配置文件中,有3个参数和工作模式有紧密关系,分别是Server、ServerActive和Hostname,如下所示

#被动模式连接的Zabbix-Server的IP地址
Server=127.0.0.1,192.168.3.82

#主动模式连接的Zabbix-Server的IP地址,开启此项参数,
#将会自动打开主动模式;将其注释掉,则会关闭主动模式
ServerActive=127.0.0.1,192.168.3.82 

#在主动模式中,Hostname 作为Zabbix-Server处理数据的唯一依据,要求Hostname在Zabbix-Server
#中具有唯一一性。当有多个Zabbix-Agent的主机名配置相同时,会造成该主机名下的主动模式监控项
#数据存储错乱,因为在不同的时间周期内,其存储的是不同Zabbix-Agent的数据

#客户端的hostname,不配置默认使用系统主机名,使用IP做主机名也可以
Hostname=vm821 

#Agent 的进程个数,用于被动模式,如果大于0,则会监听10050端口。如果只需要主动模式,
#则可以将其设置为0,将被动模式关闭
StartAgents=3 

上面解释如下:

Server:被动模式,允许目标Zabbix-Server服务器连接Zabbix-Agent,此处允许本机127.0.0.1和192.168.3.82访问10050端口,多个IP地址之间用逗号分隔。

ServerActive:主动模式,向目标Zabbix-Server服务器传送数据。需要确保zabbix_agentd.conf配置的主机名(Hostname)和Zabbix-Web管理界面中的主机名保持一致。当Zabbix-Agent配置的主机名和Zabbix-Web配置的主机名不同时,Zabbix-Server和Zabbix-Agent日志均会报错

 

三、例子

我在《centos8搭建zabbix5.0》中,如下表所示:

主机名

IP地址(外网)

IP地址(内网)

描述

vm82

ens32:192.168.128.82

ens33:192.168.3.82

  1. Centos8.2最小化(2内存)
  2. 只安装了一些基础软件,做了快照
  3. Zabbix服务端

vm821

ens32:192.168.128.21

ens33:192.168.3.21

  1. Centos8.2最小化(1.5内存)
  2. 只安装了一些基础软件,做了快照
  3. Zabbix客户端,被动模式

vm822

ens32:192.168.128.22

ens33:192.168.3.21

  1. Centos8.2最小化(1.5内存)
  2. 只安装了一些基础软件,做了快照
  3. Zabbix客户端,主动模式,先不配置

备注:

  1. 我用的是VMware10虚拟机做的实验,本机内存8G,可以根据你们的情况调整
  2. 这里使用的是双网卡,一个是物理网卡,一个是loopBack网卡
    如果公司内网都做了mac地址绑定,可以使用NAT模式上网。这里使用NAT模拟外网
    内网的IP地址我使用的是LoopBack网卡方便登陆管理,实验都会用它做内网
  3. 内存推荐2G,小的话弄1.5G也行,centos7不建议弄1G,很容易出问题

我只安装了zabbix服务端和配置了一个agent,主机为vm821,是被动模式,本篇将另一个agent,主机为vm822安装为主动模式

 

3.1 agent安装及配置主动模式

在操作之前先确保添加了主机名 cat /etc/host ,如果添加了,先不要重复添加,如果没添加请执行如下命令:

#在vm821和vm822加入hosts绑定主机名
echo '192.168.3.82 vm82'>>/etc/hosts
echo '192.168.3.21 vm821'>>/etc/hosts
echo '192.168.3.22 vm822'>>/etc/hosts

3.1.1 agent安装

#安装依赖
dnf install -y unixODBC
#安装zabbix源
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/8/x86_64/zabbix-release-5.0-1.el8.noarch.rpm
#安装agnet客户端及sender 小工具
dnf install -y zabbix-agent zabbix-sender 

PS:如果发现用dnf安装太慢,也可以使用国内的zabbix源,如阿里云镜像、华为云镜像等,我这里使用华为云

#建立相关目录
mkdir -pv /disk1/tools
cd /disk1/tools/
#下载对应的包
wget https://mirrors.huaweicloud.com/zabbix/zabbix/5.0/rhel/8/x86_64/zabbix-agent-5.0.2-1.el8.x86_64.rpm
wget https://mirrors.huaweicloud.com/zabbix/zabbix/5.0/rhel/8/x86_64/zabbix-sender-5.0.2-1.el8.x86_64.rpm
#通过dnf方式安装rpm包,一定要记得先安装zabbix yum源,否则如果有依赖则无法自动添加
dnf install zabbix-*.rpm 

3.1.2 配置agent为主动模式

修改zabbix配置文件zabbix_agentd.conf,相关操作命令如下:我把被动模式去掉,使用主动模式

#建立相关目录
mkdir -pv /disk1/logs/zabbix
chown zabbix.zabbix -R /disk1/logs/zabbix
#修改配置文件
cd /etc/zabbix/
cp zabbix_agentd.conf zabbix_agentd.conf.orig
#没修改前效果
egrep '^Server|^LogFile=|^ServerActive|^Hostname|StartAgents=' zabbix_agentd.conf
#修改日志路径
sed -i 's#/var/log#/disk1/logs#' zabbix_agentd.conf
#主动模式指向server ip地址
sed -i '/^ServerActive/s/127.0.0.1/192.168.3.82/' zabbix_agentd.conf
#修改Hostname为agent本机的hostname
sed -i "/^Hostname/s/Zabbix server/`hostname`/" zabbix_agentd.conf
#把 “# StartAgents=3” 的注解去掉
sed -i "/StartAgents=/s/# //" zabbix_agentd.conf
#修改后效果
egrep '^Server|^LogFile=|^ServerActive|^Hostname|StartAgents=' zabbix_agentd.conf

实现修改效果如下:

LogFile=/disk1/logs/zabbix/zabbix_agentd.log
#没有配置被动模式,被动模式不能注解掉!
Server=127.0.0.1
#开房3个agent进程
StartAgents=3
#主动模式指向服务器IP地址
ServerActive=192.168.3.82
Hostname=vm822

#服务agent服务

#启动服务
systemctl start zabbix-agent
systemctl status zabbix-agent
#开机运行
systemctl enable zabbix-agent

查看一下agent开启的进程数 

[root@vm822 zabbix]# ps -ef|grep agentd|grep listener
zabbix      2646    2644  0 19:03 ?        00:00:00 /usr/sbin/zabbix_agentd: listener #1 [waiting for connection]
zabbix      2647    2644  0 19:03 ?        00:00:00 /usr/sbin/zabbix_agentd: listener #2 [waiting for connection]
zabbix      2648    2644  0 19:03 ?        00:00:00 /usr/sbin/zabbix_agentd: listener #3 [waiting for connection]

运行了,在服务器端用zabbix_get测试一下,如下:

#因为被动模式 Server=127.0.0.1 没有指向 服务器IP地址,所以执行报错,属于正常
#如果要测试可以把把指向服务端,我这里不就修改IP地址了
[root@vm82 ~]# zabbix_get -s 192.168.3.22 -k system.hostname
zabbix_get [5539]: Check access restrictions in Zabbix agent configuration

PS:因为我配置了主动模式所以不使用使用上面的zabbix_get 。可以在agent端使用 zabbix_sender 向服务端推送数据,配置Item的类型为Trapper。

3.2  添加zabbix监控

通过zabbix web这个agent也添加到zabbix监控中,操作如下:

下面这些配置是什么意思,我就不讲了,我在搭建环境的时候 已经讲过了,这里值得注意的就是,Host name名字要和agent上的机子的hostname值一样 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值