前言

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. mysql ERROR 1451 (23000)

    问题描述:报错如下:ERROR 1451 (23000): Cannot delete or update a parent row: a foreign key constraint提示有外键约束, ...

  2. 1.3if判断语句+while和for循环语句+购物车作业

    1.if 语句 if userame=_usename and password=_password: print("welcome user {name} login..."). ...

  3. JS模块化工具require.js教程(一):初识require.js

    随着网站功能逐渐丰富,网页中的js也变得越来越复杂和臃肿,原有通过script标签来导入一个个的js文件这种方式已经不能满足现在互联网开发模式,我们需要团队协作.模块复用.单元测试等等一系列复杂的需求 ...

  4. EasyUI 学习(1)-Tooltip(提示框)

    一.创建组件 Tooltip不依赖其他组件 1.使用class加载 <a href="#" class="easyui-tooltip" title=&q ...

  5. SolrCloud的搭建与稳定性测试

    转载请注明出处:http://www.cnblogs.com/wubdut/p/7573738.html 一.集群搭建 1. zookeeper搭建(版本:3.4) 1.1 zoo.cfg配置文件: ...

  6. Activiti工作流数据库表详细介绍

    Activiti的后台是有数据库的支持,所有的表都以ACT_开头. 第二部分是表示表的用途的两个字母标识. 用途也和服务的API对应. ACT_RE_*: 'RE'表示repository. 这个前缀 ...

  7. 安装Nodejs、npm、Less

    最近学习到Bookstrap的时候需要用到less这门预处理的CSS语言.其中需要将less文件转换成css文件.记录一下,方便自己以后查找. 安装Nodejs和npm 1:到https://node ...

  8. CSS3中的一些属性

    1. 可匹配部分字符串 2. box-sizing属性 3. CSS3多栏布局 1.可匹配部分字符串 /*^运算符,匹配字符串首部*/ a[href^='http://website'] /*$运算符 ...

  9. Python面向对象3:面向对象的三大特性

    面向对象的三大特性- 封装- 继承- 多态1 封装 - 封装就是对对象的成员进行访问限制- 封装的三个级别: - 公开,public - 受保护的,protected - 私有的,private - ...

  10. 【emotion】目标初定

    现在的我漂浮不定,我的心是凌乱的,虽然在我面前的路有无数条,但是我却不知道哪一条路是属于我的.对于java,我掌握的东西可能并不是系统的,想想也知道,自学一年,能形成什么样子的体系呢?然而在日常的工作 ...