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

  1. 在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
  2. 配置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

    更多配置项可以参考官方配置

  3. 配置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
  4. 启动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来监控。

  1. 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
  2. 配置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
  3. 启动Server-C的agent

    # systemctl start zabbix-agent
  4. 在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-(七)分布式监控的更多相关文章

  1. Zabbix Proxy 分布式监控

    简介: Zabbix 是一个分布式监控系统,它可以以一个中心点.多个分节点的模式运行,使用 proxy 能降低 Zabbix Server 的压力,当然也带来了成本~ 适用范围:跨机房.跨地域的网络监 ...

  2. zabbix proxy分布式监控部署

    一.proxy分布式监控介绍 来源于zabbix官网: https://www.zabbix.com/documentation/3.4/zh/manual/distributed_monitorin ...

  3. (33)zabbix proxy分布式监控配置

    概述 zabbix proxy可以代替zabbix server检索客户端的数据,然后把数据汇报给zabbix server,并且在一定程度上分担了zabbix server的压力.zabbix pr ...

  4. 【Zabbix】分布式监控系统Zabbix【一】

    一.Zabbix功能及特性简介 Zabbix可以获取cpu,内存,网卡,磁盘,日志等信息 1.Zabbix数据收集方式: a.Agent客户端(Agent客户端支持多平台部署) b.如果是无法安装客户 ...

  5. Grafana + Zabbix --- 部署分布式监控系统

    阅读目录: 1. 关闭防火墙 2. 安装Zabbix下载源 3. ZabbixClient  --- 安装zabbix-agent代理 4. ZabbixServer --- 安装zabbix-ser ...

  6. 【Zabbix】分布式监控系统Zabbix【二】

    一.Zabbix基本操作 1.主机群组.主机.模板.触发器 a.创建主机群组和主机的过程比较简单,不再介绍 b.配置模板: 创建一个模板,将其分组到Template组,添加配置应用: 给应用创建监控项 ...

  7. 8、zabbix监控方式及分布式监控(04)

    zabbix支持的监控方式 zabbix所能够显示的且可指定为监控接口类型的监控方式: Agent passive active SNMP:Simple Network Management Prot ...

  8. 分布式系统监视zabbix讲解七之分布式监控--技术流ken

    分布式监控 概述 Zabbix通过Zabbix proxy为IT基础设施提供有效和可用的分布式监控 代理(proxy)可用于代替Zabbix server本地收集数据,然后将数据报告给服务器. Pro ...

  9. 分布式系统监视zabbix讲解七之分布式监控

    分布式监控 概述 Zabbix通过Zabbix proxy为IT基础设施提供有效和可用的分布式监控 代理(proxy)可用于代替Zabbix server本地收集数据,然后将数据报告给服务器. Pro ...

  10. LNMP+zabbix分布式监控搭建及版本升级

    LNMP+zabbix分布式监控搭建需要组件:gcc gcc-c++ openssl* pcre pcre-devel gd gd-devel libjpeg-devel libpng-devel l ...

随机推荐

  1. servlet的三大作用域对象和jsp的九大内置对象及其四大作用域对象

    servlet的三大作用域对象: request(HttpServletRequest) session(HttpSession): application(ServletContext):tomca ...

  2. 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 ...

  3. 由malloc和new引发的段错误

    class Queue{ private: struct node{ string data; struct node * next,*priv; } private: struct node * p ...

  4. vue项目简单菜单排序

    功能:拖拉后,数据重组,然后返回数组给后台处理 代码如下: <template> <el-dialog title="菜单排序" :close-on-click- ...

  5. Jetpack架构组件(二)Lifecycle使用

    1.直接添加如下依赖就可以满足日常的工作,如果缺少哪个库,再去单独添加就好了 implementation "android.arch.lifecycle:extensions:1.1.1& ...

  6. 数据结构学习--单链表(python)

    概念 链表(linked_list)是物理存储单元上非连续的.非顺序的存储结构,数据元素的逻辑顺序 是通过链表的指针地址实现,每个元素包含两个结点,一个是存储元素的数据域 (内存空间) ,另一个是指向 ...

  7. 安装SDK 6.0(二)

    2==>安装SDK 6.0 打开安卓Android Studio 出现 Unable to access Android SDK add-on list 点击 Cancal 在点击Cancel ...

  8. [AI开发]DeepStream开发填坑记录

    下面是在deepstream使用过程中碰到的一些坑: (1)Pipeline中的Sink如果需要编码存文件或者推rtmp的流,注意控制编码的参数,编码质量不要太高.否则可能Sink带不动,整个Pipe ...

  9. 亚马逊写作文档tip

    亚马逊的文档要求任何一份开会备忘录/要点备忘录都需要控制在4页左右,Jeff 自己也强调过,4页的备忘录比20页的备忘录要求的更高,它不仅需要更好的思考,也需要对开会讨论各个重点之间关系的理解.ppt ...

  10. net.sf.json将string转为map

    背景 改一个以前的项目,项目里只有这个包,虽然我想用gson或者fastjson,然而并不想引入新的jar.于是使用这个,特此记录,感觉贼不好用. 实现代码 entity.getData()的值:{a ...