0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

prometheus下载安装教程

Java开发 来源:代码的路 作者:代码的路 2023-01-13 16:07 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

Prometheus 是一个开放性的监控解决方案,用户可以非常方便的安装和使用 Prometheus 并且能够非常方便的对其进行扩展。

在Prometheus的架构设计中,Prometheus Server 并不直接服务监控特定的目标,其主要任务负责数据的收集,存储并且对外提供数据查询支持。因此为了能够能够监控到某些东西,如主机的CPU使用率,我们需要使用到Exporter。Prometheus周期性的从Exporter暴露的HTTP服务地址(通常是/metrics)拉取监控样本数据。

Exporter可以是一个相对开放的概念,其可以是一个独立运行的程序独立于监控目标以外,也可以是直接内置在监控目标中。只要能够向Prometheus提供标准格式的监控样本数据即可。

1 环境配置

我们在 Windows 下安装 Prometheus。

1.1 安装 Prometheus

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

选择 Windows 安装包,我选择的是prometheus-2.41.0.windows-amd64, 下载完成后解压,直接运行 prometheus.exe 即可。

prometheus默认端口是9090,在浏览器访问:http://localhost:9090,即可看到项目已经在运行。

Prometheus 的相关配置可以在 prometheus.yaml 中修改。

1.2 安装 NodeExporter

NodeExporter 是 Prometheus 提供的一个可以采集到主机信息的应用程序,它能采集到机器的 CPU、内存、磁盘等信息。

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

选择 Windows 版本,我选择的是windows_exporter-0.20.0-amd64,下载完成后直接运行 windows_exporter-0.20.0-amd64.exe 文件即可。

windows_exporter默认端口是9182,通过浏览器访问:http://localhost:9182/metrics,

可以看到当前 node exporter 获取到的当前主机的所有监控数据。 其中 HELP 用于解释当前指标的含义,TYPE 则说明当前指标的数据类型。

2 添加数据源

编辑 prometheus 的配置文件 prometheus.yml,将scrape_configs修改为如下内容:

scrape_configs:

  - job_name: "prometheus"
    static_configs:
      - targets: ["localhost:9090"]
      
  # node exporter 监控源
  - job_name: 'prometheus2'
    static_configs:
      - targets: ['localhost:8080']

即配置了两个任务。一个名为 prometheus,其从「localhost:9090」地址读取数据。另一个名为 prometheus2,其从「localhost:8080」地址读取数据。 然后重启 Prometheus。

浏览器访问:http://localhost:9090,在搜索框输入up,点击execute,即可看到我们配置的两个任务:

3 自定义写入的数据

新建 SpringBoot 项目。完整项目地址:

GitHub地址:https://github.com/Snowstorm0/learn-prometheus

Gitee地址:https://gitee.com/Snowstorm0/learn-prometheus

在 service 层编写插入数据的代码:

public void insertPrometheus() {
    meterRegistry.clear();
    setIdList();
    setNameMap();
    setValueMap();
    for (String id : idList) {
        List

在 controller 层编写读取的代码:

@RequestMapping(value = "/metric/custom", method = RequestMethod.GET,produces = "text/plain; charset=utf-8")
public Object metric() {
	return prometheusMeterRegistry.scrape();
}

用浏览器或者Postman访问: http://localhost:8081/metric/custom

可以看到写入的数据:

# HELP insertPrometheus  
# TYPE insertPrometheus gauge
insertPrometheus{id="1002",name="钱二",} 1002.0
insertPrometheus{id="1001",name="赵一",} 1001.0
insertPrometheus{id="1003",name="孙三",} 1003.0

这里的数据是放在本地的,可以供 Prometheus 读取。

4 更新数据

在 service 层编写插入数据的代码:

public void updatePrometheus() {
    String name = "updatePrometheus";
    List

用浏览器或者Postman访问: http://localhost:8081/metric/custom

可以看到写入的数据:

updatePrometheus{id="1001",name="测试更新",} 1.0

学习更多编程知识,请关注我的公众号:

[代码的路]

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • JAVA
    +关注

    关注

    20

    文章

    3006

    浏览量

    116828
  • Prometheus
    +关注

    关注

    0

    文章

    36

    浏览量

    2072
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    MES模型静态测试工具更新信息 01/2026

    MES模赛思很高兴为您带来最新的MES工具更新信息。MXAM、MoRe和MQC的最新版本已经为您下载安装做好了准备。
    的头像 发表于 03-04 19:33 702次阅读
    MES模型静态测试工具更新信息 01/2026

    使用Prometheus和Grafana的企业级监控落地实战

    生产环境跑着几百台机器,出了故障全靠人肉巡检和用户反馈,这种被动运维的日子我们团队经历了两年。2019年开始全面切换到Prometheus+Grafana体系,到现在稳定运行了五年多,监控覆盖了主机、容器、中间件、业务指标四个层面,日均采集指标点超过2000万。
    的头像 发表于 02-27 10:58 397次阅读

    Prometheus告警规则编写与Alertmanager通知配置实战

    监控系统搭完了,指标也采集上来了,但如果没有告警,等于白搭。我见过不少团队Prometheus跑得好好的,Grafana大屏也挂在墙上,结果凌晨3点数据库磁盘写满了,第二天早上用户投诉才发现。监控不闭环,就是摆设。
    的头像 发表于 02-26 16:35 561次阅读

    使用VictoriaMetrics的Prometheus远程存储方案

    Prometheus单机存储在生产环境跑到一定规模就会碰壁——单节点磁盘容量有限,TSDB默认保留15天数据,想存半年以上的监控数据基本不现实。更麻烦的是Prometheus没有原生的高可用方案
    的头像 发表于 02-26 16:30 405次阅读

    OpenClaw对接聊天APP及AI助手工具

    OpenClaw对接聊天APP及AI助手工具 1、对接飞书聊天APP openclaw配置 此处以飞书为例,输入插件下载安装命令: openclaw plugins install
    的头像 发表于 02-06 16:13 1972次阅读
    OpenClaw对接聊天APP及AI助手工具

    CW32系列MCU在Eclipse GCC + JLink下的使用示例分享

    CW32系列MCU在Eclipse GCC + JLink下的使用示例: 1、下载安装Eclipse IDE for Embedded C/C++ Developers。 2、下载安装
    发表于 02-02 06:57

    MES工具更新信息 04/2025

    MES模赛思很高兴为您带来最新的MES工具更新信息。MXAM、MoRe和MQC的最新版本已经为您下载安装做好了准备。
    的头像 发表于 10-29 11:06 694次阅读
    MES工具更新信息 04/2025

    在Ubuntu上安装iverilog 12.0方法

    安装步骤如下: 1、打开终端并更新软件包列表: 复制代码:sudo apt update 2、下载安装编译iverilog 12.0需要的依赖项: 复制代码:sudo apt install
    发表于 10-24 12:24

    烧录工具操作教程:新手也能快速掌握~

    Luatools 下载安装 参考此链接章节一下载安装 Luatools 工具:https://docs.openluat.com/air780epm/common/Luatools/, 安装过程请记住
    的头像 发表于 09-26 19:20 1306次阅读
    烧录工具操作教程:新手也能快速掌握~

    Zabbix与Prometheus运维监控系统的对比

    在当今云原生和微服务架构盛行的时代,监控系统已成为运维工程师不可或缺的核心工具。面对市场上众多监控解决方案,Zabbix和Prometheus作为两大主流选择,各自拥有独特的优势和适用场景。本文将从架构设计、性能表现、功能特性、运维成本等多个维度进行深入对比,为你的监控系统选型提供专业指导。
    的头像 发表于 09-18 14:57 824次阅读

    如何构建高可用Prometheus监控体系

    在云原生时代,传统监控工具已经无法满足微服务架构的复杂需求。Prometheus凭借其Pull模式、多维数据模型和强大的查询语言PromQL,成为了CNCF毕业项目中的监控标杆。
    的头像 发表于 08-01 09:10 1011次阅读

    【VisionFive 2单板计算机试用体验】安装openplc

    :VisionFive2/Engineering Release/202409/debian-packs/openplc.zip 1.3、安装软件 下载安装包复制到开发板/home/user下,并解压
    发表于 07-15 23:30

    【搬运】Altium Designer的下载安装,汉化

    ❶【Altium Designer】☇点击下方链接获取:https://mp.weixin.qq.com/mp/appm ... 3421678165678915587 Altium Designer的各版本下载安装,汉化
    发表于 05-16 17:24

    详解Prometheus的数据类型

    对于 Prometheus 生态的监控系统,PromQL 是必备技能,本文着重点讲解这个查询语言,掺杂一些生产实践场景,希望对你有所帮助。
    的头像 发表于 05-13 09:50 1586次阅读
    详解<b class='flag-5'>Prometheus</b>的数据类型

    在官网上下载的在linux之下使用的canmvide如何安装

    在官网上下载的在linux之下使用的canmvide如何安装,有没有安装手册呢? 期待结果和实际结果
    发表于 04-29 06:24