前言

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. Android逆向破解表单注册程序

    Android逆向破解表单注册程序 Android开发 ADT: android studio(as) 程序界面如下,注册码为6位随机数字,注册成功时弹出通知注册成功,注册失败时弹出通知注册失败. 布 ...

  2. web项目中对post请求乱码处理

    <filter> <filter-name>characterEncoding</filter-name> <filter-class>org.spri ...

  3. jQuery-实现图片轮播

    html部分: <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <ti ...

  4. navicat 几个 可用的东西

    1.常用的 表格 一启动 就进入的某某连接某某数据库某某表 2. 结构 比对(菜单栏 “工具里面”) 3.数据对比 同上 4.保持连接 5.全局查询 在工具中查找 ------在数据库或模式中查找

  5. Django项目添加应用路径

    sys.path.insert(0, os.path.join(BASE_DIR, 'apps'))

  6. LabVIEW(三):定时与触发

    一.定时 多功能数据采集板卡的时钟特性,举例为M系列定时引擎:板卡上控制采集和波形发生的三个时钟:AI Sample Clock.AI Convert Clock.AO Sample Clock.所有 ...

  7. 应用监控CAT之cat-consumer源码阅读(二)

    之前讲了 cat-client 进行cat埋点上报,那么上报给谁呢?以及后续故事如何?让我们来看看 cat-consumer 是如何接收处理的? 由cat-client发送数据,cat-consume ...

  8. lua模块demo(redis,http,mysql,cjson,本地缓存)

    1. lua模块demo(redis,http,mysql,cjson,本地缓存) 1.1. 配置 在nginx.conf中设置lua_shared_dict my_cache 128m; 开启ngi ...

  9. php--isset()、is_null() 、empty()

    开发中经常会遇到验证某个参数是否是null或者是否为空. 一.isset().is_null() .empty() : isset():检测变量是否设置,并且不是 NULL.如果变量没有赋值 或者 变 ...

  10. Static了解和复习继承。

    Static了解 static加在局部变量的前面改变其存储类型使之成为静态局部变量,会延长它的生存周期,但是不会改变其作用域. 静态成员是属于类的,而不是属于某个对象的.即便没有任何一个实例,类的静态 ...