Zabbix监控实现跨区域跨网络监控数据
环境:
公司现有服务器10台,其中5台服务器有一台安装了zabbix,并且这5台服务器处于一个网络,只有一台服务器有公网ip,
另外的5台处于另一个网络,仅有一台服务器拥有公网ip,其余四台只有内网ip并且不能够上网,
实现目标:对所有服务器进行监控
实现原理:
架构:server---proxy---agentd
通过proxy这个桥梁来接收不在一个网络的机器的数据,然后proxy将数据发送到server端
Server端将数据展现出来
Server:39.122.11.132
Proxy:39.122.12.111
Agentd:192.168.1.101
Agentd:192.168.1.102
Agentd:192.168.1.104
Agentd:192.168.1.105
Agentd:192.168.1.106
部署过程:
在这里就不写server端的部署过程了,默认server端已经安装完毕,并且能够正常使用
先将zabbix的安装包传到proxy拥有外网ip的服务器上
安装proxy 步骤如下
解压安装包
进入解压目录编译
依赖包
yum install -y net-snmp-devel
yum install curl-devel
编译参数
./configure --prefix=/usr/local/zabbix --enable-agent --enable-proxy --with-mysql --with-net-snmp --with-libcurl
make && make install
更改配置文件
vim /usr/local/zabbix/etc/zabbix_proxy.conf
需要更改的项如下
Server=zabiix_server的公网ip地址
Hostname=本机的主机名
DBhost= zabiix_server的公网ip地址
DBName=zabbix_server端端数据库
DBUser=zabbix_server端数据库用户名
DBPassword=zabbix_server端数据库授权密码
DBPort=3306
到server端去建库授权proxy端连接
最后启动proxy端
/usr/local/zabbix/sbin/zabbix_proxy
至此proxy部署完毕
部署zabbix_agent端
先将zabbix的安装包传到服务器上
安装agentd步骤如下
解压安装包
进入解压目录编译
./configure --prefix=/usr/local/zabbix --enable-agent
更改配置文件
vim /usr/local/zabbix/etc/zabbix_agentd.conf
需要更改的项如下
Server=zabiix_proxy的内网ip地址
Hostname=本机的主机名
注释掉:
ServerActive=127.0.0.1
这里放上一个脚本安装部署agent端
#zabbix_agentd install
groupadd zabbix
useradd -g zabbix -m zabbix
HOST=$"$(hostname)"
cd /usr/src/
tar zxf zabbix-3.0.3.tar.gz
cd /usr/src/zabbix-3.0.3
./configure --prefix=/usr/local/zabbix --enable-agent
make
make install
cd /usr/local/zabbix/etc/
#更改zabbix_agentd的配置文件并且启动
hostname > /usr/local/kk.log
HOST=`cat /usr/local/kk.log`
ip=`ifconfig eth0|awk -F '[ :]+' 'NR==2 {print $3}'`
echo $ip
echo $HOST
sed -i "s/Server=127.0.0.1/Server=172.17.146.206/g" /usr/local/zabbix/etc/zabbix_agentd.conf
sed -i 's/ServerActive=127.0.0.1/#ServerActive=127.0.0.1/g' /usr/local/zabbix/etc/zabbix_agentd.conf
sed -i "s#Hostname=Zabbix server#Hostname=$HOST#g" /usr/local/zabbix/etc/zabbix_agentd.conf
cp /usr/src/zabbix-3.0.3/misc/init.d/tru64/zabbix_agentd /etc/init.d/
chmod +x /etc/init.d/zabbix_agentd
echo "# chkconfig: 2345 10 90" >> /etc/init.d/zabbix_agentd
ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/
ln -s /usr/local/zabbix/bin/* /usr/local/bin/
chkconfig --add zabbix_agentd
chkconfig zabbix_agentd on
service zabbix_agentd restart
至此部署完毕,下面截图web界面的配置图
添加主机
至此添加玩模板就行了