prometheus的windows_export配置

1. 前言

监控系统资源,我们在做测试时,如果是为了测试客户端占用系统资源的情况,那就少不了要监控其所在系统进行监控。这也就是我们常用的window系统。linux系统下有node-export,windows下对应也有windows-export.本节就是主要来描述windows系统下的资源监控,从搭建到使用的全过程。(本节中提到的环境与实践操作命令等全是本人实际环境,类似的环境可以参考,不要一键复制粘贴到底哦,除了路径外还有有些命令可能会有点点差异。为避免执行失败,步骤操作可以参考,但不要一路不做修改复制粘贴到底哦。)

2. 环境准备

  • 操作系统:windows11
  • 使用工具:
    • windows-exporter
      (下载地址: https://github.com/prometheus-community/windows_exporter/releases)

3. windows-exporter注册为系统服务

方便开机启动或是系统故障宕机快速恢复,可以把windows-exporter注册为系统服务。

sc create windows_exporter binpath= C:\windows_exporter-0.20.0-amd64.exe type= own start= auto displayname= windows_exporter

请添加图片描述

说明:

  • windows_export插件默认放在C盘根目录下。
  • sc create的用法说明:
    • 描述:
      在注册表和服务数据库中创建服务项。
    • 用法:
      sc create [service name] [binPath= ] …
    • 选项:
      注意,选项名称包括等号,等号和值之间需要一个空格。
参数说明
type<own|share|interact|kernel|filesys|rec>(默认 = own)
start<boot|system|auto|demand|disabled|delayed-auto>(默认 = demand)
error<normal|severe|critical|ignore>(默认 = normal)
binPath<BinaryPathName>
group<LoadOrderGroup>
tag<yes|no>
depend<依存关系(以/(斜杠)分隔)>
obj<AccountName|ObjectName> (默认=LocalSystem)
DisplayName<显示名称>
password<密码>

注册完成成后可以在服务里看到所注册的windows_export服务
请添加图片描述

选中服务,然后在右键菜单中点击属性,在属性对话框输入启动参数:
–telemetry.addr=127.0.0.1:9182

    这里的IP地址,可以写虚拟机的实际地址,我本地PC就使用127.0.0.1  

请添加图片描述
然后点击启动按钮,可以发现服务成功启动,如下图所示:
请添加图片描述
请添加图片描述
为了测试windows_exporter是否可以成功采集到监控数据,我们可以在浏览器里面访问下面的地址,来观察是否有数据返回,如果有,则说明服务启动、运行成功。
http://127.0.0.1:9182/metrics
请添加图片描述

如果想删除这个服务,只需要在服务列表里面将此服务停掉,然后服务启动设置为手动,最后在cmd命令行窗口输入下面的命令,即可删除服务。

sc delete windows_exporter

4.配置prometheus 采集windows_export监控数据

为方便后续持续添加更多的监控目标主机,将监控目标配置改基于文件(linux-targets.jsonwindows-targets.json)的目标发布机制,这样后续添加监控目标主机,只需修改独立的目标主机列表,不需要重启prometheus服务。

vi /prom/prometheus.yml

# 将采集配置修改成以下内容,prometheus自身的监控基本不会修改,使用静态配置
# linux及windows主机性能监控均改为基于文件的服务发现模式
scrape_configs:
  - job_name: 'prometheus'
    static_configs:
    - targets: ['192.168.40.29:9090','192.168.40.27:9090']

  - job_name: 'node_exporter'
    file_sd_configs:
    - refresh_interval: 1m
      files:
      - linux-targets.json

  - job_name: 'windows_exporter'
    file_sd_configs:
    - refresh_interval: 1m
      files:
      - windows-targets.json

# 将要监控的linux主机信息添加到目标列表
vi /sas/prometheus/prometheus/linux-targets.json

[
  {
    "targets": [ "192.168.40.29:9100"],
    "labels": {
      "tenant": "devops"
    }
  }
]

# 将要监控的windows主机信息添加到目标列表
vi /sas/prometheus/prometheus/windows-targets.json

[
  {
    "targets": [ "192.168.40.27:9182"],
    "labels": {
      "tenant": "devops"
    }
  }
]

在grafana中配置监控信息展示模版:10467、14694、14510

5.注意事项

windows_exporter默认的监听端口是9182,启用了防火墙功能的主机需要配置防火墙允许prometheus服务器访问主机端口9182。

6.参考文档:

https://blog.csdn.net/cnskylee/article/details/125442012
https://blog.51cto.com/dusthunter/2558405

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Prometheus是用于监控和警报的开源系统,被广泛应用于云本地和物理服务器,容器,负载均衡器,数据库等各种应用。Node_exporterPrometheus的一个插件,可以在被监控的主机上运行,采集系统的各种指标,如CPU使用率,内存使用率,磁盘空间使用情况,网络流量等。Node_exporter支持多种操作系统和架构,包括Linux,Windows,macOS和FreeBSD。 与其他监控工具相比,Prometheus的一个主要优势是其灵活性和可扩展性。使用Node_exporter,用户可以轻松地将自定义指标(例如业务指标)添加到Prometheus中,并进行查询和警报。此外,Prometheus具有可视化接口和强大的查询语言PromQL,使用户可以快速分析和可视化他们收集的数据。 Node_exporter的一个重要用例是容器化环境中的监控。在Kubernetes集群中,Node_exporter可以使用DaemonSet部署到每个节点上,并将相关指标导入Prometheus中。这种方式使得用户可以对整个Kubernetes集群的状况进行监控,包括节点的资源利用率,Pod日志等。 除了Node_exporterPrometheus还有许多其他插件和工具可以使用,如Blackbox_exporter,用于探测服务可用性,Pushgateway,用于将非周期性作业 (如批处理任务)导入 Prometheus等。 总之,Node_exporterPrometheus监控系统中的一个重要插件,它允许用户收集关键系统指标并与Prometheus集成。借助Prometheus的灵活性和可扩展性,您可以创建动态且可视化的仪表板,从而建立更好的应用程序性能和健康的监控。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值