【zabbix5.0部署笔记】6- 分布式监控
作者:互联网
作用
1.分担server的集中式压力
agent > proxy > server
2.多机房之间的网络延时问题
异地机房 > proxy > server
部署分布式zabbix-proxy
1.环境准备
准备至少3台设备
zabbix-server ; zabbix-proxy ; zabbix-agent2
2.测试阶段,关闭防火墙
操作步骤
1.确保自动发现、自动注册已关闭
2.zabbix-server服务端无需变动,正常运行即可
3.准备号客户端 agent2机器
4.配置zabbix-proxy代理服务器,并部署数据库,用于存储agent2发送来的数据,最终发给zabbix-server
#配置zabbix5.0的yum源
rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
#修改源地址为阿里云
sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo
5.安装proxy,以及数据库
yum install zabbix-proxy-mysql zabbix-get -y
6.安装数据库
yum install mariadb-server mariadb -y
7.启动数据库,配置数据库用户,存储zabbix-agent2信息数据
ststemctl start mariadb
#进入mysql
mysql -uroot -p (默认无密码,直接回车)
#创建zabbix_proxy数据库
create database zabbix_proxy character set utf8 collate utf8_bin;
#添加授权 'zabbix账号' 在'zabbix数据库' 下用友所有权限
grant all privileges on zabbix_proxy.* to zabbix@'localhost' identified by 'zabbix';
#刷新授权表
flush privileges;
#退出mysql
quit
8.导入zabbix-proxy数据库信息
#查询yum在安装rpm包时默认放置的路径,查询我们要导入的sql文件的位置
rpm -ql zabbix-proxy-mysql
'''
[root@proxy ~]# rpm -ql zabbix-proxy-mysql
/etc/logrotate.d/zabbix-proxy
/etc/zabbix/zabbix_proxy.conf
/usr/lib/systemd/system/zabbix-proxy.service
/usr/lib/tmpfiles.d/zabbix-proxy.conf
/usr/lib/zabbix/externalscripts
/usr/sbin/zabbix_proxy_mysql
/usr/share/doc/zabbix-proxy-mysql-5.0.11
/usr/share/doc/zabbix-proxy-mysql-5.0.11/AUTHORS
/usr/share/doc/zabbix-proxy-mysql-5.0.11/COPYING
/usr/share/doc/zabbix-proxy-mysql-5.0.11/ChangeLog
/usr/share/doc/zabbix-proxy-mysql-5.0.11/NEWS
/usr/share/doc/zabbix-proxy-mysql-5.0.11/README
/usr/share/doc/zabbix-proxy-mysql-5.0.11/schema.sql.gz #这一条
/usr/share/man/man8/zabbix_proxy.8.gz
/var/log/zabbix
/var/run/zabbix
'''
#导入sql文件到mysql中
zcat /usr/share/doc/zabbix-proxy-mysql-5.0.11/schema.sql.gz | mysql -uzabbix -pzabbix zabbix_proxy
9.修改zabbix-proxy配置文件,链接数据库的信息
sed -i.ori '162a DBPassword=zabbix' /etc/zabbix/zabbix_proxy.conf
sed -i 's#Server=127.0.0.1#Server=192.168.164.132#' /etc/zabbix/zabbix_proxy.conf
sed -i 's#Hostname=Zabbix proxy#Hostname=proxy#' /etc/zabbix/zabbix_proxy.conf
#检查代理服务配置
grep '^[a-Z]' /etc/zabbix/zabbix_proxy.conf
'''
[root@proxy ~]# grep '^[a-Z]' /etc/zabbix/zabbix_proxy.conf
Server=192.168.164.132
Hostname=proxy
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_proxy.pid
SocketDir=/var/run/zabbix
DBPassword=zabbix
DBName=zabbix_proxy
DBUser=zabbix
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
StatsAllowedIP=127.0.0.1
'''
10.启动代理服务
systemctl restart zabbix-proxy
#一个问题,启动没反应
#克隆的设备原来安装了zabbix-server 占用了10051端口,需要卸载掉zabbix-server服务
页面添加代理
创建代理程序
添加被监控客户端
1.修改客户端配置文件
1.客户端修改配置文件,将数据发送到代理服务器
vim /etc/zabbix/zabbix_agent2.conf
#修改以下内容: (将指向的服务器修改为proxy的地址)
Server=192.168.164.133
ServerActive=192.168.164.133
2.重启服务
systemctl restart zabbix-agent2
systemctl restart zabbix-proxy
2.页面上创建主机
SNMP监控
简单网络管理协议
1.服务端安装snmp监控程序
yum install -y net-snmp net-snmp-utils
2.开启snmp配置
#修改配置文件
sed -i.ori '57a view systemview included .1' /etc/snmp/snmpd.conf
systemctl start snmpd.service
3.使用snmp命令
snmpwalk -v 2c -c public 127.0.0.1 sysname
# -v 指定协议版本; -c 指定团体号 ; sysname 是snmp的key
学习视频(B站):https://www.bilibili.com/video/BV1wp4y1x7B3
标签:5.0,usr,zabbix5.0,笔记,etc,zabbix,proxy,mysql,分布式 来源: https://blog.51cto.com/u_14895184/2780982