对接Grafana

重要

本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。

表格存储对接Grafana后,您可以通过Grafana可视化展示表格存储中的数据。

前提条件

  • 在访问控制RAM服务侧完成如下操作:

    已创建RAM用户并为RAM用户授予管理表格存储权限(AliyunOTSFullAccess)。具体操作,请参见创建RAM用户RAM用户授权

    警告

    阿里云账号AccessKey泄露会威胁您所有资源的安全。建议您使用RAM用户AccessKey进行操作,可以有效降低AccessKey泄露的风险。

  • 在表格存储服务侧已完成如下操作:

  • 已安装开源Grafana,且Grafana版本必须大于8.0.0,本文以Grafana v11.1.3为例进行介绍。关于安装Grafana的更多信息,请参见Grafana官方文档

    说明

    您也可以使用阿里云可观测可视化 Grafana 版,默认已集成阿里云表格存储(Tablestore)。具体操作,请参见添加并使用Tablestore数据源

背景信息

Grafana是一款开源的可视化和分析平台,支持Prometheus、Graphite、OpenTSDB、InfluxDB、Elasticsearch、MySQL、PostgreSQL等多种数据源的数据查询、可视化等。更多信息,请参见Grafana官方文档

表格存储的表数据接入Grafana后,Grafana可以根据表数据生成大盘面板,将数据实时展示给需要的用户。

注意事项

目前表格存储支持使用Grafana实现数据可视化功能的地域有华东1(杭州)、华东2(上海)、华北2(北京)、华北3(张家口)、华南1(深圳)和新加坡。

步骤一:安装表格存储插件

Windows

  1. 下载表格存储Grafana插件包。具体下载路径为表格存储Grafana插件包

  2. 解压表格存储Grafana插件包,并将表格存储Grafana插件包放到Grafana插件的plugins-bundled目录中。

  3. 修改Grafana配置文件。

    1. 使用文本编辑器工具打开Grafana插件conf目录中的配置文件defaults.ini。

    2. 在配置文件的[plugins]节点中,设置allow_loading_unsigned_plugins参数。

      allow_loading_unsigned_plugins = aliyun-tablestore-grafana-datasource
  4. 在任务管理器中重启grafana-server.exe进程。

Mac/Linux

  1. 执行以下命令下载表格存储Grafana插件包。

    wget https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20220527/ygdf/tablestore-grafana-plugin-1.0.0.zip
  2. 将表格存储Grafana插件包解压到Grafana插件目录。

    根据Grafana的安装方式执行对应命令。

    • 使用YUMRPM安装的Grafana(只适用于Linux平台):unzip tablestore-grafana-plugin-1.0.0.zip -d /var/lib/grafana/plugins

    • 使用.tar.gz文件安装的Grafana:unzip tablestore-grafana-plugin-1.0.0.zip -d {PATH_TO}/grafana-{VERSION}/data/plugins

      说明

      其中{PATH_TO}/grafana-{VERSION}Grafana的安装路径,{VERSION}Grafana的版本号。

  3. 修改Grafana配置文件。

    1. 进入文件目录打开配置文件。

      • 使用YUMRPM安装的Grafana(只适用于Linux平台):/etc/grafana/grafana.ini

      • 使用.tar.gz文件安装的Grafana:{PATH_TO}/grafana-{VERSION}/conf/defaults.ini

        说明

        其中{PATH_TO}/grafana-{VERSION}Grafana的安装路径,{VERSION}Grafana的版本号。

    2. 在配置文件的[plugins]节点中,设置allow_loading_unsigned_plugins参数。

      allow_loading_unsigned_plugins = aliyun-tablestore-grafana-datasource
  4. 重启Grafana。

    1. 使用kill命令终止Grafana进程。

    2. 执行以下命令启动Grafana。

      • 使用YUMRPM安装的Grafana(只适用于Linux平台):systemctl restart grafana-server

      • 使用.tar.gz文件安装的Grafana:./bin/grafana-server web

步骤二:配置数据源

  1. 登录Grafana。

    1. 在浏览器中输入http://<x.x.x.x>:3000/,进入Grafana登录界面。

      说明

      <x.x.x.x>代表GrafanaIP地址。以Grafana安装在Windows环境为例,登录地址为http://localhost:3000

    2. 输入Email or usernamePassword,单击Log in

      说明

      Grafana默认初始登录用户名和密码均为admin。首次登录时,请根据系统提示修改初始密码。

  2. Grafana首页,单击页面左上角的image图标。

  3. Grafana左侧导航栏,选择Connections > Data sources

  4. Data sources页面,单击+ Add new data source

    image

  5. Add data source页面的Others区域,单击aliyun-tablestore-grafana-datasource

  6. Settings页面,根据下表说明配置相关参数。

    参数

    示例值

    说明

    Name

    aliyun-tablestore-grafana-datasource

    数据源名称,可自定义。默认为aliyun-tablestore-grafana-datasource。

    Endpoint

    https://myinstance.cn-hangzhou.ots.aliyuncs.com

    表格存储实例的服务地址,请根据访问的表格存储实例填写。更多信息,请参见服务地址

    Instance

    myinstance

    Tablestore实例名称。

    AccessId

    ************************

    拥有表格存储访问权限的阿里云账号或者RAM用户的AccessKey ID。

    AccessKey

    ********************************

    拥有表格存储访问权限的阿里云账号或者RAM用户的AccessKey Secret。

  7. 单击Save & test

    连接成功后,界面会显示Data source is working信息。

    image

步骤三:创建大盘面板

  1. Grafana首页,单击页面左上角的image图标。

  2. Grafana左侧导航栏,单击Dashboards

  3. Dashboards页面,单击New,然后选择New dashboard

    image

  4. New dashboard页面,单击+ Add visualization

  5. Select data source对话框,选择配置完成的TableStore数据源。

    image

  6. Edit页面Query区域配置查询条件。

    配置参数说明请参见下表。

    参数

    示例

    说明

    Query

    SELECT * FROM your_table WHERE $__unixMicroTimeRangeFilter(_time)AND _m_name = "your_measurement" AND tag_value_at(_tags, "your_tag")="your_tag_value"LIMIT 1000

    SQL查询语句。更多信息,请参见查询数据

    重要
    • WHERE子句中要通过预定义宏过滤时间范围,即示例中的$__unixMicroTimeRangeFilter。更多的时间宏函数请单击配置页面中的“Show Help”查看。

    • 如果以时序图形式展示,则需要返回以数字时间戳形式表示的时间列,并配置时间列的列名。

    Format As

    Timeseries

    结果处理形式。取值范围如下:

    • Timeseries(默认):普通时序图。

    • FlowGraph:多维图表展示。

    • Table:普通表格形式。

    Time Column

    _time

    返回数据中时间列的列名,时间列会作为时序图的横坐标。当选择Format AsTimeseries或者FlowGraph时可配置。

    Aggregation Column

    _field_name#:#_double_value

    将同一时间点的多行单列数据转换为同一时间点的单行多列数据,适用于将Tablestore时序SQL产生的单值模型数据转换为多值模型数据。当选择Format AsFlowGraph时可配置。格式为<数据点名称列>#:#<数值列>

  7. 单击Run SQL,执行SQL语句查看数据和调试。

  8. 设置并保存大盘面板。

    1. 在右侧设置监控图表的名称、类型、展示样式等。

      fig_20220426_dashboard

    2. 单击右上角的Apply

    3. 单击右上角的Save,在Save dashboard对话框,设置Title、Description和大盘归属的Folder后,然后单击Save

步骤四:查看监控数据

  1. Grafana首页,单击页面左上角的image图标。

  2. Grafana左侧导航栏,选择Dashboards,单击目标目录下的监控大盘,即可查看目标大盘上的所有监控图表。