前言

zabbix proxy可以代替zabbix server检索客户端的数据,然后把数据汇报给zabbix server,并且在一定程度上分担了zabbix server的压力.zabbix proxy可以非常简便的实现了集中式、分布式监控.

zabbix proxy使用场景:

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

zabbix proxy仅仅需要一条tcp连接到zabbix server,所以防火墙上仅仅需要加上一条规则即可.zabbix proxy数据库必须和server分开,否则数据会被破坏,毕竟这两个数据库的表大部分都相同。总之记住,数据库分开即可。

proxy收集到数据之后,首先将数据缓存在本地,然后在一定得时间之后传递给zabbix server.这个时间由proxy配置文件中参数ProxyLocalBuffer and ProxyOfflineBuffer决定.

备注:使用agent active模式,一定要记住在agent的配置文件参数ServerActive加上proxy的IP地址.切记

zabbix分布式监控部署演示

zabbix服务器端:10.220.5.13

zabbix代理服务器端:10.220.5.138

zabbix被监控节点:10.220.5.139

配置代理服务器端

第一步:下载zabbix-proxy软件

[root@proxy ~]# yum  install  zabbix-proxy-mysql -y

第二步:导入文件到数据库

[root@proxy ~]# rpm -ql zabbix-proxy-mysql
/usr/share/doc/zabbix-proxy-mysql-3.0./schema.sql.gz
[root@proxy ~]# cp /usr/share/doc/zabbix-proxy-mysql-3.0./schema.sql.gz ./
[root@proxy ~]# gunzip schema.sql.gz

第三步:登录数据库

[root@proxy ~]# mysql -uroot -p123
MariaDB [(none)]> create database zabbix;
MariaDB [(none)]> use zabbix;
MariaDB [zabbix]> source /root/schema.sql
MariaDB [zabbix]> grant all on *.* to zabbix@localhost identified by '';

第四步:修改配置文件

[root@proxy ~]# grep -v -E '^#|^$' /etc/zabbix/zabbix_proxy.conf
ProxyMode=0 #开启主动模式
Server=10.220.5.13 #指向主监控服务器端
HostnameItem=system.hostname #主机名自动获取
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=
PidFile=/var/run/zabbix/zabbix_proxy.pid
DBName=zabbix #代理节点自己的数据库
DBUser=zabbix
DBPassword=
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=

第五步:重启

[root@proxy ~]# systemctl restart zabbix-proxy

配置被监控客户端

第一步:下载客户端

[root@agent ~]# yum install zabbix-agent -y

第二步:配置客户端文件

客户端不需要开启serveractive,否则会一直尝试给监控的主机点发信息。

[root@agent ~]# grep -v -E '^#|^$' /etc/zabbix/zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=
Server=10.220.5.138 #指向代理服务器端
HostnameItem=system.hostname #主机名自动获取
Include=/etc/zabbix/zabbix_agentd.d/

第三步:不要重启

配置完zabbix-proxy之后不要重启!!

等配置完zabbix网页后再重启!!

配置zabbix的网页端

第一步:添加主机

添加被监控节点的主机

点击创建主机

主机名称可以随便填写

这里填写的是被监控节点的IP地址

这里的选择无代理程序,现在也只有这个选项

待会创建一个代理之后他会自动补上去

第二步:创建代理

点击创建代理

注意:

1.代理程序名称代理服务器的主机名,不需要在主机上面解析,但是一定确保是代理服务器的主机名

现在代理服务器端10.220.5.138的主机名为proxy,所以下面的代理程序名称就是proxy

2.选择主动式

3.加入你想要代理的被监控节点。前提是这个被监控节点的server指向了代理服务器节点

第三步:重启zabbix-proxy

代理服务器端一定要在网页端配置完成之后才能重启!

[root@proxy ~]# systemctl restart zabbix-proxy

第四步:查看

可以发现原本server指向10.220.5.138代理服务器端的被监控节点,现在也能被10.220.5.13监控了

名称也变成    代理服务器名称:主机名

zabbix分布式监控部署--技术流ken的更多相关文章

  1. 网站集群架构(LVS负载均衡、Nginx代理缓存、Nginx动静分离、Rsync+Inotify全网备份、Zabbix自动注册全网监控)--技术流ken

    前言 最近做了一个不大不小的项目,现就删繁就简单独拿出来web集群这一块写一篇博客.数据库集群请参考<MySQL集群架构篇:MHA+MySQL-PROXY+LVS实现MySQL集群架构高可用/高 ...

  2. 分布式系统监视zabbix讲解六之自定义监控项--技术流ken

    宏 概述 Zabbix支持许多在多种情况下使用宏.宏是一个变量,由如下特殊语法标识: {MACRO} 根据在上下文中, 宏解析为一个特殊的值. 有效地使用宏可以节省时间,并使Zabbix变地更加高效. ...

  3. MariaDB Galera集群部署--技术流ken

    Galera集群介绍 MariaDB集群是MariaDB同步多主机集群.它仅支持XtraDB/ InnoDB存储引擎. 主要功能 同步复制 真正的multi-master,即所有节点可以同时读写数据库 ...

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

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

  5. zabbix实现百台服务器的自动化监控--技术流ken

    前言 最近有小伙伴通过Q联系到我说:公司现在有百多台服务器,想要部署zabbix进行监控,怎么实现自动化全网监控? 本篇博客将讲解一个我工作时做的一个实际项目,现在写出来供大家以后参考使用. 实现自动 ...

  6. k8s集群监控(十一)--技术流ken

    Weave Scope   在我之前的docker监控中<Docker容器监控(十)--技术流ken>就已经提到了weave scope. Weave Scope 是 Docker 和 K ...

  7. zabbix实现QQ邮件报警通知--技术流ken

    前言 前几天搜了下网上使用zabbix邮件报警通知的文章,大多数还是使用mailx的方法,过程配置起来比较冗余繁琐,这几天想着把自己平时用到的qq邮件报警的方法分享出来供大家参考,以此减少不必要的步骤 ...

  8. Jenkins+Git+Gitlab+Ansible实现持续集成自动化部署动态网站(二)--技术流ken

    项目前言 在上一篇博客<Jenkins+Git+Gitlab+Ansible实现持续化集成一键部署静态网站(一)--技术流ken>中已经详细讲解了如何使用这四个工具来持续集成自动化部署一个 ...

  9. 分布式系统监视zabbix讲解二之邮件报警通知--技术流ken

    概述 在上一篇博客<分布式系统监视zabbix讲解一技术流ken>中已经详细讲解了如何安装zabbix,本篇博客将详细讲解如何使用zabbix监控另外一台主机,并实现email报警通知机制 ...

随机推荐

  1. Python开发——9.面向对象编程

    一.面向对象设计(Object oriented design) 面向对象设计是将一类具体事物的数据和动作整合到一起的过程,不会要求面向对象语言编程,但如果想要构造具备对象性质和特点的数据类型,需要更 ...

  2. Linux关于文件,文件夹操作命令

    文件 文件夹 相关操作命令 查看文件 cd 切换目录位置 ls 目录    查看指定目录所有文件  --缺省当前目录 ls -l 目录 查看指定目录所有文件的详细信息 --同 ll 命令 ls -a ...

  3. webpack多页面配置

    const path = require('path'); const CleanWebpackPlugin = require('clean-webpack-plugin'); const Html ...

  4. 基于面向方面和UML的实时系统建模研究

    一.基本信息 标题:基于面向方面和UML的实时系统建模研究 时间:2010 出版源:计算机技术与发展 领域分类:面向方向:实时系统:横切关注点:统一建模语言: 二.研究背景 问题定义:实时系统建模研究 ...

  5. oracle之 any、some、all 解析

    举几个例子来说明ALL和ANY的用法 1. SELECT * FROM TABLEA WHERE FLD > ALL(SELECT FLD FROM TABLEA) 这相当于 SELECT * ...

  6. 图像处理及opencv汇总

    OPENCV——C++ 1.windows基于vs2017的opencv安装 2.为opencv添加contrib库 3.opencv源码编写规则 4.OpenCV库框架结构 5.OpenCV从2到3 ...

  7. js数组中容易误用的一些方法

    1.every和some 两个方法的参数都是一个函数,函数的有3个参数,依次是当前值value,索引index,数组array every判断数据中的每一项是否满足某个条件,如果满足就返回true,有 ...

  8. Oracle数据库用EF操作的示例

    Using EF Oracle Sample Provider with EDM Designer  (from msdn) Many people are asking if it is possi ...

  9. html input file accept 上传文件类型限制格式 MIME 类型列表

    例: <input type="file" accept="application/vnd.openxmlformats-officedocument.spread ...

  10. PostgreSQL查看表、表索引、视图、表结构

    -- 表索引select * from pg_indexes where tablename='person_wechat_label';select * from pg_statio_all_ind ...