Prometheus-Prometheus安装及其配置

news/2024/5/18 21:51:18 标签: prometheus, 监控, 服务监控, 云原生监控

Prometheus-Prometheus安装及其配置

  • Prometheus安装
    • 下载
    • 解压
  • 配置
  • 启动prometheus
    • 校验配置文件
    • 表达式浏览器

Prometheus安装

Prometheus的安装针对Linux的安装,其他的安装方式可以查看Prometheus官网

下载

sudo wget https://github.com/prometheus/prometheus/releases/download/v2.47
.1/prometheus-2.47.1.linux-amd64.tar.gz

解压

sudo tar -zxvf prometheus-2.47.1.linux-amd64.tar.gz

解压之后的目录如下:
在这里插入图片描述
解压之后,我们可以将prometheus命令拷贝到/usr/local/bin下

sudo cp prometheus-2.47.1.linux-amd64/prometheus /usr/local/bin/

查看是否安装成功:

$ prometheus --version
prometheus, version 2.47.1 (branch: HEAD, revision: c4d1a8beff37cc004f1dc4ab9d2e73193f51aaeb)
  build user:       root@4829330363be
  build date:       20231004-10:31:16
  go version:       go1.21.1
  platform:         linux/amd64
  tags:             netgo,builtinassets,stringlabels

输入版本信息,说明安装成功!

配置

在安装完prometheus之后,我们之前解压的目录中有一个prometheus.yaml文件,这个是prometheus的相关配置文件。Prometheus通过YAML文件来配置。Prometheus自带默认的配置文件prometheus.yml,内容如下:

# 控制Prometheus服务器行为的全局配置
global:
  scrape_interval: 15s # 指定应用程序或服务抓取数据的时间间隔(默认是15秒)。这个值是时间序列的颗粒度, 即该序列中每个数据点所覆盖的时间段。
  evaluation_interval: 15s # 指定Prometheus评估规则的频率。目前主要有两种规则: 记录规则(recording rule)和警报规则(alerting rule)
  # scrape_timeout is set to the global default (10s).

# 用来设置Prometheus的警报
alerting:
  alertmanagers:
    - static_configs: #表示要手动指定在targets数组中配置的Alertmanager
        - targets:
          # - alertmanager:9093

# 指定包含记录规则或警报规则的文件列表
rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"

# 指定Prometheus抓取的所有目标
scrape_configs:
  # 作业prometheus只有一个监控目标: Prometheus服务器自身。 它从本地的9090端口抓取数据并返回服务器的健康指标
  - job_name: "prometheus"

    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.

    static_configs:
      - targets: ["localhost:9090"]
  • 记录规则: 允许预先计算使用频繁且开销大的表达式, 并将结果保存为一个新的时间序列数据。
  • 警报规则: 允许定义警报条件
  • 警报是由名为Alertmanager的独立工具进行管理的。 Alertmanager是一个可以集群化的独立警报管理工具

prometheus_66">启动prometheus

我们可以将默认的配置文件拷贝到/etc相关目录下进行统一管理

$ sudo mkdir /etc/prometheus
/usr/local/prometheus/prometheus-2.47.1.linux-amd64$ sudo cp prometheus.yml /etc/prometheus/

我们启动的时候就可以通过–config.file选项进行指定对应的配置文件

$ /usr/local/prometheus$ sudo prometheus --config.file "/etc/prometheus/prometheus.yml"

在这里插入图片描述
我们可以访问http://localhost:9090/metrics进行查看
在这里插入图片描述
有上面的截图可用看到相关的指标信息
go_gc_duration_seconds{quantile="0.5"} 0.000321623
指标的名称是go_gc_duration_seconds, 里面有一个标签quantile="0.5", 表示这衡量的是第50 百分位数0.000321623是这个指标的值

校验配置文件

我们在解压文件中promtool工具,可以通过promtool进行检验配置文件是否正确

$ sudo ./promtool check config prometheus.yml

在这里插入图片描述
证明相关的配置文件是可用的。

表达式浏览器

prometheus默认给我提供了一个表达式地址,默认为http://localhost:9090/graph,访问如下:
在这里插入图片描述
可以通过Prometheus表达式浏览器和Web界面看到其他有用的信息, 例如目标的状态以及Prometheus服务器的规则和配置。
我们可用搜索对应的指标,如下我们搜索go_gc_duration_seconds的指标
在这里插入图片描述
默认是Table的展示形式,我们展示图标的方式,就是Graph
在这里插入图片描述
go_gc_duration_seconds{instance="localhost:9090", job="prometheus", quantile="0.5"}
第一个新标签instance是我们抓取指标的目标, 第二个标签job则是抓取指标的作业名称。 标签为指标提供了不同的维度, 允许我们查询或使用单个/多个指标。
在进行查询的时候,prometheus也为我们提供了PromQL表达式语言进行查询相关指标。
在这里插入图片描述
PromQL查询语言中的表达式可以返回的四种数据类型

  • Instant vector - 一组时间序列,包含每个时间序列的单个样本,所有时间序列共享相同的时间戳
  • Range vector - 一组时间序列,其中包含每个时间序列随时间变化的数据点范围
  • Scalar - 一个简单的数字浮点值
  • String - 简单的字符串值;目前未使用

http://www.niftyadmin.cn/n/5083565.html

相关文章

聊一聊 Spring 6 面向切面AOP

Java全能学习面试指南:https://javaxiaobear.cn 今天我们一起看看Spring AOP的相关操作! 1、场景模拟 搭建子模块:spring6-aop 1.1、声明接口 声明计算器接口Calculator,包含加减乘除的抽象方法 public interface Calculator…

【FreeRTOS】【STM32】04.0 FreeRTOS的使用1(创建单任务—SRAM静态内存)

我打算学习FreeRTOS时先学习如何使用它,然后再逐步展开。 RTOS 系统的核心就是任务管理 初步上手 RTOS 系统首先必须掌握任务的创建、删除、挂起和恢复等操作 任务三要素 任务主体函数,任务栈,任务控制块是一个任务的三要素 定义任务函数…

基于Vue构建的快速开发框架

一、Vue结合低代码 "低代码"是一种快速开发应用的方法,它使开发者能够通过图形界面和预构建的块进行设计和构建,而不是手动编写大量的代码。这种方法被广泛用于快速应用开发、移动应用开发、业务流程管理和数据库应用开发等领域。 Vue.js 是一…

一文了解 Go 接口

如果本文对你有帮助,不妨点个赞,如果你是 Go 语言初学者,不妨点个关注,一起成长一起进步,如果本文有错误的地方,欢迎指出 接口 在 Go 语言中,接口是一种抽象的类型,是一组方法的集…

如何使用 CloudQuery 对 100+ 套数据库进行安全管控?

业务挑战 A 集团信息部门发展将近 10 年,从最初的一个 MySQL 数据库到现在鱼龙混杂什么数据库都有,其中仓库部门用了 PostgreSQL 做数据底座,历史原因问题,生产系统却是使用 Oracle。基于信创的需求,上级领导要求试点…

物业巡检系统能做什么?物业服务如何提升管理效率?

随着科技的快速发展,物业管理行业也在寻求着更加高效、智能化的解决方案,以应对日益复杂的设备和环境巡检上的需求。目前传统的纸质巡检方式已经无法满足现代物业管理的要求,“的修”工单管理系统应运而生,它通过数字化、智能化的…

如何有效改进erp管理系统?erp管理系统改进建议方向

前言: 说到erp,全称是企业资源计划,这可是企业管理的大杀器,也是现在企业管理的必备神器。它的出身可以追溯到上世纪90年代,那时候的企业管理可是个大难题,各种资源调配不灵光,企业主们急需一种…

【每日一题】151. 反转字符串中的单词

151. 反转字符串中的单词 - 力扣(LeetCode) 给你一个字符串 s ,请你反转字符串中 单词 的顺序。 单词 是由非空格字符组成的字符串。s 中使用至少一个空格将字符串中的 单词 分隔开。 返回 单词 顺序颠倒且 单词 之间用单个空格连接的结果字符…