使用Node Exporter采集主机数据

安装 Node Exporter

在 Prometheus 的架构设计中,Prometheus Server 并不直接服务监控特定的目标,其主要任务负责数据的收集,存储并且对外提供数据查询支持。因此为了能够能够监控到某些东西,如主机的 CPU 使用率,我们需要使用到 Exporter。Prometheus 周期性的从 Exporter 暴露的 HTTP 服务地址(通常是/metrics)拉取监控样本数据。
这里为了能够采集到主机的运行指标如 CPU、 内存、磁盘等信息,我们可以使用 Node Exporter。
Node Exporter 同样采用 Golang 编写,并且不存在任何的第三方依赖,只需要下载,解压即可运行。可以从官网获取最新的 node exporter 版本的二进制包。

下载地址:https://prometheus.io/download/

wget https://github.com/prometheus/node_exporter/releases/download/v1.7.0/node_exporter-1.7.0.linux-amd64.tar.gz

也可以使用 docker 安装

docker run -d -p 9100:9100 prom/node-exporter

访问http://localhost:9100/可以看到页面。

初始 Node Exporter 监控指标:
访问http://localhost:9100/metrics,可以看到当前 node exporter 获取到的当前主机的所有监控数据。
每一个监控指标之前都会有一段类似于如下形式的信息:

# HELP node_cpu Seconds the cpus spent in each mode.
# TYPE node_cpu counter
node_cpu{cpu="cpu0",mode="idle"} 362812.7890625
# HELP node_load1 1m load average.
# TYPE node_load1 gauge
node_load1 3.0703125

其中 HELP 用于解释当前指标的含义,TYPE 则说明当前指标的数据类型。在上面的例子中 node_cpu 的注释表明当前指标是 cpu0 上 idle 进程占用 CPU 的总时间,CPU 占用时间是一个只增不减的度量指标,从类型中也可以看出 node_cpu 的数据类型是计数器(counter),与该指标的实际含义一致。又例如 node_load1 该指标反映了当前主机在最近一分钟以内的负载情况,系统的负载情况会随系统资源的使用而变化,因此 node_load1 反映的是当前状态,数据可能增加也可能减少,从注释中可以看出当前指标类型为仪表盘(gauge),与指标反映的实际含义一致。

除了这些以外,在当前页面中根据物理主机系统的不同,你还可能看到如下监控指标:

  • node_boot_time:系统启动时间
  • node_cpu:系统 CPU 使用量
  • nodedisk*:磁盘 IO
  • nodefilesystem*:文件系统用量
  • node_load1:系统负载
  • nodememeory*:内存使用量
  • nodenetwork*:网络带宽
  • node_time:当前系统时间
  • go_*:node exporter 中 go 相关指标
  • process_*:node exporter 自身进程相关运行指标

从 Node Exporter 收集监控数据

为了能够让 Prometheus Server 能够从当前 node exporter 获取到监控数据,这里需要修改 Prometheus 配置文件。编辑 prometheus.yml 并在 scrape_configs 节点下添加以下内容:

scrape_configs:- job_name: 'prometheus'static_configs:- targets: ['localhost:9090']# 采集node exporter监控数据- job_name: 'node'static_configs:- targets: ['localhost:9100']

重新启动 Prometheus Server。
访问http://localhost:9090,进入到 Prometheus Server。如果输入“up”并且点击执行按钮以后,可以看到如下结果:
图片2.png
如果 Prometheus 能够正常从 node exporter 获取数据,则会看到以下结果:

up{instance="localhost:9090",job="prometheus"} 1 
up{instance="localhost:9100",job="node"} 1

其中“1”表示正常,反之“0”则为异常。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/307570.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MCEWMDRMNDBootstrap.dll文件丢失,软件游戏无法启动,怎样下载修复

不少小伙伴反馈,在打开某些游戏或软件的时候,Windows会提示“MCEWMDRMNDBootstrap.dll文件丢失,软件无法启动”,不知道应该怎样办? 首先,我们先来了解“MCEWMDRMNDBootstrap.dll文件”是什么? …

php-fpm运行一段时间,内存不足

目录 一:原因分析 二:解决 三:观察系统情况 php-fpm运行一段时间,内存不足,是什么原因呢。 一:原因分析 1:首先php-fpm的配置 (1)启动的进程数 启动的进程数越多,占用内存越高; 2:其次…

【12.3K⭐】ChatALL:一款让你同时与多个AI模型对话的软件

【12.3K⭐】ChatALL:一款让你同时与多个AI模型对话的软件 随着人工智能技术的不断发展,越来越多的AI模型被开发出来。这些AI模型具有不同的功能和特点,可以为用户提供不同的服务。然而,对于用户来说,同时与多个AI模型…

第G2周:人脸图像生成(DCGAN)

🍨 本文为[🔗365天深度学习训练营学习记录博客\n🍦 参考文章:365天深度学习训练营\n🍖 原作者:[K同学啊 | 接辅导、项目定制]\n🚀 文章来源:[K同学的学习圈子](https://www.yuque.co…

SourceTree的安装和使用

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、安装:二、使用步骤1.获取地址2.放入sourceTree 3.点击推送 前言 提示:这里可以添加本文要记录的大概内容: 简单讲解一…

【网络技术】【Kali Linux】Wireshark嗅探(三)用户数据报(UDP)协议

一、实验目的 本次实验使用wireshark流量分析工具进行网络嗅探,旨在了解UDP协议的报文格式。 二、网络环境设置 本次实验使用Kali Linux虚拟机完成,主机操作系统为Windows 11,虚拟化平台选择Oracle VM VirtualBox,组网模式选择…

【Python排序算法系列】—— 选择排序

​ 🌈个人主页: Aileen_0v0 🔥热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 💫个人格言:"没有罗马,那就自己创造罗马~" 目录 选择排序 过程演示: 选择排序实现代码: 分析选择排序&#xff1a…

虚拟机和电脑如何传送文件

一.桥接 (实现电脑和虚拟机在同一网段) 虚拟机上网盘设置 二.属性---文件共享设置 1打开属性,点击共享 2.添加共享人为全部人,并修改权限为读写模式 3.点击高级共享,选定此文件夹 4.点击网络和共享中心,划…

函数式编程的妙用

前言 我们平常项目中维护的比较多的就是实体类中的数量问题,我们最常见的做法就是通过get方法读取旧数据,然后进行新数据的set 。这套方法相对来说是比较统一固定的,如果有多处地方使用,我们可以想着通过Function和BiConsumer的函…

java设计模式学习之【模板方法模式】

文章目录 引言模板方法模式简介定义与用途实现方式 使用场景优势与劣势在Spring框架中的应用游戏设计示例代码地址 引言 设想你正在准备一顿晚餐,无论你想做意大利面、披萨还是沙拉,制作过程中都有一些共同的步骤:准备原料、加工食物、摆盘。…

毅速:3D打印技术传统模具行业影响深远

随着3D打印技术的不断发展和完善,一系列的优势使其在模具制造领域的应用越来越广泛,这一技术在模具行业的应用将为整个行业带来变革。 首先,3D打印技术将大幅提高模具制造的精度和效率。传统的模具制造过程中,由于加工设备的限制和…

Typora使用PicGo+Gitee上传图片报错403 Forbidden

Typora使用PicGoGitee上传图片报错403 Forbidden Typora使用PicGoGitee上传图片,上传失败了,错误信息如下 打开PicGo的日志文件查看,可以看到错误详情如下 换了一个插件github-plus重新配置,解决了这个问题 再打开日志查看&…