zabbix_proxy使用

孤者浪人 提交于 2020-12-18 01:38:35

背景

阿里云的网络有俩种网络架构,经典网络和专有网络(vpc)

我们的监控机zabbix是在VPC内网的,如果对经典网络(公网)进行监控呢?

可能方法有很多,但是我使用了zabbix的proxy主动模式,这种场景正符合分布式监控:)  

拓扑图

输入图片说明

关于proxy的使用场景

zabbix的proxy主动模式proxy 可以用在 Proxy 没有公网 IP ,但可以访问公网的情况下

Zabbix Server <- Zabbix Proxy -> Zabbix Agent

Proxy 去请求 Zabbix Server,由于 Zabbix Agent 用的是被动模式,所以也是由 Zabbix Proxy 去请求 Zabbix Agent

  • 监控远程区域设备
  • 监控本地网络不稳定区域
  • 当 zabbix 监控上千设备时,使用它来减轻 server 的压力
  • 简化分布式监控的维护

zabbix proxy 仅仅需要一条 tcp 连接到 zabbix server

zabbix proxy 是一个数据收集器,它不计算触发器、不处理事件、不发送报警

官网参考

部署

proxy安装(proxy-server最好和zabbix-server版本一致)

yum install http://repo.zabbix.com/zabbix/3.2/rhel/6/x86_64/zabbix-release-3.2-1.el6.noarch.rpm

yum install zabbix-proxy-mysql

proxy需要一个独立的数据库,请勿和server同库。

create database zabbix_proxy ;  #不建议使用mysql8.0以上版本,数据库可以创建到其他机器上
use zabbix_proxy;     
source /usr/share/doc/zabbix-proxy-mysql-3.2.6/schema.sql;   #大概位置,自行解压
grant all privileges on zabbix_proxy.* to zabbix@'127.0.0.1' identified by 'zabbix'; 

proxy配置(proxy-server要能访问zabbix-server的10051)

主要修改以下配置

ProxyMode=0   //默认主动模式0,被动模式1
Server=zabbix_server的外网IP  //注意要限制10050和10051端口
ServerPort=10051
Hostname=zabbix_proxy的主机名  
DBHost=127.0.0.1
DBName=zabbix_proxy
DBUser=zabbix
DBPassword=zabbix
DBSocket=/data/mysql/mysql.sock 
LogFile=/var/log/zabbix/zabbix_proxy.log
PidFile=/var/run/zabbix/zabbix_proxy.pid
LogFileSize=0   //不切割日志,默认1M
Timeout=10      //等待agent回应超时时间,默认3s
ConfigFrequency=60   //多久从zabbix-server接受配置
DataSenderFrequency=60  //多久向zabbix-server发送收集数据
ExternalScripts=/usr/lib/zabbix/externalscripts  //也需要放一份到代理




agent安装配置(需要允许proxy-server访问10050)

yum install zabbix-agent

配置文件用以下内容即可

LogFile=/var/log/zabbix/zabbix_agentd.log
PidFile=/var/run/zabbix/zabbix_agentd.pid
EnableRemoteCommands=1
Server=proxy内网IP(外网IP)
ServerActive=proxy的内网IP:10051
Hostname=agent的主机名
RefreshActiveChecks=120
BufferSize=2048
Timeout=15
UnsafeUserParameters=1
Include=/etc/zabbix/zabbix_agentd.d

启动

新建代理

在我们的zabbix界面上点击管理--agent代理程序--创建代理

agent代理程序名称 为 zabbix_proxy的主机名 (建议一致 )

添加主机

只需要填写以下

  • 主机名称 为 agent的hostname
  • 在...群组里
  • IP地址 为 agent的内网IP(不在同个内网写外网IP)
  • 由agent代理程序监测 下拉 选择我们刚创建的代理名称 (敲黑板)
  • 模板 添加你需要的模板

完成~

参考

https://www.cnblogs.com/wangxiaoqiangs/p/5336630.html

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!