📊Grafana 从零上手:安装部署、仪表盘导入导出及插件安装完整指南

参考链接


一、什么是 Grafana?

简单来说,Grafana 是一个开源的数据可视化和分析平台。它就像一个超级强大的 "画图工具",能把各种来

源的枯燥数据,变成漂亮、直观的图表和仪表盘。

二 为什么选择 Grafana?

  • 多数据源支持:可以连接 Prometheus、MySQL、PostgreSQL、Elasticsearch 等 170+ 种数据源

  • 丰富的图表类型:折线图、柱状图、饼图、热力图、仪表盘等应有尽有

  • 灵活的告警系统:当数据异常时,自动通过邮件、钉钉、企业微信等方式通知你

  • 强大的社区:有海量的官方和社区仪表盘模板,直接导入就能用

  • 开源免费:核心功能完全免费,个人和企业都可以放心使用

三、环境准备与安装

3.1 选择你的操作系统

以下命令均在 root 或有 sudo 权限的用户下执行。

✅ Ubuntu / Debian(使用 apt)

# 安装必要的依赖
sudo apt-get install -y software-properties-common wget

# 导入 Grafana GPG 密钥
sudo wget -q -O /usr/share/keyrings/grafana.key https://apt.grafana.com/gpg.key

# 添加稳定版仓库
echo "deb [signed-by=/usr/share/keyrings/grafana.key] https://apt.grafana.com stable main" | sudo tee /etc/apt/sources.list.d/grafana.list

# 更新并安装 OSS 版(完全开源免费)
sudo apt-get update
sudo apt-get install -y grafana

✅ CentOS / RHEL / RockyLinux(使用 yum)

# 创建 repo 文件
sudo tee /etc/yum.repos.d/grafana.repo <<EOF
[grafana]
name=grafana
baseurl=https://packages.grafana.com/oss/rpm
repo_gpgcheck=1
enabled=1
gpgcheck=1
gpgkey=https://packages.grafana.com/gpg.key
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
EOF

# 安装
sudo yum install -y grafana

✅ 通用二进制包(任何 Linux 发行版)

如果不想用包管理器,也可以直接下载解压运行:

# 1. 下载 Grafana 13.0.0 二进制包
wget https://dl.grafana.com/oss/release/grafana-13.0.0.linux-amd64.tar.gz

# 2. 解压到 /usr/local 目录
tar -zxf grafana-13.0.0.linux-amd64.tar.gz -C /usr/local/
mv /usr/local/grafana-13.0.0 /usr/local/grafana

# 3. 创建专用用户(安全起见,不要用 root 运行)
useradd -r -s /sbin/nologin grafana

# 4. 创建数据和日志目录,并设置权限
mkdir -p /var/lib/grafana /var/log/grafana
chown -R grafana:grafana /usr/local/grafana /var/lib/grafana /var/log/grafana

# 5. 创建 systemd 服务文件
cat > /etc/systemd/system/grafana-server.service <<EOF
[Unit]
Description=Grafana Server
Documentation=https://grafana.com/docs/
After=network.target

[Service]
User=grafana
Group=grafana
Type=simple
WorkingDirectory=/usr/local/grafana

ExecStart=/usr/local/grafana/bin/grafana-server \
  --config=/usr/local/grafana/conf/defaults.ini \
  --homepath=/usr/local/grafana \
  --data=/var/lib/grafana \
  --logs=/var/log/grafana

Restart=on-failure
RestartSec=5
LimitNOFILE=65535

StandardOutput=journal
StandardError=journal

[Install]
WantedBy=multi-user.target
EOF

生产环境推荐使用系统包方式,因为它会自动创建 grafana 用户、systemd 服务单元。

3.2 启动 Grafana 服务

对于 apt / yum 安装的版本:

# 重载 systemd 配置
sudo systemctl daemon-reload

# 启动 Grafana 服务
sudo systemctl start grafana-server

# 设置开机自启
sudo systemctl enable grafana-server

# 查看状态(确保 Active: active (running))
sudo systemctl status grafana-server

如果使用二进制包手动运行,可以按 Ctrl+C 停止;建议还是通过 nohup 或编写 systemd 文件管理。

3.3 验证服务端口

Grafana 默认监听 3000 端口:

sudo netstat -tlnp | grep 3000

如果云服务器有防火墙,请放行 3000 端口(例如 sudo ufw allow 3000 或云控制台安全组规则)。

四、首次登录与配置

打开浏览器访问 http://你的服务器IP:3000(本机则访问 http://localhost:3000)。

  • 用户名admin

  • 密码admin

系统会强制要求修改密码,输入新密码后点击 Submit

⚠️ 如果无法访问,检查防火墙是否开放 3000 端口,以及 Grafana 服务是否绑定在 0.0.0.0(默认即如此)。

五、使用mysql存储(可选)

5.1 安装mysql

5.2 修改grafana配置

5.2.1 创建grafana用户和grafana库

# 登录客户端
mysql -uroot -p
密码:123456

# 创建数据库
CREATE DATABASE IF NOT EXISTS grafana default charset utf8 COLLATE utf8_general_ci;

# 创建用户并授权
grant all  on grafana.* to 'grafana'@'192.168.182.%' identified by '123456';

5.2.2 修改grafana配置

配置文件: /etc/grafana/grafana.ini

[database]
type = mysql
host = 192.168.182.110:3306
name = grafana
user = grafana
password = 123456
# 也可以直接配置url
# url = mysql://grafana:grafana@192.168.182.110:3306/grafana

重启grafana

systemctl restart grafana-server

六、配置数据源(Data sources)

Grafana 不自带数据存储,需先配置数据源。

6.1 配置prometheus 数据源

前面我们已经部署了prometheus了,所以可以把prometheus数据源加进来。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.2 配置mysql 数据源

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

七、配置监控面板(Dashboard)

7.1 新建仪表盘

  1. 左侧边栏点击 四个方块图标(Dashboards)

  2. 点击 NewNew Dashboard

  3. 点击 + Add visualization

7.2 选择数据源与查询

  • 在数据源选择框中点选 Prometheus

  • 下方查询区域(Query A)Code 或 Builder根据自己的喜好选择

  • PromQL:node_cpu_seconds_total

7.3 调整图表外观

  • 右侧 Panel options → 修改 Title我的第一条监控曲线
  • 点击右上角 Refresh 图标(或按键盘 R 键)

此时,图表区域会显示动态曲线。恭喜!你的第一个 Grafana 可视化就完成了。
image

7.4 保存与分享仪表盘

  1. 点击右上角 磁盘图标(Save)

  2. 输入仪表盘名称,例如 我的第一个仪表盘

  3. 点击 Save

保存后,你可以在 DashboardsBrowse 中找到它,随时再次打开查看。

八、常见问题与小贴士

8.1 忘记密码怎么办?

# 重置 admin 密码(替换为 grafana-cli 命令)
sudo grafana-cli admin reset-admin-password newpassword

8.2 如何修改默认端口?

编辑配置文件 /etc/grafana/grafana.ini(apt/yum 安装的路径):

[server]
http_port = 8080

修改后执行 sudo systemctl restart grafana-server

8.3 日志文件位置

  • systemd 日志:sudo journalctl -u grafana-server -f

  • 文件日志(默认):/var/log/grafana/grafana.log

8.4 权限管理

  • Admin 管理员:拥有所有权限

  • Editor 编辑者:可以创建和修改仪表盘

  • Viewer 查看者:只能查看仪表盘

  • 团队:按团队划分权限,隔离不同业务线

九、仪表盘导入 —— 站在巨人的肩膀上

9.1 寻找合适的仪表盘模板

访问 Grafana 官方仪表盘市场,你可以按数据源(Prometheus、MySQL、Loki 等)或用途(Linux 服务器监控、Nginx、Kubernetes)筛选。

例如,搜索 “Node Exporter Full” 会找到一个非常流行的 Linux 主机监控仪表盘,ID 为 1860。我们以它为例演示导入过程。

注意:导入的仪表盘通常需要匹配你实际的数据源。如果你当前只有 TestData,建议选择一个通用模板,或者稍后换成真实数据源。本文仅演示导入流程,你可以选择一个简单的面板如 “TestData 演示仪表盘”。

image

9.2 通过 ID 导入仪表盘

  1. 登录 Grafana,鼠标悬停左侧 Dashboards(四个方块图标) → 点击 Browse

  2. 点击右侧蓝色 New 按钮 → 选择 Import
    image

  3. 在 “Import via grafana.com” 输入框中填入仪表盘 ID(例如 1860),点击 Load

  4. Grafana 会显示该仪表盘的基本信息,你需要选择一个数据源:

    • 如果提示 Prometheus,但你没有安装,可以临时选择 TestData(部分图表可能无法正常显示)
    • 点击 Import
  5. 导入成功后,会自动跳转到新仪表盘页面,你就可以看到预先设计好的图表布局。

image

9.3 通过 JSON 文件导入

如果你从网上下载了一个 .json 文件,或者同事分享了一段 JSON 配置:

  1. 在 Import 页面,点击 Upload JSON file 按钮

  2. 选择本地的 JSON 文件,或直接粘贴 JSON 内容到文本框

  3. 同样需要选择或配置数据源映射

  4. 点击 Import

9.4 小技巧:导入前检查数据源

很多社区仪表盘硬编码了数据源名称(如 PrometheusDS_PROMETHEUS)。如果你的数据源叫别的名字,可以在导入时修改 “Name” 对应的数据源下拉框,或者在导入后进入仪表盘设置 → Variables 中修改变量的数据源。

9.5 仪表盘导出 —— 分享你的成果

当你精心设计了一个仪表盘,想要备份或分享给同事,可以导出为 JSON 文件。

操作步骤

  1. 打开你要导出的仪表盘

  2. 点击右上角的 齿轮图标(Settings)

  3. 选择左侧菜单的 JSON Model

  4. 点击 Download JSON 按钮,或者全选 JSON 内容复制粘贴保存

导出的 JSON 包含了面板定义、查询、变量、布局等全部信息,但不包含数据源的具体连接密码(只会保留数据源名称引用)。

十、插件安装 —— 让 Grafana 更强大

Grafana 插件分为三类:

  • 面板(Panel)插件:增加新的图表类型(如 Worldmap、Clock、Pie Chart)

  • 数据源(DataSource)插件:连接新的数据系统(如 Zabbix、ClickHouse、Jaeger)

  • 应用(App)插件:打包了完整功能(如企业监控套件)

10.1 使用 grafana-cli 安装插件

因为我们是采用系统包(apt/yum)安装的 Grafana,所以官方提供了 grafana-cli 命令行工具。

基本语法

bash

sudo grafana-cli plugins install <plugin-id>

插件 ID 可以在 Grafana 插件官网 找到。例如:

  • grafana-clock-panel – 时钟面板

  • grafana-worldmap-panel – 世界地图面板

  • marcusolsson-json-datasource – JSON API 数据源

示例:安装一个时钟面板

bash

sudo grafana-cli plugins install grafana-clock-panel

安装完成后,必须重启 Grafana 服务才能生效:

bash

sudo systemctl restart grafana-server

10.2 验证插件是否安装成功

  • 方法一:在 Grafana 左侧边栏点击 齿轮图标 → Plugins,在已安装列表中搜索 “clock”,看到启用状态即成功。

  • 方法二:编辑或新建一个面板,在右侧 Panel type 下拉框中会多出一个 Clock 选项。

10.3 安装数据源插件示例(Zabbix)

假设你需要监控 Zabbix 中的数据:

bash

sudo grafana-cli plugins install alexanderzobnin-zabbix-app
sudo systemctl restart grafana-server

然后在 Connections → Add new connection 中搜索 Zabbix,点击激活并配置 Zabbix API 地址。

10.4 手动安装离线插件(适用于无互联网环境)

如果你在隔离网络中,可以手动下载插件 .zip 包并解压到 Grafana 插件目录(默认 /var/lib/grafana/plugins),然后重启服务并修改 grafana.ini 允许未签名插件(谨慎操作)。

bash

# 允许未签名插件(仅对指定插件ID放开)
sudo vi /etc/grafana/grafana.ini
# 添加:
[plugins]
allow_loading_unsigned_plugins = your-plugin-id

10.5 常见问题与建议

1. 插件安装后不显示?

  • 检查是否重启服务:sudo systemctl restart grafana-server

  • 检查插件目录权限:/var/lib/grafana/plugins 应属于 grafana 用户

  • 查看日志:sudo journalctl -u grafana-server -f 寻找插件加载错误

2. 导入仪表盘后图表全是 “No data”

  • 确认数据源匹配:去仪表盘设置 → Variables → 检查数据源变量是否指向正确的数据源

  • 检查时间范围:如果数据只在最近 15 分钟有值,而仪表盘显示 “Last 6 hours”,自然无数据

  • 试用 TestData 替代:如果你只是想看布局,可以将所有查询的数据源临时改为 TestData 的 “random_walk” 场景

3. 插件安全提醒

请只从官方 Grafana 市场下载插件。第三方插件可能包含恶意代码。对于企业环境,建议内部审查插件源码。

posted @ 2026-05-24 21:50  kyle_7Qc  阅读(69)  评论(0)    收藏  举报