基本介绍
Grafana 是一个功能强大的开源可视化与监控平台,由 Torkel Ödegaard 于 2014 年创建。它采用 Go 语言编写,前端基于 React 框架构建,支持跨平台部署。
主要应用场景
- IT 基础设施监控:可实时展示服务器 CPU、内存、磁盘等资源使用情况
- 应用程序性能监控(APM):跟踪应用响应时间、错误率等关键指标
- 业务数据分析:可视化销售数据、用户行为等业务指标
- 物联网(IoT)监控:展示传感器采集的温度、湿度等环境数据
核心功能
数据源支持
Grafana 支持多种数据源,包括 Prometheus、Graphite、Elasticsearch、MySQL、PostgreSQL、InfluxDB 等。用户可以将不同数据源的数据组合在一个仪表盘中。
灵活的可视化
Grafana 提供多种可视化选项,如折线图、柱状图、散点图、饼图、仪表盘等。它还支持设置数据查询的时间范围、动态刷新和多种过滤器。
自定义的报警功能
Grafana 支持创建基于条件的报警(alert),当某个指标达到预设阈值时,可以自动发送通知。报警通知支持多种渠道,包括电子邮件、Slack、Microsoft Teams 等。
用户与访问控制
Grafana 支持用户分组和权限管理,可以针对不同用户或团队设定不同的仪表盘访问权限。
安装下载
yum install -y https://dl.grafana.com/enterprise/release/grafana-enterprise-11.3.0-1.x86_64.rpm
启动服务
sudo systemctl start grafana-server
sudo systemctl status grafana-server
访问服务
http://h121.wzk.icu:3000/login
需要账号密码,初始化之后,默认的账号密码都是 admin
项目优势
跨数据源的统一监控
Grafana 提供了强大的数据整合能力,支持包括 Prometheus、InfluxDB、Elasticsearch、MySQL、PostgreSQL 等 50+ 数据源的无缝对接。
社区活跃,插件丰富
Grafana 拥有超过 100 万活跃用户的社区生态,其主要优势包括:
- 官方插件市场提供 200+ 官方认证插件
- 社区贡献的数千个仪表盘模板
实时性与高性能
- 支持每秒处理 10万+ 数据点
- 查询响应时间 <100ms(在合理硬件配置下)
Grafana 与其他监控工具的深度集成
Prometheus 集成
Prometheus 是一个强大的时序数据监控系统,Grafana 通过与 Prometheus 的深度集成可以:
- 实时数据获取
- 灵活的查询语言 PromQL
- 告警集成
Loki 集成
Loki 是 Grafana Labs 开发的日志聚合系统,与 Grafana 无缝集成:
- 统一的可视化界面
- 高效的日志搜索
- 关联分析能力
Jaeger 集成
Jaeger 是 Uber 开源的分布式追踪系统,与 Grafana 配合提供:
- 完整的请求链路可视化
- 性能瓶颈分析
- 与指标日志的关联
错误速查
| 症状 | 根因 | 定位 | 修复 |
|---|---|---|---|
systemctl start grafana-server 失败 | 依赖缺失/配置文件语法错误/端口冲突 | systemctl status grafana-server -l | 按日志补依赖/修配置 |
服务显示 running,但浏览器打不开 :3000 | 防火墙/安全组未放通 | ss -lntp | grep 3000 | 放通防火墙/安全组 |
| 本机 curl 通,外部域名不通 | 反向代理/域名解析/端口映射问题 | 检查 Nginx/SLB 配置与 DNS 解析 | 修正反代 upstream |
| 打开登录页但一直 302/循环跳转 | root_url/serve_from_sub_path 配置与反代路径不匹配 | 浏览器 Network 看 302 Location | 统一 root_url 与反代 rewrite |
| 登录 admin 提示失败 | 已改过初始密码/禁用本地登录 | 查看 Grafana 日志 | 恢复管理员账号/重置密码 |
| 慢/仪表盘加载卡 | 数据源查询慢/并发高 | Grafana Explore/Query Inspector | 优化查询、降低刷新频率 |
| 插件装不上/面板缺失 | 插件签名/版本不匹配 | Grafana 日志 | 校验版本兼容 |