一、zabbix 简介
1、概念:
Zabbix 是一个开源的网络监控系统,用于监视和管理计算机系统、网络和应用程序的性能和可用性。它提供了广泛的监控、警报、数据收集和可视化功能,能够有效地监测和管理大规模的IT基础设施。
2、监控对象:
(1) 服务器硬件资源:
CPU使用率
内存使用率
磁盘空间使用率
网络接口流量(入口和出口)
硬盘I/O性能
(2) 操作系统:
系统负载
进程状态
系统日志事件(错误、警告等)
用户登录和活动
定时任务执行状态
(3) 数据库:
数据库连接数
数据库表空间使用率
主从复制状态
(4) Web服务器和应用服务器:
请求响应时间
并发连接数
各种HTTP状态码的统计
Web应用程序性能指标
(5) 网络设备:
路由器和交换机的端口状态
带宽使用率
路由表状态
(6) 虚拟化平台:
虚拟机状态和性能
宿主机资源利用率
虚拟化平台事件和警报
3、监控收集信息模式
(1) 被动模式:
监控对象(例如服务器或网络设备)被动地将故障信息发送到 Zabbix 服务器或代理程序。
优点:占用资源少 ;缺点:及时性差
(2) 主动模式:
Zabbix 服务器或代理程序定期发起连接并查看业务状态。
优点:及时性好 ;缺点:占用资源多
二、zabbix 部署
1、监控端部署(192.168.198.132)
(1) 安装Zabbix软件包(Installing Zabbix packages)
zabbix 官网:Zabbix Manual
zabbix 安装文档:Download and install Zabbix
① 准备 zabbix-repo:
使用阿里提供的 zabbixYum源:
vim /etc/yum.repos.d/zabbix.repo
编写 zabbix 及 zabbix 前端界面的配置信息
[zabbix]
name=alibaba zabbix
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/
gpgcheck=0
enabled=1
[zabbix2]
name=alibaba zabbix frontend
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/frontend/
gpgcheck=0
enabled=1
② 安装 zabbix 服务器和代理器:
yum install -y zabbix-server-mysql zabbix-agent
● zabbix-server-mysql: Zabbix 监控系统的服务器组件,通常与 MySQL 数据库一起使用来存储监控数据和配置信息。
● zabbix-agent: Zabbix 监控系统的代理组件,它可以在监控客户端上运行,收集并发送监控数据到 Zabbix 服务器。
③ 安装插件和 zabbix 前台页面:
yum install -y centos-release-scl
yum install -y zabbix-web-mysql-scl zabbix-apache-conf-scl
(2) 创建初始数据库(creating initial database)
① 安装并启动数据库:
yum -y install mariadb mariadb-server
systemctl enable mariadb
systemctl start mariadb
② 授权 zabbix 账号:
创建账号、密码:create user zabbix@localhost identified by '666';
授权:grant all privileges on zabbix.* to zabbix@localhost;
③ 初始化 zabbix 数据库:
zcat /usr/share/doc/zabbix-server-mysql-5.0.38/create.sql.gz | mysql -uzabbix -p'666' zabbix
这个命令的作用是解压 SQL 脚本文件,然后将其中的 SQL 命令传递给名为 zabbix 的数据库中,以创建 Zabbix 监控系统所需的表格和结构。
(3) 启动zabbix服务器进程(starting zabbix server procress)
① 在 zabbix 配置文件中配置 sql 账号密码:
vim /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBPassword=666
( DBName=zabbix 、DBUser=zabbix 这两处系统已配置)
② 编辑 PHP 配置:
vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
修改时区为上海
php_value[date.timezone] = Asia/Shanghai
(4) 启动 zabbix:
systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm
zabbix 页面:
管理员登录:用户名:Admin ;默认密码:zabbix
2、代理器部署(192.168.198.130)
Zabbix Agent(Zabbix代理)是一个轻量级的客户端程序,安装在要监控的目标主机上,用于收集主机上的各种系统资源和性能数据,并将这些数据发送到Zabbix 服务器以进行监控和分析。
(1) 安装 zabbix-agent:
官方文档:Download Zabbix agents
① 修改主机名:hostname web1
② 从 zabbix 监控端拷入 zabbix.repo
scp 192.168.198.132:/etc/yum.repos.d/zabbix.repo /etc/yum.repos.d/
yum -y install zabbix-agent
(2) 配置主服务器地址:
vim /etc/zabbix/zabbix_agentd.conf
Server=192.168.198.132 (被动模式)
ServerActive=192.168.198.130 (主动模式)
Hostname=web1
(3) 启动 zabbix-agent
systemctl enable zabbix-agent
systemctl start zabbix-agent
● 测试监控效果:
监控器通过 zabbix_get 收集客户端数据
zabbix_get 是 Zabbix 监控系统提供的一个命令行工具,用于从 Zabbix 服务器或 Zabbix 代理获取监控数据的工具。
zabbix_get -s 代理器地址 -k 监控项参数