Zabbix-(七)分布式监控
Zabbix-(七)分布式监控
一.前言
Zabbix提供了一套分布式监控的方案,即使用Zabbix Proxy,本文记录使用Zabbix Proxy进行分布式监控。
官方所述Proxy的使用场景如下:
- 监控远程区域设备
- 监控本地网络不稳定区域
- 当 zabbix 监控上千设备时,使用它来减轻 server 的压力
- 简化分布式监控的维护

准备
- Zabbix Server 4.4 (ip 192.168.152.140)
- Centos 7, 用于安装 Zabbix Proxy (ip 192.168.152.144) 以下简称Proxy-Server
- mysql 8 (Zabbix Server 和 Zabbix Proxy 需要使用独立的数据库, ip 192.168.152.1)
- 被Zabbix Proxy监控的主机 Centos 7 (ip 192.168.152.145) 以下简称Server-C
二.安装Zabbix Proxy
在Proxy-Server安装Zabbix Proxy
# rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm # yum install zabbix-proxy-mysql
配置Zabbix Proxy
# vim /etc/zabbix/zabbix_proxy.conf
修改以下配置
# Zabbix Server地址
Server=192.168.152.140 # Proxy的Hostname (默认Zabbix proxy)
Hostname=Proxy-Server # 数据库配置
DBName=zabbix_proxy
DBUser=zabbix
DBPassword=zabbix
DBPort=3306 ########### Proxy 特有参数 ############
# Proxy已经将数据同步给Server后,数据保留时间(小时)
ProxyLocalBuffer=0 # Proxy与Server失去连接后,数据保留时间(小时)
ProxyOfflineBuffer=1 # 心跳包频率(秒)
HeartbeatFrequency=60
##################################### StatsAllowedIP=0.0.0.0/0
更多配置项可以参考官方配置
配置Mysql
注: Zabbix Server和 Zabbix Proxy的数据库必须是分开独立的!!!
# 新建zabbix_proxy数据库
CREATE DATABASE zabbix_proxy DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_bin; # 给zabbix账号赋予权限
GRANT ALL PRIVILEGES ON zabbix_proxy.* TO 'zabbix'@'%';
初始化schema
# zcat /usr/share/doc/zabbix-proxy-mysql*/schema.sql.gz | mysql -uzabbix -pzabbix -Dzabbix_proxy -h192.168.152.1 -Dzabbix_proxy
启动Zabbix Proxy
# systemctl start zabbix-proxy
三.Zabbix Server页面配置Proxy
点击【管理】-【agent代理程序】-【创建代理】

| 配置项 | 值 |
|---|---|
| * agent代理程序名称 | Proxy-Server |
| 系统代理程序模式 | 主动式 |
| 代理地址 | 192.168.152.144 |

Server与Proxy保持连接

四.利用Proxy监控主机
至此Zabbix Proxy已经启动完成,接下来就将利用Proxy-Server来监控Server-C。和使用Zabbix Server监控类似,被监控主机安装Zabbix agent,只步过agent需要proxy来监控。
Server-C安装Zabbix agent
# rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm # yum install -y zabbix-agent
配置Server-C的agent
# vim /etc/zabbix/zabbix_agentd.conf
配置项
# Server连接到Proxy的地址
Server=192.168.152.144
ServerActive=192.168.152.144 # Server-C的hostname
Hostname=Server-C启动Server-C的agent
# systemctl start zabbix-agent
在Zabbix Server界面增加Server-C
增加【主机】
配置项 值 * 主机名称 Server-C * 群组 Linux servers agent代理程序的接口 (IP地址) 192.168.152.145 agent代理程序的接口 (端口) 10050 由agent代理程序监测 Proxy-Server 
链接模板


至此,Server-C已经通过Zabbix Proxy进行监控,Proxy定时发送监控数据给Server,实现了分布式监控。新增监控项或者JMX监控可以参考我之前的文章。
Zabbix-(七)分布式监控的更多相关文章
- Zabbix Proxy 分布式监控
简介: Zabbix 是一个分布式监控系统,它可以以一个中心点.多个分节点的模式运行,使用 proxy 能降低 Zabbix Server 的压力,当然也带来了成本~ 适用范围:跨机房.跨地域的网络监 ...
- zabbix proxy分布式监控部署
一.proxy分布式监控介绍 来源于zabbix官网: https://www.zabbix.com/documentation/3.4/zh/manual/distributed_monitorin ...
- (33)zabbix proxy分布式监控配置
概述 zabbix proxy可以代替zabbix server检索客户端的数据,然后把数据汇报给zabbix server,并且在一定程度上分担了zabbix server的压力.zabbix pr ...
- 【Zabbix】分布式监控系统Zabbix【一】
一.Zabbix功能及特性简介 Zabbix可以获取cpu,内存,网卡,磁盘,日志等信息 1.Zabbix数据收集方式: a.Agent客户端(Agent客户端支持多平台部署) b.如果是无法安装客户 ...
- Grafana + Zabbix --- 部署分布式监控系统
阅读目录: 1. 关闭防火墙 2. 安装Zabbix下载源 3. ZabbixClient --- 安装zabbix-agent代理 4. ZabbixServer --- 安装zabbix-ser ...
- 【Zabbix】分布式监控系统Zabbix【二】
一.Zabbix基本操作 1.主机群组.主机.模板.触发器 a.创建主机群组和主机的过程比较简单,不再介绍 b.配置模板: 创建一个模板,将其分组到Template组,添加配置应用: 给应用创建监控项 ...
- 8、zabbix监控方式及分布式监控(04)
zabbix支持的监控方式 zabbix所能够显示的且可指定为监控接口类型的监控方式: Agent passive active SNMP:Simple Network Management Prot ...
- 分布式系统监视zabbix讲解七之分布式监控--技术流ken
分布式监控 概述 Zabbix通过Zabbix proxy为IT基础设施提供有效和可用的分布式监控 代理(proxy)可用于代替Zabbix server本地收集数据,然后将数据报告给服务器. Pro ...
- 分布式系统监视zabbix讲解七之分布式监控
分布式监控 概述 Zabbix通过Zabbix proxy为IT基础设施提供有效和可用的分布式监控 代理(proxy)可用于代替Zabbix server本地收集数据,然后将数据报告给服务器. Pro ...
- LNMP+zabbix分布式监控搭建及版本升级
LNMP+zabbix分布式监控搭建需要组件:gcc gcc-c++ openssl* pcre pcre-devel gd gd-devel libjpeg-devel libpng-devel l ...
随机推荐
- servlet的三大作用域对象和jsp的九大内置对象及其四大作用域对象
servlet的三大作用域对象: request(HttpServletRequest) session(HttpSession): application(ServletContext):tomca ...
- JS计算数组的总和
1.最简单的遍历累计 var arr=[1,2,3,4,5,6] var sum =0 for(var i=0;i<arr.length;i++){ sum=sum+arr[i] } 2.利用r ...
- 由malloc和new引发的段错误
class Queue{ private: struct node{ string data; struct node * next,*priv; } private: struct node * p ...
- vue项目简单菜单排序
功能:拖拉后,数据重组,然后返回数组给后台处理 代码如下: <template> <el-dialog title="菜单排序" :close-on-click- ...
- Jetpack架构组件(二)Lifecycle使用
1.直接添加如下依赖就可以满足日常的工作,如果缺少哪个库,再去单独添加就好了 implementation "android.arch.lifecycle:extensions:1.1.1& ...
- 数据结构学习--单链表(python)
概念 链表(linked_list)是物理存储单元上非连续的.非顺序的存储结构,数据元素的逻辑顺序 是通过链表的指针地址实现,每个元素包含两个结点,一个是存储元素的数据域 (内存空间) ,另一个是指向 ...
- 安装SDK 6.0(二)
2==>安装SDK 6.0 打开安卓Android Studio 出现 Unable to access Android SDK add-on list 点击 Cancal 在点击Cancel ...
- [AI开发]DeepStream开发填坑记录
下面是在deepstream使用过程中碰到的一些坑: (1)Pipeline中的Sink如果需要编码存文件或者推rtmp的流,注意控制编码的参数,编码质量不要太高.否则可能Sink带不动,整个Pipe ...
- 亚马逊写作文档tip
亚马逊的文档要求任何一份开会备忘录/要点备忘录都需要控制在4页左右,Jeff 自己也强调过,4页的备忘录比20页的备忘录要求的更高,它不仅需要更好的思考,也需要对开会讨论各个重点之间关系的理解.ppt ...
- net.sf.json将string转为map
背景 改一个以前的项目,项目里只有这个包,虽然我想用gson或者fastjson,然而并不想引入新的jar.于是使用这个,特此记录,感觉贼不好用. 实现代码 entity.getData()的值:{a ...