介绍

引用百度百科

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等平台上。

安装

这里我用的机器是阿里云采购的 ECS,系统版本如下
监控工具 zabbix 实践 - 图1
使用的 zabbix 为目前最新版本,zabbix5.0,使用二进制包安装,数据库使用的位 mysql5.7。
监控工具 zabbix 实践 - 图2

安装repository

  1. rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
  2. yum clean all

安装 zabbix server 和 agent

yum install zabbix-server-mysql zabbix-agent

由于网络问题, yum 下载慢上述命令可能会报错
监控工具 zabbix 实践 - 图3
在服务器外部将 rpm 包下载好后上传至服务器进行安装
监控工具 zabbix 实践 - 图4

# 通过本地二进制包安装
yum install ./zabbix-* -y

安装 zabbix frontend

# 开启Red Hat Software Collections
yum install centos-release-scl
# 编辑 /etc/yum.repos.d/zabbix.repo
[zabbix-frontend]
...
enabled=1
...
# 安装 frontend package
yum install zabbix-web-mysql-scl zabbix-nginx-conf-scl

这个步骤会有zabbix-web-5.0.2-1.el7.noarch.rpm下载失败的情况出现,这里也是服务器外部下载好上传至服务器安装。

无法下载的 rpm 包链接: https://pan.baidu.com/s/1iZczDNB-4Sz52bUbPMowNw 密码: ovr8

创建初始化数据库

这里安装 mysql 服务就省略了,按照官网文档或者搜索引擎上有很多教程。

#登陆数据库
mysql -uroot -p
# 创建数据库
create database zabbix character set utf8 collate utf8_bin;
# 创建用户
 create user zabbix@localhost identified by 'password';
# 赋权
grant all privileges on zabbix.* to zabbix@localhost;
# 退出 mysql 命令行
quit;

数据库创建完成后初始化数据库

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix

等待 1 分钟左右即可,查询数据库中部分表如下:
监控工具 zabbix 实践 - 图5

配置

为 zabbix server 配置数据库

编辑/etc/zabbix/zabbix_server.conf

# password 修改为自己设置的密码
DBPassword=password

监控工具 zabbix 实践 - 图6
如用户名、数据库名、数据库地址不一样也需要修改配置

为 zabbix frontend 配置 PHP

编辑/etc/opt/rh/rh-nginx116/nginx/conf.d/zabbix.conf
将图示这两行注释去掉,server_name 改成自己的域名或者服务器 ip
监控工具 zabbix 实践 - 图7
编辑/etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf,在listen.acl_users行添加 nginx,并修改正确时区
监控工具 zabbix 实践 - 图8

启动 server 和 agent

# 启动
systemctl restart zabbix-server zabbix-agent rh-nginx116-nginx rh-php72-php-fpm
# 设置开机自启
systemctl enable zabbix-server zabbix-agent rh-nginx116-nginx rh-php72-php-fpm

访问服务

通过 ip 或者域名(前面配置的 server_name)访问
初始化页面
监控工具 zabbix 实践 - 图9
环境监测
监控工具 zabbix 实践 - 图10
数据库配置
监控工具 zabbix 实践 - 图11
设置服务名称
监控工具 zabbix 实践 - 图12
检查配置
监控工具 zabbix 实践 - 图13
安装完成
监控工具 zabbix 实践 - 图14
首次登陆
初始账号 Admin,初始密码zabbix(登陆之后第一时间修改密码)
监控工具 zabbix 实践 - 图15
修改语言(非必须)
监控工具 zabbix 实践 - 图16

至此,安装已完成,下面配置一个简单的监控。

配置监控

刚进入会有一个主机了,这个是 zabbix 服务器所在的主机,现在准备新建一个主机。
监控工具 zabbix 实践 - 图17

在新主机上安装 agent

下载zabbix-agent-5.0.2-1.el7.x86_64.rpm,上面的百度网盘的链接,上传至服务器
安装 agent

yum install zabbix-agent-5.0.2-1.el7.x86_64.rpm

配置 agent

vi /etc/zabbix/zabbix_agentd.conf

…
Server=172.16.177.24 #zabbix-server端IP
…
ServerActive=Server=172.16.177.24  #zabbix-server端IP
…
Hostname= swq_aliyun #主动模式IP要一致

web端配置

添加主机
监控工具 zabbix 实践 - 图18
添加配置模板
监控工具 zabbix 实践 - 图19
监控工具 zabbix 实践 - 图20
添加成功后即可看到数据
监控工具 zabbix 实践 - 图21
监控工具 zabbix 实践 - 图22
表格字体乱码可在服务器上安装黑体即可解决。
至此,zabbix 安装及简单配置已完成,zabbix 功能很强大,更多的配置需要自己去摸索。