一、proxy分布式监控介绍

来源于zabbix官网:

https://www.zabbix.com/documentation/3.4/zh/manual/distributed_monitoring/proxies

zabbix通过Zabbix proxies为IT基础设施提供有效和可用的分布式监控

代理(proxies)可用于代替Zabbix server本地收集数据,然后将数据报告给服务器

当选择使用/不使用proxy时,必须考虑几个注意事项

 

Proxy

轻量级(Lightweight)

Yes

图形界面(GUI)

No

独立工作(Works independently)

Yes

易于维护(Easy maintenance)

Yes

自动生成数据库(Automatic DB creation)1

Yes

本地管理(Local administration)

No

准备嵌入式硬件
(Ready for embedded hardware)

Yes

单向TCP连接(One way TCP connections)

Yes

集中配置(Centralised configuration)

Yes

生成通知(Generates notifications)

No

zabbix proxy 可以代替 zabbix server 收集性能和可用性数据,然后把数据汇报给 zabbix server,并且在一定程度上分担了zabbix server 的压力。此外,当所有agents和proxies报告给一个Zabbix server并且所有数据都集中收集时,使用proxy是实现集中式和分布式监控的最简单方法

zabbix proxy 使用场景:

监控远程区域设备

监控本地网络不稳定区域

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

简化分布式监控的维护

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

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

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

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

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

功能

proxy支持(yes/no)

项目(Items)

 
 

Zabbix agent checks

Yes

Zabbix agent checks (active)

Yes 1

Simple checks

Yes

Trapper items

Yes

SNMP checks

Yes

SNMP traps

Yes

IPMI checks

Yes

JMX checks

Yes

日志文件监控(Log file monitoring)

Yes

内部检查(Internal checks)

Yes

SSH checks

Yes

Telnet checks

Yes

外部检查(External checks)

Yes

内置web监控(Built-in web monitoring)

Yes

网络发现(Network discovery)

Yes

自动发现(Low-level discovery)

Yes

触发器计算(Calculating triggers)

No

处理事件(Processing events)

No

发送报警(Sending alerts)

No

远程命令(Remote commands)

No

二、分布式监控部署

环境说明

系统版本     CentOS 7.2 x86_64

软件版本        zabbix 3.0.18

机器角色及ip

zabbix server    10.0.0.63

zabbix proxy    eth0:10.0.0.65    eth1:192.168.1.65

zabbix agent    192.168.1.66

通过zabbix proxy的搭建,zabbix server可以远程从proxy获取到数据,这里的环境相当于zabbix server具有一个公网ip地址,zabbix agent只具有内网地址,zabbix proxy具有外网地址和内网地址,搭建zabbix proxy使zabbix server能通过proxy远程获取到zabbix agent的数据

1、配置zabbix proxy

1.1 安装并配置zabbix的源

[root@zabbix-proxy ~]# rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm            #安装源

[root@zabbix-proxy ~]# vim /etc/yum.repos.d/zabbix.repo    #修改配置文件,将地址改为清华的

[zabbix]

name=Zabbix Official Repository - $basearch

baseurl=https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/3.0/rhel/7/$basearch/

……

[zabbix-non-supported]

name=Zabbix Official Repository non-supported - $basearch

baseurl=https://mirrors.tuna.tsinghua.edu.cn/zabbix/non-supported/rhel/7/$basearch/

……

[root@zabbix-proxy ~]# yum makecache        #更新缓存

1.2 安装配置zabbix proxy

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

[root@zabbix-proxy ~]# yum install -y mariadb-server        #安装数据库

[root@zabbix-proxy ~]# systemctl start mariadb.service         #启动数据库

[root@zabbix-proxy ~]# systemctl enable mariadb.service        #开机启动

[root@zabbix-proxy ~]# mysql                            #登录数据库

create database zabbix_proxy default charset utf8;

MariaDB [(none)]> create database zabbix_proxy character set utf8 collate utf8_bin;    #创库

MariaDB [(none)]> grant all privileges on zabbix_proxy.* to zabbix@localhost identified by '123456';    #授权

MariaDB [(none)]> exit

[root@zabbix-proxy ~]# rpm -ql zabbix-proxy-mysql|grep sql

/usr/sbin/zabbix_proxy_mysql

/usr/share/doc/zabbix-proxy-mysql-3.0.18

/usr/share/doc/zabbix-proxy-mysql-3.0.18/AUTHORS

/usr/share/doc/zabbix-proxy-mysql-3.0.18/COPYING

/usr/share/doc/zabbix-proxy-mysql-3.0.18/ChangeLog

/usr/share/doc/zabbix-proxy-mysql-3.0.18/NEWS

/usr/share/doc/zabbix-proxy-mysql-3.0.18/README

/usr/share/doc/zabbix-proxy-mysql-3.0.18/schema.sql.gz

[root@zabbix-proxy ~]# cd /usr/share/doc/zabbix-proxy-mysql-3.0.18/                #导入数据库

[root@zabbix-proxy zabbix-proxy-mysql-3.0.18]# zcat schema.sql.gz | mysql -uzabbix -p123456 zabbix_proxy

[root@zabbix-proxy zabbix-proxy-mysql-3.0.18]# cd

[root@zabbix-proxy ~]# vim /etc/zabbix/zabbix_proxy.conf        #修改zabbix-proxy的配置文件

24 Server=10.0.0.63    #zabbix-server的地址

43 Hostname=zabbix-proxy        #主机名

128 DBHost=localhost            #数据库主机

139 DBName=zabbix_proxy        #数据库名称

154 DBUser=zabbix            #数据库用户名

162 DBPassword=123456        #数据库密码

配置文件中没有配置的内容如下:(有需要可以配置)

# ProxyLocalBuffer=0

#数据保留的时间(小时为单位)

# ProxyOfflineBuffer=1

#连不上Server,数据要保留多久(小时为单位,默认1小时)

# DataSenderFrequency=1

#数据的发送时间间隔(默认是1秒)

# StartPollers=5

#启动的线程数

# StartIPMIPollers=0

#启动IPMI的线程数

[root@zabbix-proxy ~]# systemctl start zabbix-proxy.service         #启动zabbix-proxy

[root@zabbix-proxy ~]# systemctl enable zabbix-proxy.service        #开机启动

2、server端的web界面添加zabbix proxy

配置——>anget代理程序——>创建代理

agent代理程序名称和proxy代理的主机名相同

proxy代理添加后,等待发现代理,如果不能及时发现代理,可以通过查看server和proxy的日志进行检查

[root@zabbix-server ~]# tail -f /var/log/zabbix/zabbix_server.log

[root@zabbix-proxy ~]# tail -f /var/log/zabbix/zabbix_proxy.log

[root@zabbix-server ~]# systemctl restart zabbix-server.service        #重启server端服务

[root@zabbix-proxy ~]# systemctl restart zabbix-proxy.service        #再重启proxy端服务

Web界面进行检查,代理成功添加

3、安装配置zabbix-agent

由于agent端只有一个内网卡,不能上网,要安装zabbix-agent可以采取的方法有:

a、将proxy配置为路由器和agent的网关,使agent通过proxy上网安装

b、在proxy端下载好agent程序发送到agent端再安装

这里选择方法b

在proxy下载并发送

[root@zabbix-proxy ~]# wget https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-agent-3.0.18-1.el7.x86_64.rpm

[root@zabbix-proxy ~]# scp zabbix-agent-3.0.18-1.el7.x86_64.rpm root@192.168.1.66:/root/

root@192.168.1.66's password:

zabbix-agent-3.0.18-1.el7.x86_64.rpm 100% 341KB 341.4KB/s 00:00

agent端yum本地安装

[root@zabbix-agent ~]# yum localinstall -y zabbix-agent-3.0.18-1.el7.x86_64.rpm

[root@zabbix-agent ~]# vim /etc/zabbix/zabbix_agentd.conf            #修改配置文件

95 Server=192.168.1.65            #服务端即proxy的ip地址,内网地址

147 Hostname=192.168.1.66        #填写主机名称,或填写为ip地址便于区分

[root@zabbix-agent ~]# systemctl start zabbix-agent.service             #启动zabbix-agent

[root@zabbix-agent ~]# systemctl enable zabbix-agent.service            #开机启动

4、server端的web界面添加主机

配置——>主机——>创建主机

主机名称和agent端配置文件中相同,选择代理

为主机链接模板

5、检验

等待添加的主机变绿,变绿之后查看最新数据

若不能及时变绿,则需要重启服务或使用命令zabbix_server -R config_cache_reload刷新配置缓存

至此,zabbix跨网段通过proxy代理监控主机配置完成!

 

博主原创文章,转载请务必注明出处

zabbix proxy分布式监控部署的更多相关文章

  1. Zabbix Proxy 分布式监控

    简介: Zabbix 是一个分布式监控系统,它可以以一个中心点.多个分节点的模式运行,使用 proxy 能降低 Zabbix Server 的压力,当然也带来了成本~ 适用范围:跨机房.跨地域的网络监 ...

  2. (33)zabbix proxy分布式监控配置

    概述 zabbix proxy可以代替zabbix server检索客户端的数据,然后把数据汇报给zabbix server,并且在一定程度上分担了zabbix server的压力.zabbix pr ...

  3. zabbix分布式监控部署--技术流ken

    前言 zabbix proxy可以代替zabbix server检索客户端的数据,然后把数据汇报给zabbix server,并且在一定程度上分担了zabbix server的压力.zabbix pr ...

  4. 017-zabbix_proxy分布式监控部署

    一.proxy分布式监控介绍 来源于zabbix官网: https://www.zabbix.com/documentation/3.4/zh/manual/distributed_monitorin ...

  5. 【Zabbix】分布式监控系统Zabbix【一】

    一.Zabbix功能及特性简介 Zabbix可以获取cpu,内存,网卡,磁盘,日志等信息 1.Zabbix数据收集方式: a.Agent客户端(Agent客户端支持多平台部署) b.如果是无法安装客户 ...

  6. ganglia分布式监控部署

    一.介绍        Ganglia是由UC Berkeley发起的一个开源监控项目,设计用于监控数以千几的节点.每台服务器都运行一个收集和发送监控数据名为gmond的守护进程.它将从操作系统和指定 ...

  7. 【Zabbix】分布式监控系统Zabbix【二】

    一.Zabbix基本操作 1.主机群组.主机.模板.触发器 a.创建主机群组和主机的过程比较简单,不再介绍 b.配置模板: 创建一个模板,将其分组到Template组,添加配置应用: 给应用创建监控项 ...

  8. zabbix监控-部署(一)

    zabbix之自动化监控-部署篇(一) 标签(空格分隔): linux 笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 浅谈监控 监控命令 查看硬件的温度/风扇转 ...

  9. 8、zabbix监控方式及分布式监控(04)

    zabbix支持的监控方式 zabbix所能够显示的且可指定为监控接口类型的监控方式: Agent passive active SNMP:Simple Network Management Prot ...

随机推荐

  1. [经验分享]Windows系统下生成IOS证书

    我使用ApiCloud开发APP,开发后需要生成IOS的证书才能在项目开发控制台中进行编译,于是我在网上大海捞针似的寻找办法. 官方文档提供了使用苹果系统下生成IOS证书的步骤,对于我这个没有imac ...

  2. 当鼠标点击input框时,想让全选input框的所有内容只需要加“onfocus="this.select();”就可以了

    当鼠标点击input框时,想让全选input框的所有内容只需要加“onfocus="this.select();”就可以了

  3. mac平台打造犀利的Android Studio开发环境

    0x0 背景介绍  随着Android Studio功能越来越强大,Android平台的开发者们基本上都从原来的Eclipse + ADT 转到了AS上.本文就记录自己在配置AS环境过程中遇到的各种问 ...

  4. ngrepeat 时注意的地方和一些little tricks

    angularjs的一些使用经验总结,此篇文章单谈ng指令之一ngrepeat 1. ngrepeat 时报错 Duplicates in a repeater are not allowed, 正常 ...

  5. vim编辑器快捷运用

    vim下可以使用常用的箭头键 但是 还有其它键可以让你更快的达到目标 hjkl 这是代替箭头键功能的 H M L 跳到屏幕的顶上 中间 下方 w 跳到下一个单词的开始e 跳到单词的结束b 向后跳 gg ...

  6. 【bzoj3211】花神游历各国&&【bzoj3038】上帝造题的七分钟2

    bzoj3038]上帝造题的七分钟2 Description XLk觉得<上帝造题的七分钟>不太过瘾,于是有了第二部. “第一分钟,X说,要有数列,于是便给定了一个正整数数列. 第二分钟, ...

  7. 在AppCode中的razor调用HtmlHelper方法和UrlHelper方法

    原文发布时间为:2011-05-17 -- 来源于本人的百度文章 [由搬家工具导入] 可以写一个帮助类,如下 using System.Web.WebPages;using System.Web.Mv ...

  8. 不只是内存分析工具~valgrind

    体系结构:原理介绍·参考好文:应用 Valgrind 发现 Linux 程序的内存问题 简单组一个摘要: Valgrind包括如下一些工具: Memcheck.这是valgrind应用最广泛的工具,一 ...

  9. lambda calculus

    ;;;lambda calculus ;;;booleanstrue = \x.\y.xfalse = \x.\y.yif = \v.\t.\f. v t f ;;;exif true M N = M ...

  10. xen save/restore 过程

    以下分析基于 xen4.2.3, 虚拟机都是hvm模式 使用libxl库有两种方式启动一个虚拟机,一种是 xl create xx.conf , 这种方式从一个配置文件开始启动一个虚拟机,速度相对较慢 ...