【Prometheus & Grafana】如何在MetricFire中进行设置

Prometheus是一款出色的监控工具,但它只能临时保存和读取指标。换句话说,如果需要解读长时间的数据,就需要将指标写入Prometheus的存储解决方案中。在这种情况下,MetricFire发挥了作用。MetricFire提供了一个托管服务,可以运行长期的Prometheus存储,因此不需要担心指标存储的设置和维护。用户可以专注于监控Prometheus。
MetricFire提供了Hosted Grafana,因此可以进一步节省设置和可视化指标的时间和精力。对于本文中的内容,需要有MetricFire账户才能进行操作。点击此处可以获得为期14天的免费试用。
使用Grafana进行监控,最终效果如下。

请按照这个教程,确认如何进行操作。
MetricFire的Prometheus配置设置
在注册免费试用后,您需要在MetricFire仪表板上进行API密钥配置。这些信息将被放入您自己的Prometheus安装的Prometheus配置文件中。如下图所示,您可以从MetricFire仪表板上导航至[添加组件]> [Prometheus]。此代码块将在本文的后半部分中使用。

如果您从未使用过Prometheus,请继续阅读以下内容。否则,请跳过并直接进入”prometheus.yml的修改”部分。
Prometheus的安装设置
以下的图表示例显示了Prometheus与MetricFire一起运作的方式。只需将节点设置到Prometheus中,并将Prometheus转发到MetricFire,MetricFire就可以读取和写入指标了。

首先,下载 Prometheus 和 Node Exporter。前往 Prometheus 网站的下载部分。


请右键点击上图中红圈圈出的部分链接的位置,并复制链接,获取下载URL。
curl -LO URL_FROM_LINKS_ABOVE
使用以上的代碼片段,從所托管Prometheus的機器上下載Prometheus,並從要監控的機器上下載Node Exporter。在上述指令中,將”URL_FROM_LINKS_ABOVE”替換為從Prometheus下載部分獲取的連結。請參考下面的圖片示例。

接下来,我们将使用下面的代码片段来提取tar.gz文件。
tar -xvf TAR_GZ_FILE_NAME

更改prometheus.yml
在执行Prometheus之前,通过编辑配置来从任意节点收集指标。然后,将指标发送到MetricFire,以便存储和汇总Prometheus指标。
首先,需要将.yml文件更改为以当前节点为目标的相同机器上。您需要执行ifconfig命令来查找IP地址,如下图所示。

接下来,您需要转到.yml文件并编辑其内容,如下图所示。

職位名可以是节点导出的度量类型,目标是节点的列表。您可以从以下代码片段中复制并粘贴,将JOB_NAME和IP_FROM_IFCONFIG适当地替换。
global:
scrape_interval: 5s
scrape_configs:
- job_name: 'JOB_NAME'
static_configs:
- targets: ['IP_FROM_IFCONFIG:9100']
最后,让我们把这篇文章一开始提到的代码块添加到.yml文件中。我们从MetricFire仪表板获取了自定义配置代码片段。具体方法可以在上面的“MetricFire的Prometheus配置设置”部分找到。请查看下方图片以确认代码的缩进情况(请参见18-24行的代码)。

Prometheus和Node Exporter的执行
由於所有設置都已完成,現在我們可以運行Prometheus和節點。請將之前解壓縮的tar.gz文件移至所需位置。在Prometheus文件夾中運行./prometheus,並在node_exporter文件夾中運行./node_exporter。


通过这样的方式,您可以将指标发送到MetricFire,并存储和聚合这些指标。您可以前往MetricFire仪表板查看最新指标的数据是从Prometheus客户端何时发送的,并确保其正常工作。请参考下方所圈出的图片。

在MetricFire上使用Grafana的步骤如下: 运行节点并修改.yml文件将节点和MetricFire设为目标,然后运行Prometheus客户端,最后将Prometheus指标存储和聚合到MetricFire账户中。
MetricFire提供了附带的托管Grafana,因此您可以使用更动态的仪表板来监控Prometheus指标。此外,MetricFire还能处理指标存储,因此您可以查看Prometheus指标的短期和长期图表。
让我们创建一个当前接收的CPU数据的仪表板。像下面的图片一样,点击“+添加仪表板”。

然后,[添加查询]

接下来,我们要在下方的图像上,添加一个关于CPU总使用量的查询。

使用以下代码片段将其粘贴到查询中,您可以确认它的功能。它使用了系统和用户CPU的irate,仅计算它们的总和。
irate(node_cpu_seconds_total{mode=~"system|user"}[1m])
总结
在这篇博客文章中,我展示了如何使用MetricFire来配置Prometheus和Grafana。MetricFire的托管Prometheus可以以3倍冗余的方式保存最多1年的指标数据,适用于所有用户的数据。
请注册免费试用,无需信用卡,开始体验。另外,预约演示并向MetricFire团队请求视频通话。我们将支持用户充分利用该平台。
好吧,下一篇文章中见!