分布式监控
zabbix server端监控到大量zabbix agent端,这样会使zabbix server端压力过大,使用zabbix proxy进行分布式监控
服务器安装分布式监控
安装工具
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm# yum clean all
yum install zabbix-proxy-mysql
安装mysql
下载yum源的rpm包
yum install -y https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm
永久修改下载版本
yum -y install yum-utils //安装工具
yum-config-manager --disable mysql80-community //关闭8.0
yum-config-manager --enable mysql57-community //打开5.7
安装mysql
yum -y groupinstall "Development Tools"
yum -y install mysql-community-server
systemctl start mysqld //首次启动初始化mysql
修改密码策略
echo "validate-password=off" >> /etc/my.cnf
systemctl restart mysqld
修改密码
grep "password" /var/log/mysqld.log //日志中查找初始密码
mysqladmin -p'旧密码' password '0'
mysql -uroot -p0
mysql> create database zabbix_proxy character set utf8 collate utf8_bin;
mysql> create user zabbix@localhost identified by 'password';
mysql> grant all on zabbix_proxy.* to 'zabbix'@'%' identified by '0';
mysql> flush privileges;
mysql> set global log_bin_trust_function_creators = 1;
mysql> quit;
导入数据结构
zcat /usr/share/doc/zabbix-proxy-mysql*/schema.sql.gz | mysql -uzabbix -p0 zabbix_proxy
mysql -uroot -p0
mysql> set global log_bin_trust_function_creators = 0;
配置proxy端
vim /etc/zabbix/zabbix_proxy.conf
# 修改一下内容
ProxyMode=1 # 0为主动 1为被动
Server=服务端ip地址
SourceIP=proxy的ip
Hostname=zbxproxy.along.com #主机名
ListenPort=10051 #proxy自己的监听端口
EnableRemoteCommands=1 #允许远程命令
LogRemoteCommands=1 #记录远程命令的日志
数据的配置
DBHost=数据库地址
DBName=zabbix_proxy
DBUser=zabbix
DBPassword=zbxproxypass
ConfigFrequency=30 #多长时间,去服务端拖一次有自己监控的操作配置;为了实验更快的生效,这里设置30秒,默认3600s
DataSenderFrequency=1 #每一秒向server 端发一次数据,发送频度
systemctl start zabbix-proxy //启动zabbix-proxy
客户端更改配置文件
vim /etc/zabbix/zabbix_agentd.conf
Server=10.12.153.171 //服务端ip,被多台服务器监控ip用,隔开
ServerActive=10.12.153.171 //服务端ip,被多台服务器监控ip用,隔开
Hostname=client //客户端主机名
浏览器配置
这个时候创建主机就可以选择proxy端
选择刚刚创建的agent代理程序