我如何将Grafana与Prometheus连接起来?

806 阅读10分钟

目录。

  1. 先决条件
  2. 在Ubuntu 20.04 LTS上安装Grafana
  3. 首次访问Grafana
  4. 在Grafana上添加Prometheus数据源
  5. 为网络监控创建一个仪表盘
  6. 将网络监控仪表板设置为默认值
  7. 总结
  8. 参考文献

先决条件。

要尝试本文的例子,你必须在你的电脑上安装Prometheus和Node Exporter。

如果你需要在Ubuntu 20.04 LTS发行版上安装Prometheus和Node Exporter的帮助,请查看如何在Ubuntu 20.04 LTS上安装Prometheus一文。

在Ubuntu 20.04 LTS上安装Grafana。

为了能够使用Grafana绘制Prometheus的数据,你必须在你的计算机上安装GrafanaGrafana在Ubuntu 20.04 LTS的官方软件包库中不可用。但是,你可以从Grafana的官方网站上下载Grafana的DEB包,并在Ubuntu 20.04 LTS上安装它。

首先,用以下命令更新APT软件包库的缓存。

$ sudo apt update

Grafana依赖于adduser和libfontconfig1软件包。

要安装Grafana的依赖包,请运行以下命令。

$ sudo apt-get install -y adduser libfontconfig1

如果Grafana依赖包还没有安装在你的Ubuntu 20.04 LTS电脑上,它们应该被安装。在我的例子中,adduser和libfontconfig1软件包已经安装。

要下载最新版本的Grafana(本文写作时为v8.1.1)DEB包文件并将其保存在**/tmp目录下,作为grafana.deb文件**,请运行以下命令。

$ wget -O /tmp/grafana.deb wget https://dl.grafana.com/oss/release/grafana_8.1.1_amd64.deb

Grafana的DEB包文件正在被下载。它可能需要一段时间才能完成。

在这一点上,Grafana DEB包文件应该已经下载完毕。

现在,用以下命令安装Grafana软件包grafana.deb

$ sudoaptinstall -y /tmp/grafana.deb


Grafanagrafana.deb正在安装中。


Grafana在此时应该已经安装完毕。


现在,用以下命令重新加载 systemctl守护进程

$ sudosystemctl daemon-reload


启动grafana-server systemd 服务,并将其添加到系统启动中,使其在启动时自动启动,命令如下。

$ sudosystemctlenable --nowgrafana-server


如你所见,grafana-server systemd 服务正在运行,并且已经启用。

$ sudosystemctl status grafana-server

首次访问 Grafana。

一旦你安装了Grafana,你必须从网络浏览器访问Grafana,并设置一个管理账户。

首先,你必须知道你安装Grafana的电脑的IP地址。

在我的例子中,IP地址是192.168.0.117。对你来说,这将是不同的。所以,确保从现在开始用你的IP地址替换它。

$ hostname -I

现在,打开一个网页浏览器,导航到URL http://192.168.0.117:3000,你应该看到Grafana的登录页面,如下图所示。

默认的管理账户用户名是admin,密码也是admin

键入admin作为用户名,admin作为密码,然后点击登录。

由于你是第一次登录Grafana,你会被要求设置一个新的管理员密码。

键入一个安全的管理密码,然后点击提交

管理密码应该被更新,你应该被重定向到默认的Grafana仪表盘页面,如下图所示。

在Grafana上添加Prometheus数据源。

要在Grafana上添加Prometheus作为数据源,点击配置( )>数据源,如下图所示。

单击 "添加数据源"。

点击Prometheus

Prometheus数据源设置一个名称。我把它叫做Prometheus。你可以叫它任何你想要的名字。

现在,键入**http://192.168.0.117:9090**作为URL。

这里,9090是Prometheus运行的端口,192.168.0.117是安装Prometheus的计算机的IP地址。如果你在其他端口运行Prometheus,请改变URL中的Prometheus端口号。另外,用你安装Prometheus的电脑的IP地址替换IP地址。

一旦你完成了,向下滚动一点,点击保存和测试

你应该看到数据源正在工作的消息。这意味着Grafana可以访问Prometheus。

点击返回

Prometheus应该被添加为Grafana的数据源,正如你在下面的截图中看到的那样。

点击下面截图中标注的Explore(

选择Prometheus作为探索源。

现在,你应该从这里运行Prometheus Graph表达式,正如你在下面的截图中看到的。

这个界面与Prometheus Graph页面几乎相同。但是它有更多的功能。

你可以点击指标浏览器的下拉菜单,找到所有导出的Prometheus指标,你可以从Grafana中使用这些指标,正如你在下面的截图中看到的。

你也可以从Grafana探索页面改变图表的时间线。

正如你所看到的,我已经把图表的时间线设置为最后5分钟,图表在Grafana中看起来非常好。

为网络监控创建一个仪表板。

在本节中,我将向你展示如何使用Prometheus数据源创建你自己的Grafana网络监控仪表盘。这应该有助于你开始使用Grafana仪表盘的一些最常见的功能。

要创建一个新的Grafana仪表盘,点击仪表盘( )>管理,如下图所示。

点击新建仪表盘。

点击添加一个空面板,如下图所示。

Grafana面板编辑器应该被显示。你可以从这里创建一个Grafana仪表板面板。

选择Prometheus作为数据源,在指标浏览器部分输入rate(node_network_receive_bytes_total[1m]),如下截图所示。

应该显示安装了Node Exporter的计算机的所有**网络接口(本例中为ens18和lo)**的下载速率图。

注意:我将Node Exporter和Prometheus安装在同一台计算机上。要了解更多关于我是如何设置的,请查看**如何在Ubuntu 20.04 LTS上安装Prometheus**。

默认情况下,图表时间线被设置为6小时。请将其设置为最后5分钟,如下面的截图所示。

这样,你就可以观察到过去5分钟的网络接口的下载速度。

这就是把图表时间线设置为最后5分钟后,面板应该是这样的。

现在,你必须为图表设置一个单位。由于你在监控网络速度,单位应该是字节。你可以从标准选项>单位中选择字节单位,如下图所示。只要搜索字节并点击其中一个标记的单位就可以了。

数据/字节 (IEC)- 这将显示单位为2的次方,因此,1024字节将是1 MiB(mebibytes)。

数据/字节(SI)- 这将显示单位的10次方。因此,1000字节将是1MB(兆字节)。

网络速度单位应该正确地显示在图表上,如下面的截图所示。

现在,图上显示的是ens18和loopback设备lo。但是,我们并不真的需要监测环回设备lo。这真的很容易解决。你所要做的就是选择一个你想监测的网络接口。

要只选择ens18网络接口进行监控,在Metrics浏览器部分的Prometheus表达式中添加**{device="ens18″}**过滤器,如下图所标。ens18网络接口应被选为只用于监控。

面板选项部分,为面板设置一个标题。我把它设置为下载速度。

图表样式部分,你可以选择不同的线插值方法,使图表更容易理解或更漂亮。

图表样式部分,你还可以设置图表的线宽和填充不透明度,使其更加漂亮。

正如你所看到的,我将线宽设置为2将填充不透明度设置为10,图表看起来比以前漂亮多了。

你还可以增加图形的点的大小

正如你所看到的,将点的大小设置为10,使图表的数据点更加明显。图形看起来也更漂亮了。

如果你知道数据的低限和上限,你也可以为图表设置一个最低和最高值。这样一来,图表的每个数据点都会在这个范围内显示。否则,Grafana会自动确定并为图表设置最佳的最小和最大值。

如果数据点是小数而不是整数,你可以设置你希望在图表中看到的小数点的数量。如果你把小数点设置为1,你将在图表中只看到1位小数**(即17.3kiB,1.2GiB)。同样,如果你把它设置为2,你将在图上只看到2位小数(即45.22kiB,75.32GiB)**,以此类推。

你还可以在显示名称部分为图形属性设置一个显示名称,如下图所示。

我将其设置为 ens18下载速度,因为我正在监测ens18网络接口的下载速度

你也可以在颜色方案部分为图表设置一个颜色方案。有许多选项;你可以从下拉菜单中选择你喜欢的,如下图所示。

要为图表设置一个特定的颜色,从颜色方案部分选择单一颜色,然后点击颜色选择器,选择一种颜色,如下图所示。

你可以选择一个预定义的颜色,或者你可以从这里选择一个 自定义的颜色

我为图表选择了一个橙色的阴影,你可以在下面的截图中看到。

一旦你对结果满意,点击下面截图中标明的 "应用",将面板添加到仪表板上。

面板 " 下载速度"应该被添加到仪表板上,如下面的截图所示。

现在你已经为监测网络接口ens18的下载速度创建了一个面板,你可能还想为监测网络接口ens18的上传速度创建一个新面板(比方说)。

要做到这一点,你可以点击下面截图中标明的 添加图标 ),并重做你在仪表板上添加下载速度面板时做的同样事情。

由于你想创建的上传速度面板将具有与你已经创建的下载速度面板几乎相同的属性,一个简单的方法是克隆下载速度面板。

要做到这一点,点击下载速度面板的向下箭头图标,并点击更多...>复制,如下面的截图所示。

一个新的下载速度面板应该在原来的下载速度面板旁边被创建,如下图所示。

现在,你必须编辑 **克隆的下载速度面板。**要做到这一点,点击克隆的下载速度面板的向下箭头图标,并点击编辑,如下图所示。

克隆的下载速度面板应该用Grafana面板编辑器打开,如下面的截图所示。

首先,将面板标题改为 Upload Speed,因为你将监控网络接口ens18的上传速度。

在指标浏览器中把node_network_receive_bytes_total改为node_network_transmit_bytes_total,如下图所示。

另外,把图表的颜色改成其他颜色,让它更美观一些。

将图表的显示名称设为ens18上传速度,因为你正在监测 ens18网络接口的上传速度。

完成后,如下面的截图所示,点击应用

如下面的截图所示,一个新的面板 Upload Speed应该被添加到仪表板上。

现在,点击下面截图中标记的 "保存 "图标,以保存仪表板

键入一个仪表板名称,然后点击保存。

我将把它称为Prometheus Network Monitor。你可以叫它任何你想要的名字。

仪表板应该被保存。

设置网络监控仪表板为默认值。

当你点击Dashboard图标时,它显示的是默认的GrafanaDashboard。我确信它对你没有什么帮助。好消息是,你可以将任何仪表板设置为默认的Grafana仪表板。

要设置一个默认的仪表盘,你必须对仪表盘进行加星。

要列出你所创建的所有仪表盘,请点击仪表盘>管理,如下图所示。

你已经创建的仪表板应该列在这里。点击它。

仪表板应该被打开。

要给仪表板加星,点击仪表板的星形图标,如下图所示。

仪表板应该是星形的。

现在,点击下面截图中标记的 "偏好"。

点击 "主仪表板"下拉菜单,如下图所示。

被标记的仪表板应该被列在主仪表板的下拉菜单中,如下图所示。从这里选择普罗米修斯网络监控仪表板

一旦你完成了,点击保存

如果你点击仪表板图标Prometheus网络监控仪表板应该默认显示,如下面的截图所示。

总结。

在这篇文章中,我向你展示了如何在 Ubuntu 20.04 LTS上安装最新版本的Grafana,并在Grafana上连接Prometheus作为数据源。我还向你展示了如何创建一个基本的Grafana仪表盘并将其设置为默认的 Grafana仪表盘。这篇文章应该可以帮助你开始使用 Prometheus和Grafana