0
点赞
收藏
分享

微信扫一扫

zabbix proxy实现多机房跨云监控数据收集

未定义变量 2024-03-02 阅读 7

需求

我有一部分机器在腾讯云,我现在在阿里云上部署了一个zabbix server,我希望能将腾讯云的机器监控起来


概述

zabbix proxy是一个监控代理服务器,可以实现集中或者分布式的监控,通过proxy代理可以实现多节点,跨区域,成百上千服务器的监控,proxy代理主要适用于下面情况:

  1. zabbix监控的主机太多,一太Server支撑不住的情况
  2. 服务器在同一个地区不同的机房,通过proxy很容易实现数据的传输和中转
  3. 服务器在多个省或者国外,通过proxy实现分布式部署和监控

proxy可以部署为主动模式或者被动模式,通常为了减轻Server端的压力,proxy部署为主动模式,当proxy部署为主动模式时,Zabbix Server的负载最小

zabbix proxy实现多机房跨云监控数据收集_server


前提

已经部署好了一台Server服务器,购买一台云rds并创建好proxy引用的数据库,并且Server服务器和Proxy服务器的安全组端口10051,10050对Server机器和Proxy机器ip开放

proxy引用数据库创库语句

create database xxx_zabbix_proxy character set utf8 collate utf8_bin;


部署proxy

购买一台腾讯proxy服务器

我Server使用的是zabbix 4.4,使用这里我proxy安装也得统一4.4版本的

rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
yum clean all
yum makecache
yum install zabbix-proxy-mysql.x86_64 zabbix-agent.x86_64 zabbix-sender
zcat /usr/share/doc/zabbix-proxy-mysql*/schema.sql.gz | mysql -hrds地址  -uroot -p密码 xxx_zabbix_proxy

修改zabbix-proxy配置:vim /etc/zabbix/zabbix_proxy.conf

Server=xx.xxx.xx.xx            # 真正的服务端(zabbix server,  zabbix server的外网地址)
ServerPort=10051               # zabbix server的监听端口
Hostname=xxx                   # proxy机器的主机名
LogFile=/var/log/zabbix/zabbix_proxy.log   # proxy日志路径
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_proxy.pid   # 启动proxy pid文件
SocketDir=/var/run/zabbix                  # proxy 的sokcet目录
DBHost=xxxx.mysql.rds.aliyuncs.com  # rds地址
DBName=xxx_zabbix_proxy              # rds proxy引用的数据库名
DBUser=root                         # rds 账号
DBPassword=xxxx                     # rds密码
ConfigFrequency=60                  # 多久从zabbix-server接受配置
DataSenderFrequency=60              # 多久向zabbix-server发送收集数据


启动zabbix-proxy

systemctl start zabbix-proxy.service
systemctl  zabbix-proxy.service


proxy机器上部署agent

mv /etc/zabbix/zabbix_agent.conf /etc/zabbix/zabbix_agent.conf.bak
vim /etc/zabbix/zabbix_agentd.conf

PidFile=/var/run/zabbix/zabbix_agentd.pid   # 启动agent pid文件路径
LogFile=/var/log/zabbix/zabbix_agentd.log   # 启动agent 日志文件路径
LogFileSize=0
Server=xxx.xx.xx.xxx                        # proxy公网地址
ServerActive=xxx.xx.xx.xxx                  # proxy公网地址
Hostname=xxxx        # agent机器的主机名
Include=/etc/zabbix/zabbix_agentd.d/


启动zabbix-agent

systemctl start zabbix-agent.service
systemctl enable zabbix-agent.service

zabbix server与zabbix proxy的配置的同步是有延时的,如果需要立即同步可以手动执行命令:

zabbix_proxy -c /etc/zabbix/zabbix_proxy.conf -R config_cache_reload


zabbix bashbord添加agent代理程序

zabbix proxy实现多机房跨云监控数据收集_proxy_02

zabbix proxy实现多机房跨云监控数据收集_agent_03

zabbix proxy实现多机房跨云监控数据收集_proxy_04

添加proxy下的被监控主机

zabbix proxy实现多机房跨云监控数据收集_proxy_05




举报

相关推荐

0 条评论