免费监控云中的家庭实验室设备

2021-01-29 07:32:46

当我得知Grafana Cloud现在有一个永久免费的计划时,我将开始在家中安装一个监视堆栈来监视我的Linux设备。 让我告诉你,就像他们说的那样 “真正有用的免费计划”。 您免费获得的一些东西: 但更重要的是,您无需在环境中维护时间序列数据库或Grafana实例。 在这篇文章中,我们将描述使您入门和运行的步骤。 简而言之,您需要: 您要从此处检索服务ID和API密钥。 如果单击Prometheus详细信息,将显示以下内容: 复制您的5位数字用户。 如果您打算将日志和指标一起导出,请对Loki执行相同的操作。 可以通过“密码”部分提供的链接或左侧菜单选项生成API密钥(您只需要一个密钥)。 确保角色是MetricsPublisher。

为了从主机导出指标,您需要安装Grafana Cloud Agent,它是Prometheus的一个子集,该Prometheus是为托管指标而构建的,依靠内存运行,并且使用了许多经过实践检验的代码,这使Prometheus变得如此出色”。

Grafana提供了出色的演练,可帮助您按服务在主机上安装代理。这对于单个主机是完美的。

但是,如果您打算将其部署在多个主机上并希望提供一定的一致性,那么我们最好使该过程自动化。如果您需要为每个主机安装多个代理并希望它们在启动时自动启动,则更是如此。

您可以运行Ansible角色来自动安装这些代理。 Ansible角色将把prometheus_user和grafana_api_key作为输入值,这是您从上一步中获得的。该角色将在所有目标主机中从GitHub版本安装和配置最新版本的Grafana Cloud Agent。它还创建一个Systemd服务来管理代理。

要将角色安装在Ansible控制机器上,您可以执行ansible-galaxy角色安装nleiva.grafana_agent。然后运行针对您要在其上安装代理的所有Linux主机的剧本。在下面的示例中,输入变量; prometheus_user和grafana_api_key均来自文件:secret / vars-enc.yml。

如果将变量loki_user传递给该角色,它还将安装Promtail代理以从/ var / log抓取日志消息并进行日志记录,并为其创建Systemd服务。 Promtail是受Prometheus极大启发的原木代理。

现在有趣的部分!单击您的Grafana Cloud Portal中Grafana部分旁边的“登录”以访问您的Grafana实例。

如果在Grafana Cloud实例的“集成管理”部分中启用了“ Linux服务器集成”,则将预配置一个不错的Linux节点仪表板,该仪表板显示CPU /内存使用情况,磁盘I / O以及主机中的其他指标。

另外,您可以导入仪表板,只要Prometheus是它的数据源即可。例如,让我们导入仪表板ID 11074。

就像这样,在选择数据源之后,您最终会得到以下内容(太神奇了!):

Linux Server Integration随附的Linux Node仪表板不包含CPU温度面板,例如,如果您有一些Raspberry Pi(vcgencmd measure_temp),则可能需要监视该面板。

默认情况下,Grafana Cloud Agent导出热数据作为node_thermal_zone_temp收集器的一部分,该收集器从/ sys / class / thermal读取。这意味着您应该能够轻松地可视化Grafana中的CPU温度。

在Grafana实例的“探索”部分中,我们可以运行查询以验证是否正在接收此数据。这是可选的,但可以帮助您优化查询。

要将此指标添加到现有仪表板,您需要单击要包括此指标的仪表板右上角的“添加”面板。

您可以添加一些选项,例如度量单位,要显示的小数位数以及设置阈值。 最后但并非最不重要的一点是,您需要定义查询,在这种情况下,为node_thermal_zone_temp {job =“ integrations / node_exporter”,instance =“ $ instance”,type =〜“ cpu-thermal | x86_pkg_temp”}。 如果您想节省时间和金钱,Grafana Cloud免费计划是监视实验室设备的绝佳选择。