一.概述

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

  • 不同网段,无法直接监控
  • 上千台机器,分布式

proxy收集到数据之后,首先将数据缓存在本地,然后在一定得时间之后传递给zabbix server.
zabbix proxy是一个数据收集器,它不计算触发器、不处理事件、不发送报警

二.环境

服务端 192.168.1.100
代理端 192.168.1.20 10.10.10.20
客户端 10.10.10.30

服务端可以连接代理端,但无法连接客户端

三.代理端配置

1.配置数据库

这里使用mysql数据库,自行安装数据库
登陆数据库后
create database zabbix_proxy character set utf8;
GRANT ALL PRIVILEGES ON zabbix_proxy.* TO 'zabbix'@'localhost' IDENTIFIED BY '123456';
flush PRIVILEGES;

2.安装代理

yum -y install gcc gcc-c++ libcurl-devel libevent-devel net-snmp-devel

wget https://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/3.4.6/zabbix-3.4.6.tar.gz/download

tar -xf zabbix-3.4.6.tar.gz

cd zabbix-3.4.6

./configure --prefix=/usr/local/zabbix_proxy --enable-proxy --enable-agent --with-mysql --with-net-snmp --with-libcurl
make
make install

导入数据
mysql -u zabbix -p 123456 zabbix_proxy < database/mysql/schema.sql

3.配置

找到下面那些去修改,有的是注释,有的则不是
vim /usr/local/zabbix_proxy/etc/zabbix_proxy.conf

Server=192.168.1.100                                    #服务端的ip,用来提交数据
ServerPort=10051 #代理监听的端口
Hostname=Zabbix proxy #proxy的hostname,很重要,要记住
DBHost=localhost #数据库,使用本地,也可以使用ip,本地的用sock链接
DBSocket=/tmp/mysql.sock #本地链接时修改
DBName=zabbix_proxy #数据库名称
DBUser=zabbix #用户
DBPassword=zabbix #密码
DBPort=3306 #数据库端口
HeartbeatFrequency=60 #心跳线(具体作用网了,看配置文件吧,这个默认就是60)
ConfigFrequency=60 #这个是往服务端发送数据时间,这里设置一分钟,当客户端出现问题,要一分钟后才能获得消息,可以修改

vim /usr/local/zabbix/etc/zabbix_agentd.conf

Server=192.168.1.100
ServerActive=192.168.1.100

/usr/local/zabbix/sbin/zabbix_proxy
/usr/local/zabbix/sbin/zabbix_agentd

修改后启动
netstat -unltp | grep :10050
netstat -unltp | grep :10051

查看是否监听端口

到服务端添加一台主机,ip为192.168.1.20,相当于添加一个客户端

四.客户端配置

在客户端机器上
yum -y install zabbix-agent

添加代理ip
vim /etc/zabbix/zabbix_agentd.conf

Server=10.10.10.20
ServerActive=10.10.10.20

systemctl start zabbix-agent

netstat -unltp | grep :10050
查看是否监听端口

五.服务端配置


点击创建
代理名称是创建那个,用于区分不同代理,选择主动式,代理主动提交数据



ip选择代理所能接触到的ip,在最下面选择代理,并且添加模板

六.排错

参考
不亮

到/usr/local/zabbix_proxy/bin下
./zabbix_get 10.10.10.30 -s -k agent.ping
返回1则正确,实际上是不会亮的,因为他是通过代理获得数据,没法直接监控。以数据为准,可以命令行测试,或者图形界面查看是否有最新数据。

zabbix代理的更多相关文章

  1. 安装配置zabbix代理之zabbix_proxy

    配置Proxy代理 如图所示: zabbix_server端在阿里云上,其代理程序部署在各地机房,代理程序收集所在机房的所有机器监控指标,然后传给server端 环境说明: CentOS releas ...

  2. zabbix 3.0.3 (nginx)安装过程中的问题排错记录

    特殊注明:安装zabbix 2.4.8和2.4.6遇到2个问题,如下:找了很多解决办法,实在无解,只能换版本,尝试换(2.2.2正常 | 3.0.3正常)都正常,最后决定换3.0.3 1.Error ...

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

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

  4. zabbix进程构成

    了解完zabbix特性之后,本该进入zabbix安装教程,但是我觉得在安装之前我们很有必要了解一下zabbix进程组成结构,默认情况下zabbix包含5个程序:zabbix_agentd.zabbix ...

  5. CentOS-6.5安装zabbix 3.0.4

    关闭selinux [root@localhost /]# sed -i "s#SELINUX=enforcing#SELINUX=disabled#g" /etc/selinux ...

  6. zabbix 服务端

    首先安装zabbix监控平台,必须是在lamp平台下才可以正常使用的 这个是用yum源安装的lamp 步骤一:更新yum源  1.执行以下命令更新yum源为Webtatic EL6 YUM源:  rp ...

  7. zabbix (一:zabbix服务端)

    默认情况下zabbix有5个进程: zabbix_agent  zabbix_get zabbix_proxy zabbix_sender zabbix_server,另外一个zabbix_java_ ...

  8. centos shell编程6一些工作中实践脚本 nagios监控脚本 自定义zabbix脚本 mysql备份脚本 zabbix错误日志 直接送给bc做计算 gzip innobackupex/Xtrabackup 第四十节课

    centos   shell编程6一些工作中实践脚本   nagios监控脚本 自定义zabbix脚本 mysql备份脚本 zabbix错误日志  直接送给bc做计算  gzip  innobacku ...

  9. zabbix实现原理及架构详解

    想要用好zabbix进行监控,那么我们首要需要了解下zabbix这个软件的实现原理及它的架构.建议多阅读官方文档. 一.总体上zabbix的整体架构如下图所示: 重要组件说明: 1)zabbix se ...

随机推荐

  1. 关于素数表-C++

    废话不多说,先贴代码: #include <iostream> using namespace std; bool is_prime(int n) { || n == ) return f ...

  2. plsql developer中如何设置sql window显示行号

    转自:https://blog.csdn.net/qq_31302091/article/details/74931828 英文版的plsql developer中,很多时候,很多功能不去用,都不知道 ...

  3. go语言实现限流器

    本文:https://chai2010.cn/advanced-go-programming-book/ch5-web/ch5-06-ratelimit.html Ratelimit 服务流量限制 计 ...

  4. Android著名开源库

    UI方面 1.绘制图表MPAndroidChart.hellocharts: https://github.com/PhilJay/MPAndroidChart https://github.com/ ...

  5. cscope安装

    安装 # apt-get install cscope .vimrc中添加 if has("cscope") set csprg=/usr/bin/cscope set csto= ...

  6. Java编程规范(命名规则)

    1.目的 编程规范是对编程的一种约定,主要作用是增强代码的可读性和可维护性,便于代码重用. 2.命名规则 首先要求程序中的各个要素都遵守命名规则,然后在编码中严格按照编码格式编写代码.命名规则包括以下 ...

  7. tomcat 使用quercus-4.0.39 支持PHP

    tomcat  使用quercus-4.0.39  支持PHP   Quercus是Caucho公司采用纯Java开发的一个PHP5引擎.基于开源授权协议GPL发布.Quercus自带很多个PHP模块 ...

  8. python 私有和保护成员变量如何实现?—— "单下划线 " 开始的成员变量叫做保护变量,意思是只有类实例和子类实例能访问到这些变量;" 双下划线 " 开始的是私有成员,意思是只有类对象自己能访问,连子类对象也不能访问到这个数据

    默认情况下,Python中的成员函数和成员变量都是公开的(public),在python中没有类似public,private等关键词来修饰成员函数和成员变量.在python中定义私有变量只需要在变量 ...

  9. linux系统编程之信号(六)

    今天继续学习信号相关的知识,主要还是学习sigqueue另外信号发送函数,并配合上节学习的sigaction的用法,进入正题: sigqueue函数: sigval联合体: 实际上sigval参数是用 ...

  10. GT源码阅读

    昨天读了一点GT的代码,做个笔记. 参考阅读顺序:https://gt.qq.com/docs/a/UseGtWithBroadcast.txt 在上面的doc上面找到了对应的板块的代码. 1.采集本 ...