Zabbix3.4分布式监控----zabbix_proxy

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

(一)概述

zabbix proxy 可以代替 zabbix server 收集性能和可用性数据,然后把数据汇报给 zabbix server,并且在一定程度上分担了zabbix server 的压力.

此外,当所有agents和proxies报告给一个Zabbix server并且所有数据都集中收集时,使用proxy是实现集中式和分布式监控的最简单方法。

zabbix proxy 使用场景:

  • 监控远程区域设备

  • 监控本地网络不稳定区域

  • 当 zabbix 监控上千设备时,使用它来减轻 server 的压力

  • 简化分布式监控的维护

8b290a9179766f577189d5d61628993d.png

zabbix proxy 仅仅需要一条 tcp 连接到 zabbix server,所以防火墙上仅仅需要加上一条规则即可。

proxy 收集到数据之后,首先将数据缓存在本地,然后在一定得时间之后传递给 zabbix server,这样就不会因为服务器的任何临时通信问题而丢失数据。这个时间由proxy配置文件中参数 ProxyLocalBuffer 和 ProxyOfflineBuffer 决定。

注意 :1,从Zabbix server数据库直接更新最新配置的proxy可能会比Zabbix server新,而Zabbix server的配置由于 CacheUpdateFrequency 的原因而无法快速更新。因此,proxy收集发送Zabbix server数据可能会被忽略。

            2,zabbix proxy 数据库必须和 server 分开,否则数据会被破坏。

zabbix proxy 是一个数据收集器,它不计算触发器、不处理事件、不发送报警。有关proxy功能的概述,如下表:

33856e5e7d74c291a3dd2ec5228768fb.png


注意:[1]使用 agent active 模式,一定要记住在 agent 的配置文件参数 ServerActive 加上 proxy 的 IP 地址。

                                                                            ------官方文档(https://www.zabbix.com/documentation/3.4/zh/manual/distributed_monitoring/proxies)


(二) 在代理服务器上编译安装zabbix_proxy

2.1,从官网上下载最新的安装包,并编译安装。

1
2
3
4
5
6
7
8
[root@SH-Cacti-200018  install ] # wget http://sourceforge.net/projects/zabbix/files/ZABBIX%20Latest%20Stable/3.4.3/zabbix-3.4.3.tar.gz/download 
[root@SH-Cacti-200018  install ] # ls
zabbix-3.4.3. tar .gz
[root@SH-Cacti-200018 zabbix-3.4.3] # yum install gcc pcre mysql-community-devel libxml2-devel unixODBC-devel net-snmp-devel libcurl-devel libssh2-devel OpenIPMI-devel
[root@SH-Cacti-200018  install ] # tar xf zabbix-3.4.3.tar.gz 
[root@SH-Cacti-200018  install ] # cd zabbix-3.4.3
[root@SH-Cacti-200018 zabbix-3.4.3] #./configure --prefix=/usr/local/zabbix --enable-proxy --enable-agent --with-net-snmp --with-mysql --with-ssh2 --with-libcurl --with-libxml2 --with-libzbxvmware
[root@SH-Cacti-200018 zabbix-3.4.3] # make && make install

2.2,添加zabbix用户和组

1
2
[root@SH-Cacti-200018  install ] # groupadd zabbix
[root@SH-Cacti-200018  install ] # useradd -g zabbix zabbix

2.3,安装创建数据库(安装数据库省略)

1
2
3
4
5
6
mysql> create database zabbix_proxy;
Query OK, 1 row affected (0.00 sec)
mysql>GRANT ALL PRIVILEGES ON `zabbix`.* TO  'zabbix_proxy' @ '%' ;
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

2.4,导入zabbix默认的数据库文件

1
[root@SH-Cacti-200018 zabbix-3.4.3] # mysql zabbix_proxy < database/mysql/schema.sql

2.5,修改代理服务器的配置zabbix_proxy.conf

1
2
3
4
5
6
7
8
9
10
11
12
[root@SH-Cacti-200018 etc] # vim /usr/local/zabbix/etc/zabbix_proxy.conf
Server=192.168.99.99
Hostname=Zabbix_Proxy200.18
LogFile= /tmp/zabbix_proxy .log
  DBHost=192.168.99.99
DBName=zabbix_proxy
DBUser=zabbix
  DBPassword=zabbix
  ConfigFrequency=600
  DataSenderFrequency=10
Timeout=4
LogSlowQueries=3000

备注:

Server=IP                    #zabbix服务端IP
Hostname=Zabbix_proxy               #必须和WEB页面添加代理时设置的名称一致
LogFile=/tmp/zabbix_proxy.log           #日志文件路径
DBHost=IP                    #数据库IP
DBName=zabbix_proxy                #数据库名
DBUser=user                   #数据库用户名
DBPassword=password                #数据库密码
ConfigFrequency=60                #配置文件同步间隔
DataSenderFrequency=5               #数据同步间隔

2.5配置zabbix_proxy和zabbix_agent启动服务

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
[root@HTD-CATIT init.d] # cp /tmp/install/zabbix-3.4.3/misc/init.d/fedora/core/zabbix_agentd  /etc/init.d/
[root@HTD-CATIT init.d] # cp /tmp/install/zabbix-3.4.3/misc/init.d/fedora/core/zabbix_server  /etc/init.d/
[root@HTD-CATIT init.d] # cd /etc/init.d/
[root@HTD-CATIT init.d] # mv zabbix_server zabbix_proxy
#########修改zabbix_proxy中的BINARY_NAME=zabbix_proxy
[root@HTD-CATIT init.d] # vim zabbix_proxy 
#!/bin/bash
#
# chkconfig: - 90 10
# description:  Starts and stops Zabbix Server using chkconfig
#                               Tested on Fedora Core 2 - 5
#                               Should work on all Fedora Core versions
#
# @name:        zabbix_server
# @author:      Alexander Hagenah <hagenah@topconcepts.com>
# @created:     18.04.2006
#
# Modified for Zabbix 2.0.0
# May 2012, Zabbix SIA
#
# Source function library.
/etc/init .d /functions
# Variables
# Edit these to match your system settings
         # Zabbix-Directory
         BASEDIR= /usr/local
         # Binary File
         BINARY_NAME=zabbix_proxy
[root@HTD-CATIT init.d] # chmod +x zabbix_*
[root@HTD-CATIT init.d] # chkconfig --add zabbix_proxy
[root@HTD-CATIT init.d] # chkconfig --add zabbix_agetnd
[root@HTD-CATIT init.d] # chkconfig zabbix_proxy on
[root@HTD-CATIT init.d] # chkconfig zabbix_agentd on
[root@HTD-CATIT init.d] # ln -s /usr/local/zabbix/sbin/* /usr/local/sbin
[root@HTD-CATIT init.d] # /etc/init.d/zabbix_proxy restart
Shutting down zabbix_proxy: [  OK  ]
Starting zabbix_proxy:  [  OK  ]

(三)在zabbix客户端agent配置

在被监控的agnet端的配置文件设置Server=proxy_IP后并重启服务

1
2
3
4
5
6
[root@SH-Cacti-200018 etc] # grep -vP '^$|#' zabbix_agentd.conf
LogFile= /tmp/zabbix_agentd .log
Server=192.168.200.18
  ListenPort=10050
ServerActive=192.168.200.18
Hostname=192.168.180.18


(四)Zabbix服务端 WEB界面上进行如下配置

4.1,新建代理服务器,管理--agent代理程序--创建代理

12bdf10f1b4a695ef62bbc705437f234.png4.2,填写代理服务器的相关信息。

b42fc2f361345589e9aa688c1deb09a3.png4.3,新建监控主机并选择相应的模板。配置--主机--新建主机。

a652b9dbda25f366a495562c073a41d3.png

a33c8ee6214bf738274a884a227e83a3.png

5c5cdb7d6b8334b6dd5dee16e94830ca.png


4.4,点击确定后再监控图形中查看出图效果。

10b801ac1674e73ca4b42596cbc04363.png

997e8d742198cc3fe4474cf9721c18c0.png


本文转自 lqbyz 51CTO博客,原文链接:http://blog.51cto.com/liqingbiao/1979710

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
3月前
|
存储 SQL 监控
修改Zabbix源码实现监控数据双写,满足业务需求!
虽然对接Elasticsearch后有诸多好处,但是它不往数据库写历史数据了,同时还不再计算趋势数据了。有这么一个场景...
修改Zabbix源码实现监控数据双写,满足业务需求!
|
4月前
|
数据采集 监控 数据库
OceanBase社区版可以通过Zabbix监控
OceanBase社区版可以通过Zabbix监控
75 4
|
1月前
|
数据采集 监控 数据库
请问OceanBase社区版能否通过zabbix监控,然后将报错信息展现到grafana?
【2月更文挑战第25天】请问OceanBase社区版能否通过zabbix监控,然后将报错信息展现到grafana?
25 2
|
2月前
|
监控 Cloud Native 关系型数据库
使用 Grafana 统一监控展示 - 对接 Zabbix
使用 Grafana 统一监控展示 - 对接 Zabbix
|
4月前
|
监控 Docker 容器
Zabbix【部署 03】zabbix-agent2安装配置使用(zabbix-agent2监控docker实例分享)
Zabbix【部署 03】zabbix-agent2安装配置使用(zabbix-agent2监控docker实例分享)
218 0
|
4月前
|
监控 Java
Zabbix【部署 02】Zabbix-Java-Gateway安装配置使用(使用Zabbix-Java-Gateway通过JMX监控Java应用程序实例分享)
Zabbix【部署 02】Zabbix-Java-Gateway安装配置使用(使用Zabbix-Java-Gateway通过JMX监控Java应用程序实例分享)
87 0
|
9天前
|
监控 关系型数据库 应用服务中间件
zabbix自定义监控、钉钉、邮箱报警
zabbix自定义监控、钉钉、邮箱报警,实验准备,安装,添加监控对象,添加自定义监控项,监控mariadb,监控NGINX,钉钉报警设置,邮件报警
129 0
|
1月前
|
NoSQL 算法 安全
Redlock 算法-主从redis分布式锁主节点宕机锁丢失的问题
Redlock 算法-主从redis分布式锁主节点宕机锁丢失的问题
152 0
|
1月前
|
NoSQL 关系型数据库 MySQL
分布式锁(redis/mysql)
分布式锁(redis/mysql)
55 1
|
3月前
|
NoSQL Java 测试技术
字节二面:Spring Boot Redis 可重入分布式锁实现原理?
字节二面:Spring Boot Redis 可重入分布式锁实现原理?
158 1

热门文章

最新文章

推荐镜像

更多