zabbix 4.4 源码搭建(一)
zabbix-agent 自动发现 (二)
zabbix自定义监控 (三)
zabbix 微信告警 (四)
zabbix 4.0分布式监控 (五)
文章目录
-分布式监控
zabbix-proxy可以帮zabbix-server收集数据,然后再把数据给到zabbix-server,一定程度的帮zabbix-server分担压力
.
应用场景:
- 监控远程区域设备
- 监控本地网络不稳定区域
- 当 zabbix 监控上千设备时,使用它来减轻 server 的压力
- 简化分布式监控的维护
-实验环境
- zabbix-server 192.168.1.122
- zabbix-proxy 192.168.1.123
- zabbix-agent 192.168.1.126
-zabbix-proxy配置
-zabbix-proxy安装
zabbix-server端是以4.0部署的
部署zabbix-proxy应该保持同版本不然会报错"invalid field name itmes.lastlogsize"
- 上传包
- 解压包
- 编译安装
- 配置文件
- 开启服务
#解压
[root@node3 src]# tar xf zabbix-4.0.27.tar.gz
#进入解压后的目录
[root@node3 src]# cd zabbix-4.0.27/
#安装依赖
[root@node3 zabbix-4.0.27]# yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI libxml2-devel mysql-devel libevent-devel openldap openldap-devel libssh2-devel
#预编译
[root@node3 zabbix-4.0.27]# ./configure --prefix=/usr/local/zabbix-proxy \
--enable-proxy \
--enable-agent \
--with-mysql \
--with-libcurl \
--with-net-snmp \
--with-libxml2 \
--with-ssh2
#编译安装
[root@node3 zabbix-4.0.27]# make && make install
#安装数据库(yum安装mariadb)
[root@node3 zabbix-4.0.27]# yum install mariadb mariadb-server -y
[root@node3 zabbix-4.0.27]# systemctl start mariadb
#创建proxy数据库
MariaDB [(none)]> create database zabbix_proxy charset utf8;
MariaDB [(none)]> grant all on zabbix_proxy.* to "zabbix"@"localhost" identified by "123456";
MariaDB [(none)]> flush privileges;
#导入数据
MariaDB [zabbix_proxy]> source /usr/src/zabbix-4.0.27/database/mysql/schema.sql
-zabbix-proxy主动模式配置
proxy默认就是主动模式,proxy收集数据主动发给zabbix-server
#主动模式配置文件 位于/usr/local/zabbix-proxy/etc/zabbix_proxy.conf
[root@node3 mysql]# vim /usr/local/zabbix-proxy/etc/zabbix_proxy.conf
#修改内容
ProxyMode=0 #模式
Server=192.168.1.122 #serverIP
Hostname=node3_proxy #proxy名称,与web保持一致
LogFile=/tmp/zabbix_proxy.log
DBHost=localhost #数据库地址
DBName=zabbix_proxy #数据库名称
DBUser=zabbix #数据库用户
DBPassword=123456 #数据库密码
HeartbeatFrequency=5 #心跳检测时间
ConfigFrequency=30 #多久从server获取监控项信息
DataSenderFrequency=1 #多久向server发送数据
Timeout=4
LogSlowQueries=3000
#启动服务
[root@node3 mysql]# useradd -s /sbin/nologin zabbix -M
[root@node3 mysql]# /usr/local/zabbix-proxy/sbin/zabbix_proxy
#查看端口
[root@node3 mysql]# netstat -nltp |grep 10051
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 20650/zabbix_proxy
-zabbix-agent配置
-zabbix-agent安装
#源码
[root@node6 src]# tar xf zabbix-4.0.27.tar.gz
[root@node6 src]# cd zabbix-4.0.27/
[root@node6 zabbix-4.0.27]# yum install pcre pcre-devel -y
[root@node6 zabbix-4.0.27]# ./configure --prefix=/usr/local/zabbix-agent --enable-agent
[root@node6 zabbix-4.0.27]# make && make install
-zabbix-agent配置
#配置agent配置文件
[root@node6 zabbix-agent]# vim conf/zabbix_agentd.conf
#修改内容(这里要把地址指向proxy,把proxy看做server来配置就可以)
LogFile=/tmp/zabbix_agentd.log
Server=192.168.1.123
ListenPort=10050
ServerActive=192.168.1.123
Hostname=node6
#启动zabbix_agent
[root@node6 zabbix-agent]# useradd -s /sbin/nologin zabbix -M
[root@node6 zabbix-agent]# /usr/local/zabbix-agent/sbin/zabbix_agentd
#查看端口
[root@node6 zabbix-agent]# netstat -nltp |grep 10050
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 27501/zabbix_agentd
-proxy上zabbix-agent配置
#安装时有开启agent,只需要修改配置文件
[root@node3 local]# vim /usr/local/zabbix-proxy/etc/zabbix_agentd.conf
#也可以把node6配置文件拷过来,Hostname=node3
LogFile=/tmp/zabbix_agentd.log
Server=192.168.1.123
ListenPort=10050
ServerActive=192.168.1.123
Hostname=node3
#启动服务
[root@node3 local]# /usr/local/zabbix-proxy/sbin/zabbix_agentd
#查看端口
[root@node3 local]# netstat -nltp |grep 10050
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 60449/zabbix_agentd
-web-端配置
#添加主机
-zabbix-proxy被动模式配置
被动模式:是Server启用代理轮询进程,周期性的从被动代理获取数据,在被动模式中,配置检索的时间、数据发送频率是由Server来定义的。
#proxy配置文件
ProxyMode=1
Server=192.168.1.122
Hostname=node3_proxy
LogFile=/tmp/zabbix_proxy.log
DBHost=localhost
DBName=zabbix_proxy
DBUser=zabbix
DBPassword=123456
Timeout=4
LogSlowQueries=300
# HeartbeatFrequency=5
# ConfigFrequency=30
# DataSenderFrequency=1
#server配置
ListenPort=10051
LogFile=/tmp/zabbix_server.log
PidFile=/tmp/zabbix_server.pid
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=123456
DBSocket=/data/mysql/mysql.sock
Timeout=4
LogSlowQueries=3000
StartProxyPollers=5 #被动模式proxy进程数
ProxyConfigFrequency=30 #给proxy发送数据时间
ProxyDataFrequency=1 #proxy多久把数据给到server
-web配置
添加主机和主动模式一样,正常选择代理程序即可,proxy主与被模式不影响agent配置,无需修改agent配置。