新公司监控用的zabbix,其中用到了zabbix-proxy,原先没有尝试弄过,如今先提早安装看看,以便后续使用查阅。php
Zabbix-proxy 是一个监控代理服务器,它收集监控到的数据,先存放在缓冲区,保存的时间能够经过配置文件设定,而后再传送到zabbix_server;监控代理须要一个单独的数据库。mysql
zabbix-proxy解决的问题:web
1,减轻zabbix server端的工做量或者说是负载。sql
2,解决异地、网络问题,好比说你agent端的机器都是内网,可是server端倒是外网这种状况。数据库
大概思路:服务器
1,先搭建zabbix server 网络
2,在被监控端安装zabbix agentide
3,再搭建一个zabbix-proxy ,把zabbix proxy当成zabbix server的agent端。spa
一,server端:192.168.128.129代理
1,安装rpm包的lamp环境 yum install -y httpd mysql mysql-libs php php-mysql mysql-server php-bcmath php-gd php-mbstring
在安装zabbix前,须要安装epel扩展源。(zabbix是在epel扩展源中的)
安装zabbix服务端:yum install -y zabbix22 zabbix22-agent(这个能够不用安装) zabbix22-server zabbix22-server-mysql zabbix22-web zabbix22-web-mysql net-snmp-devel
2,修改mysql配置文件,定义默认字符集,以避免web界面乱码。(或者在建立数据库、导入数据库时指定utf8的字符集)
vi /etc/my.cnf
[mysqld]
default-character-set = utf8
[mysqld_safe]
default-character-set = utf8
3,启动服务
/etc/init.d/httpd start (启动时会有警告提醒,修改配置文件 vi /etc/httpd/conf/httpd.conf 将ServerName前面注释取消便可)
/etc/init.d/zabbix-server start (默认没法启动)
/etc/init.d/zabbix_agent start
/etc/init.d/mysqld start
4,建立数据库受权用户导入数据
mysql -uroot
create database zabbix;
grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by 'zabbix';
use zabbix;
source /usr/share/zabbix-mysql/schema.sql
source /usr/share/zabbix-mysql/images.sql
source /usr/share/zabbix-mysql/data.sql
exit
5,网页安装zabbix,在地址栏输入192.168.128.129
根据错误提示,修改php.ini中的参数值。
vi /etc/php.ini
/etc/init.d/httpd restart
6,登录zabbix
默认帐号;admin
默认密码:zabbix
7,登陆后提示zabbxi-server未运行
编辑zabbix-server的配置文件并启动zabbix-server服务。
vi /etc/zabix_server.conf
更改DBname =zabbix(默认会有)
DBuser=zabbix(默认会有)
DBpassword=zabbix
/etc/init.d/zabbix-server start zabbix服务端启动OK。
二,客户端:
1,yum install -y zabbix22-agent
2,vi /etc/zabbix/zabbix-agentd.conf
将server=127,0,0,1,指向的zabbix-server的ip。
固然,也能够将server-active中的ip指向zabbix-server。(主动模式)
3,启动zabbix-agent
/etc/init.d/zabbix-agent start
ps aux|grep zabbix
三,回到zabbiweb页面,将被监控端添加至监控中心。
能够发现,监控没问题。可是彷佛,有点脱了主题了。。。。
回到客户端,修改/etc/zabbix/zabbix-agentd.conf的配置文件中server 指向proxy的ip。
重启zabbix-agentd服务,/etc/init.d/zabbix-agentd restart
四,proxy端
1,yum install -y zabbix-proxy zabbix-server-mysql mysql-server zabbix22-dbfiles-mysql
2,启动mysql服务。
3,mysql -uroot
create database zabbix character set utf8;
grant all on zabbix.* to 'zabbix'@'localhost' identified by 'zabbix';
use zabbix;
source /usr/share/zabbix-mysql/schema.sql
3,修改配置文件
vi /etc/zabbix/zabbix_proxy.conf
ProxyMode=0或者1 1表示的是zabbix-server本身来取数据。##zabbix server 地址Server=192.168.128.129ServerPort=10051(保持默认便可)##主机名,这个配置和该机器实际的主机名没有关系,但必须和zabbix server中添加该机器的时候的主机名一致,不然zabbix server获取不到信息Hostname=zabbix_proxyLogFile=/tmp/zabbix_proxy.logPidFile=/tmp/zabbix_proxy.pidDBHost=localhostDBName=zabbixDBUser=zabbixDBPassword=123456ConfigFrequency=300