Grafana作为可观测的大门,支持将各数据整合并提供一站式的可视化界面,您可以通过一个Grafana账号管理需要监控的全部数据。本文以ECS数据为例,介绍如何将多个阿里云账号下的云服务数据添加到一个可观测可视化 Grafana 版中。
背景信息
目前有不少用户拥有多个阿里云账号,并且每个阿里云账号都购买了ECS或者其他各类云产品,如果需要同时监控这些云产品,通过Grafana即可实现将各账号下的云服务数据集成到同一个Grafana工作区中。
示例场景
本文演示如何将阿里云账号A和B下的ECS数据全部集成到账号A下的Grafana工作区中。
步骤一:集成账号A的ECS数据并生成大盘
登录阿里云账号A,并在可观测可视化 Grafana 版中集成ECS数据。
- 登录可观测可视化 Grafana 版控制台,在左侧导航栏单击工作区管理。
- 在工作区管理页面,单击目标工作区ID。
在工作区信息页面的云服务集成区域左侧单击Prometheus云监控服务(旧)。
在右侧页面选择需要集成的数据源,然后单击右侧操作列的集成,并在弹出的对话框中单击确认。
说明单击配置云服务监控,可以将更多云产品接入阿里云Prometheus监控。
已集成的数据源其状态列会显示已集成。
单击数据源右侧的文件夹。
在Grafana的Dashboards页面您可以查看数据源对应大盘所在的文件夹。
单击名称为CMS-ECS的大盘。
查看可观测可视化 Grafana 版基于模板自动创建的ECS大盘。
步骤二:集成账号B的ECS数据
将阿里云账号B的ECS数据接入阿里云Prometheus云服务,并通过阿里云Prometheus云服务将ECS数据源添加至阿里云账号A创建的Grafana工作区中。
切换阿里云账号B,登录ARMS控制台。
在概览页面的接入中心区域单击查看全部,或者在左侧导航栏单击接入中心。
在接入中心页面的云服务区域单击Alibaba Cloud ECS。
在接入云服务面板单击确定。
页面将会跳转至阿里云Prometheus监控的云服务接入页面。
说明如果当前账号下的ECS已接入阿里云Prometheus云服务,您可以在ARMS控制台的实例类型为Prometheus for 云服务的实例名称,查看已接入云服务的ECS。
页面,单击在左侧导航栏单击设置。
在设置页签的云服务:cms折叠面板下,复制并保存HTTP API地址(Grafana 读取地址)的公网地址。
说明由于跨账号VPC不支持,因此无法使用内网地址。
切换阿里云账号A,登录可观测可视化 Grafana 版控制台。
在工作区管理页面,单击目标工作区右侧的访问地址url链接进入Grafana。
说明如果需要登录Grafana,可以使用Grafana的Admin账号和创建工作区时设置的密码登录Grafana,或单击Sign in with Alibaba Cloud直接使用当前购买工作区的阿里云账号登录Grafana。
在Grafana左侧导航栏选择 。
在Data Sources页签单击Add data source。
在Add data source页面,单击Prometheus。
在Settings页面,输入Name为数据源名称,在HTTP区域输入URL为步骤6获取的HTTP API地址。
单击Save & Test。
当页面显示
Data source is working
时,表示ECS数据已成功添加至Grafana。更多配置信息,请参见Grafana官方文档。
步骤三:为账号B的ECS数据创建Grafana大盘
使用账号A的ECS大盘模板,为账号B的ECS数据源创建Grafana大盘。
在步骤一创建的大盘页面,单击图标,然后在Export页签打开Export for sharing externally开关,然后单击Save to file。
当前大盘将会导出一个JSON文件。
在左侧导航栏选择 。
在Import页面单击Upload JSON file,然后选择并打开步骤1导出的JSON文件。
在Options区域修改大盘信息。
输入Name为自定义大盘名称。
在Folder区域选择大盘存放的文件夹。
在Unique identifier (uid)区域单击Change uid,修改大盘的UID确保该串字符唯一即可。
在Select a Prometheus data source下拉框选择步骤二集成的数据源。
单击Import。
等待几秒钟后,即可查看大盘。
进阶操作
以上步骤仅将不同账号的数据集成到同一个Grafana工作区下,但仍需分开查看大盘。以下步骤将演示如何在一张大盘里展示所有数据。
参考步骤二,将所有账号下的云服务数据添加至Grafana。
重要请按一定规律命名数据源名称,方便后续使用正则匹配选择对应的数据源。
参考步骤二为其中任意一个数据源创建大盘。
在大盘页面右上角单击图标,然后在页面左侧导航栏单击Variables。
在Variables页签单击New。
在Edit页面进行以下设置。
在General区域自定义变量名称Name,例如DataSource;选择Type为Datasource。
在Data source options区域选择Type为Prometheus,然后通过正则匹配筛选Instance name filter为需要添加的数据源。
单击Update。
修改其他涉及数据源的变量和面板为上一步添加是数据源。
逐个修改变量和面板的数据源
修改变量:
在Variables页签单击涉及数据源的变量。
在Edit页面的Query Options区域修改Data source为上一步创建的变量名称,例如${DataSource}。
单击Update。
修改面板:
返回大盘页面,单击需要修改数据源的面板名称,然后在下拉框单击Edit。
在Edit Panel页面的Query页签,在数据源选择框中选择上一步创建的变量名称,例如${DataSource}。
单击右上角的Apply。
批量修改变量和面板的数据源
在大盘页面右上角单击图标,然后在页面左侧导航栏单击JSON Model。
在JSON Model页面批量修改
datasource
为上一步创建的变量名称,例如${DataSource}。"datasource": "${DataSource}"
单击Save Changes。
修改完成后,在大盘页面即可通过切换数据源查看不同数据源对应的大盘。