当前位置: 首页 > article >正文

【Zabbix技术系列文章】第①篇——基础入门

        在当今数字化时代,IT 基础设施的规模和复杂性不断增加,对其进行有效监控变得至关重要。Zabbix 作为一款开源的企业级监控解决方案,凭借其强大的功能、灵活的配置和广泛的适用性,成为了众多企业的首选。本篇文章将从简单介绍和快速部署展开,帮助诸位快速上手体验。

一、Zabbix 是什么​

Zabbix 是一个基于 Web 界面的提供分布式系统监视以及网络监视功能的企业级开源解决方案。它可以监控各种网络设备、服务器、应用服务等,收集它们的性能数据,如 CPU 使用率、内存使用情况、网络流量等,并在出现异常时及时发出警报。Zabbix 具有以下特点:​

  1. 多平台支持:支持在 Linux、Windows、Solaris 等多种操作系统上部署。​
  2. 丰富的监控功能:不仅能监控系统硬件,还能对 Web 应用、数据库、中间件等进行监控。​
  3. 灵活的报警机制:支持多种报警媒介,如邮件、短信、即时通讯工具等。​
  4. 强大的可视化功能:提供丰富的图表和仪表盘,直观展示监控数据。

二、安装与部署

本篇文章,演示部署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 上展示。


http://www.kler.cn/a/613969.html

相关文章:

  • 宝塔面板面试内容整理-常见宝塔面板版本
  • 【vue】vue + vant实现上传图片添加水印
  • 使用matlab进行分位数回归
  • 基于Vue的低代码可视化表单设计器 FcDesigner 3.2.11更新说明
  • 机器学习和深度学习的关系
  • 自动化逆向框架使用(Objection+Radare2)
  • Manus:通用智能体的架构革命与产业破局
  • 记一次系统单点登录、模拟web系统登录方式的开发过程,使用AES加密
  • Arduino、ESP32驱动GUVA-S12SD UV紫外线传感器(光照传感器篇)
  • C 标准库 – 头文件
  • git_merge
  • 12_JavaScript_实现日期
  • 21.Excel自动化:如何使用 xlwings 进行编程
  • 大模型——使用Ollama本地部署Gemma-3-27B大模型,基于LangChain分析PDF文档
  • 解决“Generic family ‘sans-serif‘ not found”问题
  • ansible介绍以及安装
  • 【Golang】补充:占位符、转义字符、错误处理
  • Rust 面向对象
  • 基于Zookeeper的微服务配置管理与灰度发布实战指南
  • Elasticsearch:理解政府中的人工智能 - 应用、使用案例和实施