Zabbix分布式监控

Zabbix分布式网络监控

    • 1.Zabbix监控原理
      • 1.1Zabbix监控原理
      • 1.2常见架构
    • 2.环境准备
    • 3.搭建Zabbix_proxy
    • 4.在Zabbix_server网页上添加代理

1.Zabbix监控原理

1.1Zabbix监控原理

Agentd安装在被监控的主机上,Agent负责定期收集客户端本地各项数据,并发送至Zabbix Server端,Zabbix Server收到数据,将数据存储到数据库中,用户基于Zabbix WEB可以看到数据在前端展现图像。当Zabbix监控某个具体的项目,改项目会设置一个触发器阈值,当被监控的指标超过该触发器设定的阈值,会进行一些必要的动作,动作包括:发送信息(邮件、微信、短信)、发送命令(SHELL 命令、Reboot、Restart、Install等)

1.2常见架构

Server/Agent模式:
Zabbix分布式监控_第1张图片
zabbix-agent模式
Proxy代理模式:
Zabbix分布式监控_第2张图片

2.环境准备

操作系统 角色 ip
Centos7.4 Zabbix_server 192.168.220.30
Centos7.4 Zabbix_proxy 192.168.220.40
Centos7.4 Zabbix_agent 192.168.220.136
  • Zabbix_server基于lamp或lnmp架构。搭建地址:https://blog.csdn.net/weixin_44437026/article/details/87879575.
  • Zabbix_agent不需要lamp或lnmp架构。搭建地址:https://blog.csdn.net/weixin_44437026/article/details/87893237.
  • 将Zabbix_agent配置文件的server配上Zabbix_proxy地址,不开启主动模式

3.搭建Zabbix_proxy

*在192.168.220.40进行一下操作:

//安装mariadb
yum -y install mariadb-server maraiadb-devel
systemctl start mariadb

//创建zabbix用户
useradd zabbix
passwd zabbix

//安装Zabbix_proxy依赖关系
yum -y install  net-snmp-devel curl-devel libevent-devel mysql-devel libcurl-devel libxml2-devel

//编译安装zabbix_proxy(这里是已经下载好的包)
tar xf zabbix-4.4.0.tar.gz
cd zabbix-4.4.0
./configure --prefix=/usr/local/etc/zabbix --enable-proxy --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2
make && make install

//创建zabbix数据库,创建zabbix用户
mysql -uroot -p
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix123!';
flush privileges;
quit

//导入默认zabbix数据库信息(只导入一个文件)
cd /usr/src/zabbix-4.0.4/database/mysql
mysql -uzabbix -pzabbix123! zabbix < schema.sql

//配置Zabbix_proxy配置文件
vim /usr/local/zabbix/etc/zabbix_proxy.conf
Server=192.168.220.30 #同步指向的server端的IP,非本地IP。可以是server端的主机域名,但要确保proxy端解析server的域名,并且网络可达
Hostname=bjproxy #proxy本地的名称,此名称需要与将来在server端的WEB页面上的代理程序名称一致,名称自定义
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_proxy.pid
DBName=zabbix #与上面mysql配置对应
DBUser=zabbix #与上面mysql配置对应
DBPassword=zabbix123! #与上面mysql配置对应
DBPort=3306 #与上面mysql配置对应
ConfigFrequency=120  #主动去server端去拉去配置更新的频率120秒一次
DataSenderFrequency=60  #发送采集的监控数据到服务器端,默认是1秒,我们一分钟发送一次
#roxyLocalBuffer=0        #代理配置文件中的ProxyLocalBuffer和ProxyOfflineBuffer参数控制数据在本地保存多长时间。
StartTrappers=10
StartSNMPTrapper=1 
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log #默认没有这个路径可创建或注释
Timeout=4 
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000

//启动Zabbix_proxy服务(建议用zabbix用户启动)
cd /usr/local/zabbix/sbin
./zabbix_proxy

//验证
查看日志文件/var/log/zabbix/zabbix_proxy.log是否报错


4.在Zabbix_server网页上添加代理

*管理 --> agent代理程序 --> 创建代理
Zabbix分布式监控_第3张图片

  • agent代理程序名称为配置文件的Hostname
  • 代理地址为Zabbix_proxy地址

*配置 --> 主机 --> 创建主机

Zabbix分布式监控_第4张图片

  • 主机名称为Zabbix_agent配置文件Hostname
  • ip地址为Zabbix_agent的ip
  • 最小角改为bjproxy代理。

*验证
Zabbix分布式监控_第5张图片

你可能感兴趣的:(服务)