raintank,Grafana)背后的公司)的马特·托巴克的一篇文章
简介
Grafana是可视化时间序列基础设施和应用指标的领先图形和仪表板生成器,但许多公司将其用于其他领域,包括工业传感器、家庭自动化、天气和过程控制。它提供了一种强大而优雅的方式来创建、探索仪表板和数据,并与您的团队和世界共享。
在本教程中,您将学习如何将Prometheus作为数据源添加到Grafana实例中,并安装预配置的Prometheus Server Statistics Dashboard。
前提条件
要学习本教程,您需要:
- Ubuntu 14.04 Drop
- 具有sudo访问权限的用户(有关详细信息,请参阅Ubuntu 14.04的初始服务器设置教程)
- 按照How to Install Prometheus Using Docker on Ubuntu 14.04》中的说明安装普罗米修斯和Grafana 2.5+
第一步-添加普罗米修斯作为Grafana数据源
在本节中,我们将配置Grafana以将您的Prometheus服务器作为数据源进行访问。每个Prometheus服务器都是一个单独的数据源,如果您要配置多个Prometheus服务器,请对每个服务器重复此部分。
在http://your_server_ip:3000/
,上进入Grafana主视图,然后登录到您的管理员帐户。
点击左上角的Grafana图标以显示主菜单。选择[数据源],导航到数据源列表页。点击顶部导航栏中的[新增]。您应该看到以下内容:
使用下列值创建新的数据源:
姓名
:普罗米修斯类型
:普罗米修斯URL
:http://<your_server_ip>:9090,(默认端口为9090)Access
:代理Basic Auth
:启用或禁用,根据Prometheus服务器的配置。
单击[添加]添加您的数据源,然后单击[测试连接]以验证一切正常。如果成功,请转到下一步以导入仪表板。
第二步-导入普罗米修斯统计仪表板
本节将下载一个官方的、预先构建的Prometheus Stats仪表板,并指导您如何将其导入Grafana。
通过以下两种方式之一下载最新的普罗米修斯仪表板:
1.右击并保存以下链接:普罗米修斯统计-默认Grafana Dashboard 2.直接在浏览器中导航至仪表板JSON文件:
http://grafana.org/assets/dashboards/prometheus-dash.json
导入视图可以在新建仪表板和播放列表按钮旁边的仪表板选取器下拉菜单中找到。
若要从本地JSON文件导入仪表板,请在导入文件 部分单击** 选择文件** 按钮。在本地文件系统中找到下载的prometheus-dash.json
并导入。
[导入](https://assets.digitalocean.com/ods/graph ana_prometheus/HGL0BSi.gif)
注意: 如果您的数据源命名为Prometheus
以外的名称,则需要查找并替换.json
文件中的数据源名称。使用以下命令打开它:
1nano prometheus-dash.json
找到以下内容,并将数据源文件名从Prometheus更改为您命名的任何名称:
1[label prometheus-dash.json]
2"datasource": "Prometheus",
导入普罗米修斯仪表板后,您将立即进入普罗米修斯统计仪表板,如果一切配置正确,您将开始查看来自普罗米修斯服务器的统计数据。
重要信息 :点击顶部菜单中的保存按钮,将您的仪表板保存在Grafana实例中。如果您不保存仪表板,则在您关闭浏览器后,它将不会显示在Grafana中。
第3步-查看普罗米修斯统计仪表板
成功导入后,系统会立即将您带到新的未保存仪表板。此仪表板是在普罗米修斯团队的帮助下构建的,重点介绍了通常用于排除普罗米修斯服务器故障的基本指标。
单个面板和报告的指标如下:
单状态图
- 正常运行时间 :这个单一的统计图表是正常运行时间,即普罗米修斯服务器上线以来的时间。乍一看,此统计信息对于了解您的服务器最近是否重新启动非常有用。
- 本地存储内存系列 :该面板显示当前内存中保存的系列数量,截至仪表板时间范围中指定的
From
值。默认情况下,这是now
。 - 内部存储队列长度 :理想情况下,此队列长度应为空(0)或较小的数字。
- 摄取的样本 :此图形显示Prometheus服务器摄取的样本计数,按范围向量中的每个时间序列在过去5分钟内测量。在对IRC或Github上的问题进行故障排除时,这通常是普罗米修斯团队要求的第一个数据。这个数字应该与您认为您正在摄取的指标数量保持一致。
已摄取样本 查询如下:
1rate(prometheus_local_storage_ingested_samples_total[5m])
狐狸
普罗米修斯从仪表化作业中直接获取指标,或者通过短期作业的中间推送网关。目标刮擦数 图表将显示在距离向量中的每个时间序列在过去5分钟内测量的目标刮擦的频率。** 刮擦持续时间** 图表将显示刮擦持续的时间,百分位数可作为序列。刮擦持续时间显示第50个百分位数(0.5)、第90个百分位数(0.9)。和第99个百分位数(0.99)作为三个独立的序列,以帮助识别可能扭曲数据的异常值。
Target Scrapes 查询如下:
1rate(prometheus_target_interval_length_seconds_count[5m])
抓取时长 查询如下:
1prometheus_target_interval_length_seconds{quantile!="0.01", quantile!="0.05"}
规则生效时长
此图形面板绘制要执行的所有评估的持续时间。第50个百分位数(0.5)、第90个百分位数(0.9)和第99个百分位数(0.99)显示为三个独立的序列,以帮助识别可能扭曲数据的异常值。
第四步-分析来自普罗米修斯仪表盘的数据
对于新运行的Prometheus服务器,您的图形应该看起来非常平坦和细小。
从长远来看,这些图表将根据您的特定用例和工作负载而变化很大。通常,您希望所有这些图表都保持稳定。如果正在抓取更多的目标和/或他们开始导出更多的指标,则每秒获取的样本、内存序列和目标抓取的数量将会增加--这是意料之中的。
如果您的目标抓取意外下降或抓取延迟上升,您应该确定原因。例如,客户可以开始导出100万个指标,而不是通常的10,000个指标,或者某人可以为每个用户导出具有不同标签的时间序列。这两种情况都会导致刮擦延迟的增加。因此,当图形突然上升时,您应该调查应用程序是否被显著放大,或者它是否可能被糟糕地检测。
规则评估速度慢也是一个很好的指标,表明运行Prometheus服务器的节点根本不足以处理负载。
第五步-自定义图表和指标
现在,您已经在Grafana实例中添加了一个Prometheus Dashboard,其中包含一组预配置的Prometheus服务器统计信息。
Grafana使您能够可视化您的普罗米修斯服务器上可用的任何指标-所有这些都可以在专门的普罗米修斯查询编辑器中访问。要访问任何面板上的查询编辑器,请单击面板标题区域以显示面板菜单。单击[编辑]。将为您预先选择指标 选项卡,并提供对查询的直接访问和普罗米修斯数据源的可用选项。
在查询编辑器中进行更改时,图表将立即更新以显示您所做的编辑。
结论
有关可用指标的完整列表,您可以导航到http://<your_server_ip>:9090
/metrics(默认端口为9090)。
这些指标中的任何一个都可以复制并粘贴到Grafana查询编辑器中,在保存仪表板之前,您所做的任何编辑都不会覆盖现有的仪表板。
所以,试一试,享受乐趣,开始想象吧!