zabbix 3.0.2 zabbix-proxy安装

线上服务器是阿里云的,所以zabbix安装在阿里云上面

公司内网有几台服务器,需要使用zabbix监控。因为公司带宽是拨号上网的,没有固定IP,所以zabbix服务器无法直接访问到内网,那么这个时候就需要使用zabbix-proxy了

zabbix 3.0.2 zabbix-proxy安装_第1张图片


Zabbix proxy工作原理:


1.工作原理:

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


Zabbix proxy的好处:

远程监控

当监控的位置通信不便时

当监控上千的设备时

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


下面主要介绍zabbix_proxy的安装


先安装数据库,因为zabbix_proxy的数据库要独立

安装组件

yum -y install ncurses-devel cmake

创建用户和用户组

groupadd mysql

useradd -g mysql mysql

usermod -s /sbin/nologin mysql

创建目录

mkdir -p /data/3306/data /data/3306/logs

解压编译

tar zxvf mysql-5.6.23.tar.gz -C /usr/src

cd /usr/src/mysql-5.6.23

cmake  -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

-DMYSQL_DATADIR=/data/3306/data \

-DMYSQL_TCP_PORT=3306 \

-DMYSQL_UNIX_ADDR=/data/3306/mysqld.sock \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DWITH_EXTRA_CHARSETS=all \

-DWITH_MYISAM_STORAGE_ENGINE=1 \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DENABLED_LOCAL_INFILE=1 \

-DEXTRA_CHARSETS=all \

-DWITH_EMBEDDED_SERVER=1 \

-DWITH_SSL=bundled \

-DWITH_DEBUG=0 \

-DENABLE_DOWNLOADS=1

安装

make

make install

初始化

/usr/local/mysql/scripts/mysql_install_db \

--basedir=/usr/local/mysql \

--datadir=/data/3306/data \

--user=mysql

备份配置文件

cd /usr/local/mysql

cp my.cnf my.cnf.bak

修改配置文件

vi my.cnf

修改部分如下:


 basedir = /usr/local/mysql

 datadir = /data/3306/data

 port = 3306

 server_id = 2

 socket = /data/3306/mysqld.sock

 pid-file = /data/3306/mysql.pid

 max_allowed_packet=16M

 log-error = /data/3306/logs/error.log


设置权限

chown mysql:mysql -R /data/3306

chown mysql:mysql -R /usr/local/mysql

复制启动脚本,设置开机自启动

cp /usr/src/mysql-5.6.23/support-files/mysql.server /etc/init.d/mysqld

chmod +x /etc/init.d/mysqld

chkconfig --add mysqld

chkconfig --level 2345 mysqld on

编辑环境变量

vi /etc/profile

最后一行添加

PATH=$PATH:/usr/local/mysql/bin

加载环境变量

source /etc/profile

启动数据库

/etc/init.d/mysqld start


创建zabbix用户

groupadd zabbix

useradd -g zabbix -M -s /sbin/nologin zabbix


安装组件

yum -y install mysql-devel curl curl-devel net-snmp net-snmp-devel

安装zabbix-proxy

tar zxvf zabbix-3.0.2.tar.gz

cd /usr/src/zabbix-3.0.2

./configure --prefix=/usr/local/zabbix-proxy --enable-proxy  --enable-agent --with-mysql --with-net-snmp --with-libcurl

make && make install

备份配置文件,编辑配置文件

cd /usr/local/zabbix-proxy/etc/

mv zabbix_proxy.conf zabbix_proxy.conf.bak

vi zabbix_proxy.conf

内容如下:


ProxyMode=0

##zabbix server 地址

Server=120.x.x.x

ServerPort=10051

##主机名,这个配置和该机器实际的主机名没有关系,但必须和zabbix server中添加该机器的时候的主机名一致,否则zabbix server获取不到信息

Hostname=intranet

LogFile=/tmp/zabbix_proxy.log

PidFile=/tmp/zabbix_proxy.pid

DBHost=localhost

DBName=zabbix_proxy

DBUser=zabbix_proxy

DBPassword=123456

ConfigFrequency=300

DataSenderFrequency=60


进入数据库

mysql -u root

创建数据库

CREATE DATABASE zabbix_proxy DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

创建数据库账户

grant all privileges on zabbix_proxy.* to zabbix_proxy@localhost identified by '123456';

#导入数据库

use zabbix_proxy;

source /usr/src/zabbix-3.0.2/database/mysql/schema.sql;


启动

/usr/local/zabbix-proxy/sbin/zabbix_proxy -c /usr/local/zabbix-proxy/etc/zabbix_proxy.conf


查看日志,是否有错误

tail -f /tmp/zabbix_proxy.log

如果出现:

Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

  1990:20160504:163219.166 database is down: reconnecting in 10 seconds

解决方法:

mkdir -p /var/lib/mysql

ln -s /data/3306/mysqld.sock /var/lib/mysql/mysql.sock


zabbix_proxy的操作到这里就结束了


那么zabbix_agent的配置文件zabbix_agentd.conf,其中2行配置的IP,指向zabbix_proxy的IP

并重启zabbix_agent

Server=192.168.1.154

ServerActive=192.168.1.154


进入zabbix_server的网页后台

点击管理->agent代理程序->创建代理

名称就是zabbix_proxy.conf中Hostname参数指定的名字,必须一致

选择主动式,填写描述,点击添加

zabbix 3.0.2 zabbix-proxy安装_第2张图片

添加内网的一台主机

注意选择代理程序intranet

zabbix 3.0.2 zabbix-proxy安装_第3张图片

有代理和无代理的主机,是有区别的。

名称会显示代理程序名:主机名

zabbix 3.0.2 zabbix-proxy安装_第4张图片

等待几分钟,查看图形是否有数据

zabbix 3.0.2 zabbix-proxy安装_第5张图片


你可能感兴趣的:(proxy,zabbix)