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

【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.mrgr.cn/news/96285.html

相关文章:

  • Selenium Web自动化如何快速又准确的定位元素路径,强调一遍是元素路径
  • rent8_wechat-新增提醒收租功能
  • SQL优化 | OceanBase是否遵循最左匹配原则?(三)
  • [异步监听事件、异步绑定属性]通过vue的this.$refs.组件.$props和.$on实现异步绑定组件属性和事件监听
  • Kubernetes》k8s》Containerd 、ctr 、cri、crictl
  • Redis:Hash 类型 内部实现、命令及应用场景
  • Redis:List 类型 内部实现、命令及应用场景
  • Java中的异常1
  • Go服务开发高手课(极客讲堂)
  • 一文详解k8s体系架构知识
  • 深入理解 dispatchEvent:前端事件触发的艺术
  • Audacity Nyquist插件开发:插件标头详解
  • MySQL基础语法DDLDML
  • 【Linux】进程的详讲(上)
  • 为AI聊天工具添加一个知识系统 之154:理论框架、工程方案及两者的结合架构
  • Qwen2.5-VL实现本地AWQ量化
  • 一些需要学习的C++库:CGAL和Eysshot
  • Spring学习笔记05——Spring Boot的文件结构2(POJO类)
  • C语言学习笔记(抱佛脚版)
  • StarRocks 中 CURRENT_TIMESTAMP 和 CURRENT_TIME 分区过滤问题