zabbix简介
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
zabbix由2部分构成,zabbix server与可选组件zabbix agent。
zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。
Zabbix优点:
1 支持分布式监控
3 Web配置方式,操作易用性较好。添加监控项或机器时速度很快。
4 有报警时无论在任何界面会弹出小窗口报警,同时有报警的声音提示,同时可对监控项的快速查看。
5 自带内置函数较为丰富,同时也支持脚本及nagios等脚本的调用。
6 出现问题时,可自动远程执行命令(需对agent设置执行权限)
Zabbix 缺点:
2 深入后,中文资料相当少,大部分问题需看官方的文档及论坛。
3 缺少数据汇总功能,如无法查看一组服务器平均值,可考虑对其进行二次开发。
4 zabbix较cacti来说,画图功能较差些、流量获取较为复杂
一,zabbix proxy 编译安装
分布式架构
Zabbix Server -> Zabbix Proxy -> Zabbix Agent(多台)
Agent的Server白名单要配置Proxy
proxy代理端需要数据库存储
mysql 数据库安装
yum install mariadb-server mariadb mariadb-devel -y
systemctl restart mariadb
systemctl enable mariadb
数据库初始化
root:MysqL ##登陆
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@'127.0.0.1' identified by 'zabbixpwd';
set names utf8;
use zabbix;
source /usr/local/src/zabbix-4.0.3/database/MysqL/schema.sql;
Zabbix Proxy安装
yum install -y tar gcc make gcc-c++ net-snmp-devel libxml2-devel libcurl-devel pcre-devel
useradd -s /sbin/nologin zabbix
cd /usr/local/src/
wget 'https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/4.0.3/zabbix-4.0.3.tar.gz'
tar -zxvf zabbix-4.0.3.tar.gz
cd zabbix-4.0.3
./configure --prefix=/usr/local/zabbix --enable-proxy --enable-agent --with-MysqL --with-net-snmp --with-libcurl --with-libxml2
make && make install
chown -R zabbix:zabbix /usr/local/zabbix/
vim /usr/local/zabbix/etc/zabbix_proxy.conf
Hostname=bjproxy ##主机名
Server=192.168.237.49 ##zabbx server 白名单
LogFile=/usr/local/zabbix/zabbix_proxy.log
DBHost=127.0.0.1
dbname=zabbix
DBUser=zabbix
DBPassword=zabbixpwd
DBPort=3306
ConfigFrequency=60
#启动
Zabbix _Proxy
网页配置 proxy服务器
proxy name 必须 和配置文件里面的hostname 一直
active 是proxy 去请求zabbix server 而passive 是zabbix server 每过一段时间去 请求zabbix server
proxy address 填写proxy 地址
通过proxy 监控主机
这地方选择代理设备 同时自定义添加监控项跟原来一样的
二:zabbix 自动发现和注册
自动发现
自动发现名称,是否通过代理 自动发现,IP段,自动发现更新时间,check 自动发现的key
查看是否 配置成功
自动发现后的动作(添加主机,添加主机组,关联应用模板等)
注意填写发现的条件
发现之后的动作:加入服务器组 关联模板
成后后会在hosts 看到相关主机信息 缺点是主机名设置比较麻烦
自动注册
自动注册相对来说比自动发现好用
使用自动注册的话,添加主机的时候主机名使用Agent配置的Hostname
自动注册流程:
1,zabbix客户端需要配置ServerActive
2,zabbix客户端把自己的元数据提供给zabbix服务器或zabbix分布式proxy
3,zabbix服务器添加动作,当收到元数据时候自动添加主机、链接模板等
agent客户端配置
PidFile=/usr/local/zabbix/zabbix_agentd.pid
LogFile=/usr/local/zabbix/zabbix_agentd.log
Hostname=www_001 ## 于主机名保持一致
Server=192.168.237.50 ## 有proxy 填写proxy地址 没有代理填写server地址
ServerActive=192.168.237.50 ## 有proxy 填写proxy地址 没有代理填写server地址
UnsafeUserParameters=1
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf
HostMetadataItem=system.uname ##元数据
添加元数据来源 填写计算机名匹配 如图:开头计算机名是www_ 都会自动注册添加
有proxy 添加proxy
添加部署注册后的动作
验证