Zabbix+Grafana部署手册


xiaoxiaosun
小小孙 发布于 2025-03-31 / 45 阅读 / 0 评论 /
一、Zabbix与grafana概述 1.1.1Zabbix简介 zabbix是一个监控软件,其可以监控各种网络参数,保证企业服务架构安全运营,同时支持灵活的告警机制,可以使得运维人员快速定位故障、解决问题。zabbix支持分布式功能,支持复杂架构下的监控解决方案,也支持web页面,为主机监控提供了

一、Zabbix与grafana概述

1.1.1Zabbix简介

zabbix是一个监控软件,其可以监控各种网络参数,保证企业服务架构安全运营,同时支持灵活的告警机制,可以使得运维人员快速定位故障、解决问题。zabbix支持分布式功能,支持复杂架构下的监控解决方案,也支持web页面,为主机监控提供了良好直观的展现。

zabbix主要由以下5个组件构成:

1、Server

zabbix server是zabbix的核心组件,server内部存储了所有的配置信息、统计信息和操作信息。zabbix agent会向zabbix server报告可用性、完整性及其他统计信息。

2、web页面

web页面也是zabbix的一部分,通常和zabbix server位于一台物理设备上,但是在特殊情况下也可以分开配置。web页面主要提供了直观的监控信息,以方便运维人员监控管理。

3、数据库

zabbix数据库内存储了配置信息、统计信息等zabbix的相关内容。

4、proxy

zabbix proxy可以根据具体生产环境进行采用或者放弃。如果使用了zabbix proxy,则其会替代zabbix server采集数据信息,可以很好的分担zabbix server的负载。zabbix proxy通常运用与架构过大、zabbix server负载过重,或者是企业设备跨机房、跨网段、zabbix server无法与zabbix agent直接通信的场景。

5、Agent

zabbix agent通常部署在被监控目标上,用于主动监控本地资源和应用程序,并将监控的数据发送给zabbix server。

1.1.2Grafana概述

Grafana 是一个开源的监控数据分析和可视化套件。最常用于对基础设施和应用数据分析的时间序列数据进行可视化分析,也可以用于其他需要数据可视化分析的领域。Grafana 可以帮助你查询、可视化、告警、分析你所在意的指标和数据。可以与整个团队共享,有助于培养团队的数据驱动文化。

Grafana 的特点:

可视化:快速和灵活的客户端图形具有多种选项。面板插件为许多不同的方式可视化指标和日志

报警:可视化地为最重要的指标定义警报规则。Grafana 将持续评估它们,并发送通知

通知:警报更改状态时,它会发出通知。接收电子邮件通知

动态仪表盘:使用模板变量创建动态和可重用的仪表板,这些模板变量作为下拉菜单出现在仪表板顶部

混合数据源:在同一个图中混合不同的数据源!可以根据每个查询指定数据源。这甚至适用于自定义数据源

注释:注释来自不同数据源图表。将鼠标悬停在事件上可以显示完整的事件元数据和标记

过滤器:过滤器允许您动态创建新的键/值过滤器,这些过滤器将自动应用于使用该数据源的所有查询

二、环境准备

本次实验均采用虚拟机进行安装,环境准备:

Centos 8.5

Zabbix :6.0.2 TLS版本

网址:https://www.zabbix.com/cn/

PostgreSQL:14

网址:https://www.postgresql.org/

TimescaleDB:2.6.1

网址:https://docs.timescale.com/

Grafana:8.2.0-1

网址:https://grafana.com/

三、Zabbix安装与注意事项

3.1 Centos8.5安装

安装步骤略过

3.1.1 关闭防火墙与selinux

命令:systemctl disable firewalld.service --now

sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config

3.1.2 配置yum仓库并初始化

Yum仓库使用阿里云的centos8的仓库

先将源仓库的repo文件移动到/home目录下

从阿里下一个镜像使用

命令:

wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo

并将系统进行更新

Yum update -y

3.2 下载Zabbix yum源与安装

命令:

Rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/8/x86_64/zabbix-release-6.0-2.el8.noarch.rpm

获取zabbix镜像源

使用

dnf install zabbix-server-pgsql zabbix-web-pgsql zabbix-apache-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent

安装zabbix组件

3.3 安装postgresql数据库

使用命令:

dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm

关闭内核自带的postgresql

dnf -qy module disable postgresql

安装postsql

dnf install -y postgresql14-server

完成后进行初始化和启动服务

/usr/pgsql-14/bin/postgresql-14-setup initdb

systemctl enable postgresql-14

systemctl start postgresql-14

3.4时序数据库安装

获取timedb仓库源

命令:

tee /etc/yum.repos.d/timescale_timescaledb.repo <<EOL

[timescale_timescaledb]

name=timescale_timescaledb

baseurl=https://packagecloud.io/timescale/timescaledb/el/$(rpm -E %{rhel})/\$basearch

repo_gpgcheck=1

gpgcheck=0

enabled=1

gpgkey=https://packagecloud.io/timescale/timescaledb/gpgkey

sslverify=1 sslcacert=/etc/pki/tls/certs/ca-bundle.crt metadata_expire=300

EOL

使用命令:

yum install timescaledb-2-postgresql-14 -y

初始化并启动

/usr/pgsql-14/bin/postgresql-14-setup initdb

systemctl enable postgresql-14

systemctl start postgresql-14

3.5 创建zabbix数据库及用户

命令:

sudo -u postgres createuser --pwprompt zabbix

sudo -u postgres createdb -O zabbix zabbix

导入初始架构和数据,系统将提示您输入新创建的密码

zcat /usr/share/doc/zabbix-sql-scripts/postgresql/server.sql.gz | sudo -u zabbix psql zabbix

为Zabbix数据库启用TimescleDB插件

echo "CREATE EXTENSION IF NOT EXISTS timescaledb CASCADE;" | sudo -u postgres psql zabbix

Tips:启动插件时会报错

解决办法:

echo "shared_preload_libraries = 'timescaledb'" >> /var/lib/pgsql/14/data/postgresql.conf

systemctl restart postgresql-14

再次输入刚命令即可

3.6 修改zabbix配置文件并启动相关服务

使用:

vim /etc/zabbix/zabbix_server.conf

修改

DBPassword=******

启动服务

systemctl restart zabbix-server zabbix-agent httpd php-fpm

systemctl enable zabbix-server zabbix-agent httpd php-fpm

3.7 登录Zabbix界面

网址: http://IP地址/zabbix

用户:Admin

密码:zabbix

没有中文版,我们需要安装一个中文插件

dnf install langpacks-zh_CN glibc-langpack-zh.x86_64 -y

zabbix安装完成!

四、Grafana安装

4.1 Grafana安装包

获取安装包

wget https://dl.grafana.com/oss/release/grafana-8.2.0-1.x86_64.rpm

yum -y install grafana-8.2.0-1.x86_64.rpm

启动grafana服务

systemctl daemon-reload

systemctl start grafana-server.service

systemctl enable grafana-server.service

查看端口3000是否存在(grafana使用的3000端口)

ss -anlt|grep *:3000

安装zabbix插件

grafana-cli plugins list-remote

grafana-cli plugins install alexanderzobnin-zabbix-app

service grafana-server restart

4.2 Grafana登录

登录方式: http://IP地址:3000

用户名:admin

密码:admin

Grafana安装完成!

五、Grafana加载Zabbix插件

5.1 Grafana zabbix插件

第一步:

第二步:

第三步:

第四步:

第五步:

保存并测试

第六步:添加监控项

Grafana与zabbix完成!!!

六、zabbix+grafana添加交换机监控项

本次添加的交换机采用HCL模拟交换机。

6.1 交换机配置命令

网络打通后配置SNMP

#进入系统视图

<H3C>sys

Enter system view, return user view with Ctrl+Z.

#关闭烦人的提示

[H3C]un in en

Info: Information center is disabled.

#开启snmp-agent

[H3C]snmp-agent

#配置snmp的团体名称为test,只读权限

[H3C]snmp-agent community read test

[H3C]snmp-agent sys-info version ?

all Enable the device to support SNMPv1, SNMPv2c and SNMPv3

v1 Enable the device to support SNMPv1

v2c Enable the device to support SNMPv2c

v3 Enable the device to support SNMPv3

#指定snmp的版本为v2

[H3C]snmp-agent sys-info version v2c

6.2 服务器安装snmp 软件

命令:dnf install net-snmp net-snmp-utils -y

Vim /etc/snmp/snmpd.conf

修改配置文件 vim /etc/snmp/snmpd.conf

添加 view systemview included .1

启动 服务

systemctl start snmpd

systemctl enable snmpd

测试: snmpwalk -v 2c -c 团体名 x.x.x.x

这种就是监控到了,后面就是在zabbix界面配置

6.3 zabbix+grafana界面配置

先导入一个H3C交换机模板

添加主机

创建主机

在interface下点击添加,输入IP地址和版本号,以及团体名称,上图的团体名称用自己设置的团体字。端口为161(默认)不用管。

填写完毕后,不要急着点添加提交,选择【宏】,设置

设置宏

点击自动发现

返回查看 监控项已完成

Grafana界面配置

完成!

6.4 修改zabbix字体

首先win+R 搜索 fonts

然后随便复制了一个字体,传到zabbix服务器里

要将TTC 改成TTF选一个就好

将其中一个文件上传到服务器

使用命令:cd /usr/share/zabbix/assets/fonts/

使用 mv /root/传的文件名 graphfont.ttf //覆盖掉源文件

登录zabbix查看

修改完成,字体附件,如下:



是否对你有帮助?

评论