一、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. BZOJ3597 [Scoi2014]方伯伯运椰子 【二分 + 判负环】

    题目链接 BZOJ3597 题解 orz一眼过去一点思路都没有 既然是流量网络,就要借鉴网络流的思想了 我们先处理一下那个比值,显然是一个分数规划,我们二分一个\(\lambda = \frac{X ...

  2. 刷题总结——子串(NOIP2015)

    题目: 题目背景 NOIP2015 提高组 Day2 T2 题目描述 有两个仅包含小写英文字母的字符串 A 和 B .现在要从字符串 A 中取出 k 个互不重叠的非空子串,然后把这 k 个子串按照其在 ...

  3. Tomcat学习笔记(七)

    Tomcat载入器(一) 在了解tomcat的载入器时,首先需要了解的是java的类加载部分的内容. 在java体系中,系统分为3中类型的加载器 1.启动类加载器(Bootstrap ClassLoa ...

  4. 托福、雅思和GRE的区别

    托福雅思GRE区别在哪里?对于准备申请美国硕士生的同学们来说,必须了解这一点,才能根据自身实际情况进行有针对性的复习,下面我们来进行详细介绍,为同学们指点迷津. - GRE是由美国教育考试服务处(Ed ...

  5. 消耗战(bzoj 2286)

    Description 在一场战争中,战场由n个岛屿和n-1个桥梁组成,保证每两个岛屿间有且仅有一条路径可达.现在,我军已经侦查到敌军的总部在编号为1的岛屿,而且他们已经没有足够多的能源维系战斗,我军 ...

  6. BZOJ 4261: 建设游乐场

    4261: 建设游乐场 Time Limit: 50 Sec  Memory Limit: 256 MBSubmit: 38  Solved: 16[Submit][Status][Discuss] ...

  7. 飞扬的小鸟(NOIP2014)(丧病DP题)

    原题传送门 刚开始我还以为这道题目非常的简单.. 然后随便打了一个DP,直接WA,被zxyer狠狠地D了一顿. 然后发现有好多细节.. 首先假如某横坐标没有管子,那么l[x]=0;h[x]=m+1; ...

  8. 给Input type='date'赋值

    (如有错敬请指点,以下是我工作中遇到并且解决的问题) 需要使用AngularJS动态给<input type="date" />赋值. 我使用的是ng-bind=&qu ...

  9. chanme的博客搬家了!

    一直以来都想自己租一台服务器,买个域名做一个自己的博客,但是由于时间和知识的关系,以前还不太知道怎么搭一个博客.终于我在上个礼拜成功的迈出了建站的第一步,然后陆陆续续的也将一些后续的步骤做好了.所以今 ...

  10. windows编程中的数据类型

    在windows编程中,有许多奇怪的数据类型,初学者不知道这些代表什么,下面就把一些数据类型列出如下: ATOM 原子(原子表中的一个字符串的参考) BOOL 布尔变量 BOOLEAN 布尔变量 BY ...