Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2899275
  • 博文数量: 348
  • 博客积分: 2907
  • 博客等级: 中校
  • 技术积分: 2272
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-12 09:16
个人简介

专注 K8S研究

文章分类

全部博文(348)

文章存档

2019年(22)

2018年(57)

2016年(2)

2015年(27)

2014年(33)

2013年(190)

2011年(3)

2010年(14)

分类: LINUX

2015-03-27 09:14:04

原文地址:zabbix proxy配置 作者:qingheliu

zabbix proxy配置
场景:
133:  zabbix server
135:  zabbix proxy
136:  zabbix client

工作原理:
zabbix proxy收集client的信息,发给zabbix  server,zabbix server根据trigger,发送报警信息!

135配置:
groupadd zabbix
useradd -g zabbix -M -s /sbin/nologin zabbix
tar zxvf zabbix-2.2.6.tar.gz
cd zabbix-2.2.6
 ./configure --prefix=/usr/local/zabbix --enable-proxy  --enable-agent --with-mysql --with-net-snmp --with-libcurl
make
make install

[root@zabbiclient2 etc]# cat zabbix_proxy.conf  | grep -v "#" | grep -v "^$"
ProxyMode=0
Server=192.168.10.133   ##zabbix server 地址
ServerPort=10051
Hostname=zabbixproxy1 ##主机名,这个配置和该机器实际的主机名没有关系,但必须和zabbix server中添加该机器的时候的主机名一致,否则zabbix server获取不到信息
LogFile=/tmp/zabbix_proxy.log
PidFile=/tmp/zabbix_proxy.pid
DBHost=localhost
DBName=zabbix_proxy
DBUser=zabbixproxy1
DBPassword=zabbixproxy1
ConfigFrequency=300
DataSenderFrequency=60
##zabbix proxy将本地库里面的数据定期发给zabbix server,故这里需要配置db的相关信息
另外必须将本地的mysql(我的zabbix proxy使用的本地的mysql数据库)服务给启动起来,否则zabbix proxy是不工作的!
配置好上面的信息好,还需要在zabbix proxy使用的db上创建db,并创建用户
mysql> create database zabbix_proxy;
mysql> grant all on zabbix_proxy.* to 'zabbixproxy1'@'localhost' identified by 'zabbixproxy1';
 mysql -uzabbix -p'zabbixproxy1'  zabbix schema.sql  )
[root@zabbiclient2 etc]# cat zabbix_agentd.conf  | grep -v "#" | grep -v "^$"
PidFile=/tmp/zabbix_agentd.pid
LogFile=/tmp/zabbix_agentd.log
DebugLevel=3
Server=192.168.10.133            ##zabbix server的ip地址
ServerActive=192.168.10.133   ##zabbix server的ip地址
Hostname=zabbixproxy1
 


136机器上的配置如下:
groupadd zabbix
useradd -g zabbix -M -s /sbin/nologin zabbix
tar zxvf zabbix-2.2.6.tar.gz
cd zabbix-2.2.6
 ./configure --prefix=/usr/local/zabbix   --enable-agent  --with-net-snmp --with-libcurl
make
make install
[root@zabbiclient1 etc]# pwd
/usr/local/zabbix/etc
[root@zabbiclient1 etc]# cat zabbix_agentd.conf | grep -v "#"| grep -v "^$"
PidFile=/tmp/zabbix_agentd.pid
LogFile=/tmp/zabbix_agentd.log
DebugLevel=4
Server=192.168.10.135
ServerActive=192.168.10.135
Hostname=zabbixclient2
 

133机器上的配置如下:zabbix server 搭建见如下的连接:
http://blog.chinaunix.net/uid-20776139-id-3906896.html
在133机器上添加一个zabbix proxy,见附件

点save 创建一个名为zabbixproxy1的代理,使用active的代理方式!
下面添加136机器到zabbixproxy1上,见附件

点save 按钮,即可添加!
不通过代理监控和通过代理监控,显示的有所不同,见附件

查看136机器的监控信息,见附件

编译过程中遇到两个问题:
1:checking for mysql_config... /usr/bin/mysql_config
checking for main in -lmysqlclient... no
configure: error: Not found mysqlclient library
解决方法:
 yum  -y install mysql-devel

2:checking for curl-config... no
configure: error: Curl library not found
[root@localhost zabbix-2.2.6]# yum -y install curl-devel

3:
Received empty response from zabbix agent at [*.*.*.*],Assuming that agent dropped connection because of access permission.
原因:
在zabbix client上修改了
Server=192.168.10.135     ##现在的这ip就是zabbix proxy的ip,原来配置为zabbix server的ip,修改这行后,没有重启zabbix agentd,郁闷了半天,太粗心了
ServerActive=192.168.10.135   


Zabbix proxy工作原理:

1.工作原理:

Zabbixproxy是一个监控代理服务器,它收集监控到的数据,先存放在缓冲区,保存的时间可以通过配置文件设定,然后再传送到Zabbixserver;监控代理需要一个单独的数据库。

Zabbix proxy的好处:

远程监控

当监控的位置通信不便时

当监控上千的设备时

简化维护分布式监控,降低zabbixserver的负载

zabbixproxy的配置总结:

1

2

3

1.代理服务器只是起到一个数据收集器的作用,它把收集到的数据按一定的频率传送给zabbix服务

 

2.有主动模式和被动模式两种,主动与被动是针对zabbix proxy而言的,我在这用的是主动模式,只需配置zabbix proxy的配置文件即可,在zabbix server端不做任何配置。

3.关键是在zabbix server的前端创建代理节点的名字时,该名字应和zabbix代理配置文件中指定的Hostname值相同

.配置zabbixproxy的配置文件zabbix_proxy.conf,该文件中有两个重要的参数:

ConfigFrequency=60      #zabbix proxy 向服务器检索配置数据信息的频率,在被动模式下该参数将被忽略

DataSenderFrequency=60  #zabbix proxy发送收集的数据给zabbix server的频率


[root@localhost zabbix-2.0.2]# vi /usr/local/zabbix/etc/zabbix_proxy.conf

Server=192.168.1.13 #zabbix server的ip地址或者域名

Hostname=proxy_bj #proxy主机名,在zabbix web会以这个名字为准

#DB 设定档

DBName=zabbix

DBUser=zabbix

DBPassword=111111

ProxyLocalBuffer=0 #设定为0小时,除非有其他第三方应用和插件需要调用

ProxyOfflineBuffer=1 #proxy或者server无法连接时,保留离线的监控数据的时间,单位小时

ConfigFrequency=600 #server和proxy配置修改同步时间间隔,设定5-10分钟即可。

DataSenderFrequency=10 #数据发送时间间隔,10-30s;

#网络传输质量越好,可以设定间隔时间越短,监控效果也越迅速;

StartPollers=10 #开启多线程数,一般不要超过30个;

StartPollersUnreachable=1 #该线程用来单独监控无法连接的主机,1个即可;

StartTrappers=10 #trapper线程数

StartPingers=1 #fping线程数

CacheSize=64M #用来保存监控数据的缓存数,根据监控主机数量适当调整;

Timeout=10 #超时时间,设定不要超过30s,不然会拖慢其他监控数据抓取时间;

TrapperTimeout=30 #同上

FpingLocation=/usr/sbin/fping #配合simple check icmp检测使用,如不需要可关闭;

其他配置默认即可;

 

阅读(24075) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~