Grafana 笔记

1. Grafana 笔记

Grafana 支持许多不同的数据源。每个数据源都有一个特定的查询编辑器, 该编辑器定制的特性和功能是公开的特定数据来源。 官方支持以下数据源: Graphite, Elasticsearch, InfluxDB, Prometheus, Cloudwatch, MySQL 和 OpenTSDB 等

1.1. 基本概念

  • 数据源(Data Source)

对于 Grafana 而言, Prometheus 这类为其提供数据的对象均称为数据源(Data Source)。目前, Grafana 官方提供了对: Graphite, InfluxDB, OpenTSDB, Prometheus, Elasticsearch, CloudWatch 的支持。对于 Grafana 管理员而言, 只需要将这些对象以数据源的形式添加到 Grafana 中, Grafana 便可以轻松的实现对这些数据的可视化工作。

  • 仪表盘(Dashboard)

通过数据源定义好可视化的数据来源之后, 对于用户而言最重要的事情就是实现数据的可视化。在 Grafana 中, 我们通过 Dashboard 来组织和管理我们的数据可视化图表:

1.png

如上所示, 在一个 Dashboard 中一个最基本的可视化单元为一个 Panel(面板), Panel 通过如趋势图, 热力图的形式展示可视化数据。 并且在 Dashboard 中每一个 Panel 是一个完全独立的部分, 通过 Panel 的 Query Editor(查询编辑器)我们可以为每一个 Panel 自己查询的数据源以及数据查询方式, 例如, 如果以 Prometheus 作为数据源, 那在 Query Editor 中, 我们实际上使用的是 PromQL, 而 Panel 则会负责从特定的 Prometheus 中查询出相应的数据, 并且将其可视化。由于每个 Panel 是完全独立的, 因此在一个 Dashboard 中, 往往可能会包含来自多个 Data Source 的数据。
Grafana 通过插件的形式提供了多种 Panel 的实现, 常用的如: Graph Panel, Heatmap Panel, SingleStat Panel 以及 Table Panel 等。用户还可通过插件安装更多类型的 Panel 面板。
除了 Panel 以外, 在 Dashboard 页面中, 我们还可以定义一个 Row(行), 来组织和管理一组相关的 Panel。

除了 Panel, Row 这些对象以外, Grafana 还允许用户为 Dashboard 定义 Templating variables(模板参数), 从而实现可以与用户动态交互的 Dashboard 页面。同时 Grafana 通过 JSON 数据结构管理了整个 Dasboard 的定义, 因此这些 Dashboard 也是非常方便进行共享的。Grafana 还专门为 Dashboard 提供了一个共享服务: https://grafana.com/dashboards, 通过该服务用户可以轻松实现 Dashboard 的共享, 同时我们也能快速的从中找到我们希望的 Dashboard 实现, 并导入到自己的 Grafana 中。

  • 组织和用户

作为一个通用可视化工具, Grafana 除了提供灵活的可视化定制能力以外, 还提供了面向企业的组织级管理能力。在 Grafana 中 Dashboard 是属于一个 Organization(组织), 通过 Organization, 可以在更大规模上使用 Grafana, 例如对于一个企业而言, 我们可以创建多个 Organization, 其中 User(用户)可以属于一个或多个不同的 Organization。 并且在不同的 Organization 下, 可以为 User 赋予不同的权限。 从而可以有效的根据企业的组织架构定义整个管理模型

  • DashBoard: 仪表盘, 就像汽车仪表盘一样可以展示很多信息, 包括车速, 水箱温度等。Grafana 的 DashBoard 就是以各种图形的方式来展示从 Datasource 拿到的数据。
  • Row: 行, DashBoard 的基本组成单元, 一个 DashBoard 可以包含很多个 row。一个 row 可以展示一种信息或者多种信息的组合, 比如系统内存使用率, CPU 五分钟及十分钟平均负载等。所以在一个 DashBoard 上可以集中展示很多内容。
  • Panel: 面板, 实际上就是 row 展示信息的方式, 支持表格(table), 列表(alert list), 热图(Heatmap)等多种方式, 具体可以去官网上查阅。
  • Query Editor: 查询编辑器, 用来指定获取哪一部分数据。类似于 sql 查询语句, 比如你要在某个 row 里面展示 test 这张表的数据, 那么 Query Editor 里面就可以写成 select *from test。这只是一种比方, 实际上每个 DataSource 获取数据的方式都不一样, 所以写法也不一样(http://docs.grafana.org/features/datasources/), 比如像 zabbix, 数据是以指定某个监控项的方式来获取的。
  • Organization: 组织, org 是一个很大的概念, 每个用户可以拥有多个 org, grafana 有一个默认的 main org。用户登录后可以在不同的 org 之间切换, 前提是该用户拥有多个 org。不同的 org 之间完全不一样, 包括 datasource, dashboard 等都不一样。创建一个 org 就相当于开了一个全新的视图, 所有的 datasource, dashboard 等都要再重新开始创建。
  • User: 用户, 这个概念应该很简单, 不用多说。Grafana 里面用户有三种角色 admin,editor,viewer。admin 权限最高, 可以执行任何操作, 包括创建用户, 新增 Datasource, 创建 DashBoard。editor 角色不可以创建用户, 不可以新增 Datasource, 可以创建 DashBoard。viewer 角色仅可以查看 DashBoard。在 2.1 版本及之后新增了一种角色 read only editor(只读编辑模式), 这种模式允许用户修改 DashBoard, 但是不允许保存。每个 user 可以拥有多个 organization。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

云满笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值