【Zabbix技术系列文章】第①篇——基础入门
在当今数字化时代,IT 基础设施的规模和复杂性不断增加,对其进行有效监控变得至关重要。Zabbix 作为一款开源的企业级监控解决方案,凭借其强大的功能、灵活的配置和广泛的适用性,成为了众多企业的首选。本篇文章将从简单介绍和快速部署展开,帮助诸位快速上手体验。
一、Zabbix 是什么
Zabbix 是一个基于 Web 界面的提供分布式系统监视以及网络监视功能的企业级开源解决方案。它可以监控各种网络设备、服务器、应用服务等,收集它们的性能数据,如 CPU 使用率、内存使用情况、网络流量等,并在出现异常时及时发出警报。Zabbix 具有以下特点:
- 多平台支持:支持在 Linux、Windows、Solaris 等多种操作系统上部署。
- 丰富的监控功能:不仅能监控系统硬件,还能对 Web 应用、数据库、中间件等进行监控。
- 灵活的报警机制:支持多种报警媒介,如邮件、短信、即时通讯工具等。
- 强大的可视化功能:提供丰富的图表和仪表盘,直观展示监控数据。
二、安装与部署
本篇文章,演示部署zabbix服务的系统为CengOS7。本篇文章在进行部署时,默认使用一台节点,将 Zabbix Server 和 Zabbix Agent 安装在同一台 CentOS 7 服务器上。这么做便于初学者理解 Zabbix 基础部署流程,快速上手 Zabbix 的安装与配置。后期就会加入其他节点,模拟真实的工作环境。
在安装前,请确保服务器已联网,且时间同步服务(因为监控服务对时间同步的要求比较高,做到及时响应)保证正常运行。
1. 安装 Zabbix Server
添加 Zabbix 官方源
rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/zabbix-release-6.0-1.el7.noarch.rpm
yum clean all
注释:第一行使用rpm -Uvh命令安装 Zabbix 官方源的 rpm 包;第二行清理 yum 缓存,确保后续安装使用最新的软件包信息。
安装 Zabbix Server 和相关依赖:
由于 Zabbix Server 后端数据库推荐使用 MySQL,先安装 MySQL 相关组件:
yum install -y mariadb-server mariadb
systemctl start mariadb
systemctl enable mariadb
注释:第一行安装 MariaDB 数据库服务器和客户端;第二、三行分别启动 MariaDB 服务,并设置开机自启。
随后安装 Zabbix Server 及相关组件:
yum install -y zabbix-server-mysql zabbix-web-mysql zabbix-agent2
注释:此命令安装 Zabbix Server、Zabbix 前端 Web 界面以及 Zabbix Agent2。
配置 MySQL 数据库
首先,为 MySQL 设置 root 密码,并进行安全加固:
mysql_secure_installation
按提示操作,设置密码及其他安全选项。
接着,登录 MySQL:
mysql -u root -p
注释:使用mysql命令以 root 用户身份登录 MySQL 数据库。
创建 Zabbix 数据库和用户:
CREATE DATABASE zabbix CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
CREATE USER 'zabbix'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost';
FLUSH PRIVILEGES;
注释:第一行创建名为zabbix的数据库,并指定字符集和校对规则;第二行创建名为zabbix的用户,并设置密码;第三行授予该用户对zabbix数据库的所有权限;第四行刷新权限,使设置生效。
导入 Zabbix 数据库结构和数据:
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -u zabbix -p zabbix
注释:使用zcat命令解压并将 Zabbix 数据库脚本导入到 MySQL 数据库中。
配置 Zabbix Server
编辑 Zabbix Server 配置文件/etc/zabbix/zabbix_server.conf:
vi /etc/zabbix/zabbix_server.conf
找到并修改以下参数:
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=password
注释:将数据库主机、数据库名、用户名和密码配置为之前设置的值。
配置 Zabbix 前端
编辑 Zabbix 前端配置文件/etc/httpd/conf.d/zabbix.conf,设置时区,找到php_value date.timezone字段,修改为:
php_value date.timezone Asia/Shanghai
注释:将时区设置为上海,确保时间显示正确。
启动 Zabbix Server 和相关服务
systemctl restart zabbix-server zabbix-agent2 httpd
systemctl enable zabbix-server zabbix-agent2 httpd
注释:第一行重启 Zabbix Server、Zabbix Agent2 和 Apache 服务,使配置生效;第二行设置这三个服务在系统启动时自动启动。
2. 安装 Zabbix Agent
添加 Zabbix 官方源(同 Server 步骤)
rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/zabbix-release-6.0-1.el7.noarch.rpm
yum clean all
安装 Zabbix Agent
yum install -y zabbix-agent2
注释:此命令安装 Zabbix Agent2。
配置 Zabbix Agent
编辑 Zabbix Agent 配置文件/etc/zabbix/zabbix_agent2.conf:
vi /etc/zabbix/zabbix_agent2.conf
找到并修改以下参数:
Server=127.0.0.1
ServerActive=127.0.0.1
Hostname=Zabbix server
注释:将 Server 和 ServerActive 设置为 Zabbix Server 的 IP 地址,这里假设 Zabbix Server 和 Agent 在同一台机器上;Hostname 设置为 Zabbix Server 的主机名。
启动 Zabbix Agent
systemctl restart zabbix-agent2
systemctl enable zabbix-agent2
启动 Zabbix Agent
systemctl restart zabbix-agent2
systemctl enable zabbix-agent2
注释:第一行重启 Zabbix Agent,使配置生效;第二行设置 Zabbix Agent 在系统启动时自动启动。
安装完成后,打开浏览器,访问http://服务器IP/zabbix,进入 Zabbix Web 界面。按照向导提示,完成初始化配置,包括选择语言、数据库配置、Zabbix Server 配置等。配置完成后,登录 Zabbix Web 界面,默认用户名是Admin,密码是zabbix。
登录成功后,进入 Zabbix Dashboard。在 “配置” 菜单中选择 “主机”,点击 “创建主机”,填写主机名称、可见名称和 Agent 代理的 IP 地址等信息,将 Zabbix Agent 添加到监控列表中。添加完成后,Zabbix Server 会自动采集 Agent 的监控数据,并在 Dashboard 上展示。