zabbix proxy部署
一.概述
环境:
因为公司需要监控远程客户机,但server端无法主动连接agent端,客户端可以连接公司ip
公司有固定ip,可以开放某个端口给zabbixserver,客户机agent端可以主动通过外网连接公司服务器,但没有固定ip
查过zabbix,可以有多种方法设定agent端主动连接server端,方式如下
1、agent(active) 采集模式(create item)
2、trapper 采集模式(create item),需要安装zabbix-sender,使用脚本启动命令,执行sender
3、还有安装proxy,这是我后来实验成功,也是最理想的
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(配置文件ip指向服务器192.168.1.100),192.168.1.20负责与服务器通信的
客户端 10.10.10.30(配置文件ip指向10.10.10.20)
服务端可以连接代理端,但无法连接客户端
三.代理端配置
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
添加代理ipvim /etc/zabbix/zabbix_agentd.conf
Server=10.10.10.20
ServerActive=10.10.10.20
systemctl start zabbix-agent
netstat -unltp | grep :10050
查看是否监听端口
五.服务端配置
5.1,新建代理服务器,管理--agent代理程序--创建代理
5.2,填写代理服务器的相关信息。
agent代理程序名称一定要与zabbix_proxy.conf中的Hostnamer一致
到5.3,新建监控主机并选择相应的模板。配置--主机--新建主机
5.4,点击确定后再监控图形中查看出图效果。
六.排错
若不亮
到/usr/local/zabbix_proxy/bin下./zabbix_get 10.10.10.30 -s -k agent.ping
返回1则正确,实际上是不会亮的,因为他是通过代理获得数据,没法直接监控。以数据为准,可以命令行测试,或者图形界面查看是否有最新数据。
zabbix proxy部署的更多相关文章
- 分布式监控系统之Zabbix proxy
前文我们了解了zabbix 使用snmp和jmx信道采集数据的相关使用配置,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/14029864.html:今天我们来 ...
- zabbix proxy分布式监控部署
一.proxy分布式监控介绍 来源于zabbix官网: https://www.zabbix.com/documentation/3.4/zh/manual/distributed_monitorin ...
- zabbix server&proxy部署操作过程
zabbix server&proxy部署操作过程 系统:ubuntu20.04 zabbix版本: 5.4 安装zabbix server 安装方式: 包管理安装,docker,源码,app ...
- Zabbix proxy 3.2安装部署
zabbix proxy 前提环境: CentOS 6 LNMP(php) 版本:Zabbix-3.2.3 proxy安装 yum install -y net-snmp \ net-snmp-dev ...
- 030.Zabbix分布式部署
一 分布式Zabbix介绍 zabbix proxy 可以代替 zabbix server 收集性能和可用性数据,然后把数据汇报给 zabbix server,并且在一定程度上分担了zabbix se ...
- Zabbix安装部署实践
操作系统: [root@mysql ~]# cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core) Mysql : 版本5.7 ...
- 部署zabbix3.2.7,升级到3.4、proxy部署
一.Server安装 可以使用mysql.percona.mariadb等,本例使用mariadb.由于是事后整理,只截取部分命令. #yum install mariadb-server maria ...
- ZABBIX Proxy容器启动的配置过程
ZABBIX Proxy容器启动的配置过程 环境介绍 版本 zabbix6 zabbix server 与 zabbix proxy 非同一台主机,zabbix proxy为主动方式提交给server ...
- zabbix proxy 服务器 netstat 出现大量Time_Wait连接问题
问题描述: 监控系统云网关监控几万个TCP port的存活情况, 最近发现有几个端口出现告警闪断情况,怀疑因为运行TCP检查的 zabbix proxy 服务器 tcp参数配置不合理. netstat ...
随机推荐
- Chapter 4 Invitations——15
He slouched off, back toward the school. 他无精打采的回去了学校. I heard a low chuckle. 我听到了低声的笑. Edward was wa ...
- java nginx等代理或网关转发请求后获取客户端的ip地址,原理
在没有网关或者反向代理软件情况下,java里获取客户端ip地址的方法是request.getRemoteAddr() 先解释下http协议和TCP协议: 网页默认是进行http连接了,http协议即超 ...
- leetcode — symmetric-tree
import java.util.Stack; /** * Source : https://oj.leetcode.com/problems/symmetric-tree/ * * * Given ...
- JavaScriptCore全面解析
本文由云+社区发表 作者:殷源,专注移动客户端开发,微软Imagine Cup中国区特等奖获得者 JavaScript越来越多地出现在我们客户端开发的视野中,从ReactNative到JSpatch, ...
- Docker日志管理--docker部署安装ELK (十一)--技术流ken
Docker logs 对于一个运行的容器,Docker 会将日志发送到 容器的 标准输出设备(STDOUT)和标准错误设备(STDERR),STDOUT 和 STDERR 实际上就是容器的控制台终端 ...
- SpringCloud系列——Eureka 服务注册与发现
前言 Eureka是一种基于REST(具像状态传输)的服务,主要用于AWS云中定位服务,以实现中间层服务器的负载平衡和故障转移.本文记录一个简单的服务注册与发现实例. GitHub地址:https:/ ...
- Java开发笔记(二十六)方法的输出参数
前面介绍了方法的输入参数,与输入参数相对应的则为输出参数,输出参数也被称作方法的返回值,意思是经过方法的处理最终得到的运算数值.这个返回值可能是整型数,也可能是双精度数,也可能是数组等其它类型,甚至允 ...
- Android项目刮刮奖详解(三)
Android项目刮刮奖详解(二) 前言 上一期我们已经实现了一个简易的刮刮卡功能,这一期我们来将其完善一下 目标 将刮刮奖的宽高改为合适高度 将刮刮奖位置居中 将信息层的图片换成文字(重点) 实现 ...
- SpringMVC进行文件上传
进行文件上传前需要添加相应的依赖 在xml文件中进行相应的文件上传解析器的配置 注意:这里有个坑,因为没注意,再排查错误的时候花了一点时间.就是给bean的id一定要是. 否者就会报如下的错误:
- 【Spring】6、注解大全
一.@interface Java用 @interface Annotation{ } 定义一个注解 @Annotation,一个注解是一个类. 二.@Override,@Deprecated,@S ...