Grafana 介绍

发布时间: 更新时间: 总字数:1319 阅读时间:3m 作者: IP上海 分享 网址

Grafana 是一个开源的度量分析、监控可视化解决方案,支持很多种时序数据库,如 graphite、InfluxDBPrometheus、Elasticsearch 等。

介绍

Grafana 提供各种各样漂亮的可视化界面,可以自己定制,也可以从 grafana 官网下载模板。

Grafana 默认监听于 TCP 协议的 3000 端口。

安装

RPM 安装

wget https://dl.grafana.com/oss/release/grafana-6.2.4-1.x86_64.rpm
yum localinstall grafana-6.2.4-1.x86_64.rpm
systemctl start grafana-server.service

Docker 安装

# 在线安装
docker run -d --name=grafana -p 3000:3000 grafana/grafana:8.4.7

# 离线安装
# docker load < grafana.tar
# docker tag $IMAGEID grafana:5.1
# docker run -d -p 3000:3000 grafana:5.1

说明:

  • 页面可访问:http://127.0.0.1:3000
    • /datasources 配置数据源
    • /dashboard/import 导入模板,支持 urlid,如 1860
  • 默认用户名密码都为:admin

使用

基本概念

  • Dashboard 面板,里面包含了无数个图表(Panel)
  • Panel(图表)是 Prometheus 中数据呈现的最小单元。Dashboard 是由一个个图表构成的
    • 图表(Panel)的设置区域一共可以分为三部分:
      • 预览区:用来预览设置的图表
      • 数据设置区:用来设置数据源、数据指标等
        • 支持配置:Query、Transform、Alert
      • 图表设置区:用来设置图表名称、Y 轴显示样式等图表细节
    • 数据设置区
      • Query 数据指标设置
        • Metrics 指标名,如 rate(system_cpu_usage[1m]),表示使用 1 分钟的数据变化率来显示 CPU 的变化情况
        • Legend 图例,如 {{instance}}-1m,最终显示为 ip:9100-1m
        • Min Step 最小步长 表示图形里每两个点的最小数据间隔是多少
        • Resolution 精度
        • Format 格式 表示数据格式是什么,支持三种:
          • Time series 表示是时间序列数据,即随着时间的流动有源源不断的数据
          • Table 表示是一个表格数据
          • Heap Map 表示是热力图数据
      • Transform 配置
      • Alert 配置
    • 图表设置区
      • Panel title
      • Visualization 可视化 支持图形(Graph)、统计(Stat)、表格(Table)、文本(Text)等
      • Display 显示 设置图表样式相关信息
      • Axes 轴 设置轴的相关信息
        • 如 Y 轴显示未百分比:可以将 Left YUnit 参数,将其设置为 percent(0.0-1.0)
        • data/bytes(IEC)
          • SI(International System of Units,国际单位制) 标准,采用十进制换算。例如:1 MB = 10^6^ bytes = 1 000 000 bytes = 1000 kilobyte
        • data/bytes(SI)
          • IEC(International Electrotechnical Commission,国际电工委员会) 于 1998 年制定的标准,采用二进制换算。例如:1 MiB = 2^20^ bytes = 1 048 576 bytes = 1024 kibibytes
        • data rate/bytes(IEC)
        • data rate/bytes(SI)
        • and so one
        • 更多 Unit 配置参考
      • legend 图例 设置图例信息,例如:图例的显示位置、图例显示最大值、最小值
      • Thresholds 阈值 设置一个阈值,当超过指定的值,会有标记成背景颜色
        • 通常用来针对某个关键数据,当超过某个值进行高亮,方便一目了然查看数据
    • 直接链接至渲染后的图像 -> share -> 点击 Direct link rendered image

Grafana 内置参数

  • $__dashboard 当前 dashboard 的名称
  • $__from $__to 时间范围的毫秒值,可自定义格式,比如
    • {$__from: date :YYYY-MM-DD HH:mm:ss}
    • {$__from: date :seconds}
  • $__range 查询的时间区间大小,包含单位,比如:2d
  • $__range_s $__range_ms 查询的时间区间大小,分别是秒数和毫秒数
  • $__timeFilter 返回当前选择的时间范围表达式
    • 比如:time > now() -7d,常用于数据库作为 datasource 的时候
  • $__interval 查询的时间间隔,包含单位,比如:30s,2m
  • $__interval_ms 查询的时间间隔,毫秒值
  • $__rate_interval 求解速率函数,在 Grafana 7.2 引入,在大多数 rate 查询的情况下使用
    • 替代 $__interval
    • $__rate_interval 保证至少是 采集间隔(Scrape interval) 的四倍
    • 使用示例:rate(xxx{x=y}[$__rate_interval])

无数据报警

扩展插件

grafana-cli plugins install marcusolsson-json-datasource
grafana-cli plugins install simpod-json-datasource

运维

重置密码方法

用户名:admin,密码:admin

docker cp <d-id>:/var/lib/grafana/grafana.db /tmp/grafana.db
  • sqlite3 改数据
sqlite3 grafana.db
select * from user where login = 'admin';
update user set password = '59acf18b94d7eb0694c61e60ce44c110c7a683ac6a8f09580d626f90f4a242000746579358d77dd9e570e83fa24faa88a8a6', salt = 'F3FAxVm33R' where login = 'admin';
.exit
  • 重启服务
docker cp /tmp/grafana.db <d-id>:/var/lib/grafana/grafana.db
docker stop <d-id>
docker start <d-id>

参考

  1. http://grafana.com/dashboards
Home Archives Categories Tags Statistics
本文总阅读量 次 本站总访问量 次 本站总访客数