Prometheus-Prometheus安装及其配置

news2024/11/16 3:43:46

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

我们可以将默认的配置文件拷贝到/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.coloradmin.cn/o/1084857.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

四款数字办公工具大比拼,在线办公无压力

在线办公软件使企业、员工实现办公场所、距离的自由,尤其是近几年,受“口罩”的影响,远程办公软件的使用者也越来越多,无论是财务、行政、还是设计师,都开始追求好用的在线办公软件,作为办公软件发烧友&…

发送消息时序图

内窥镜消息队列发送消息原理 目的 有一个多线程的Java应用程序,使用消息队列来处理命令 时序图 startumlactor User participant "sendCmdWhiteBalance()" as Controller participant CommandConsumer participant MessageQueueUser -> Controller:…

​左手 Serverless,右手 AI,7 年躬身的古籍修复之路

作者:宋杰 “AI 可以把我们思维体系当中,过度专业化、过度细分的这些所谓的知识都替代掉,让我们集中精力去体验自己的生命。我挺幸运的,代码能够有 AI 辅助,也能够有 Serverless 解决我的运营成本问题。Serverless 它…

mybatis拦截器源码分析

mybatis拦截器源码分析 拦截器简介 mybatis Plugins 拦截器由于Mybatis对数据库访问与操作进行了深度的封装,让我们应用开发效率大大提高,但是灵活度很差拦截器的作用:深度定制Mybatis的开发抛出一个需求 :获取Mybatis在开发过程中执行的SQL语句(执行什么操作获取那条SQL语句…

RK3562开发板:升级摄像头ISP,突破视觉体验边界

RK3562开发板作为深圳触觉智能新推出的爆款产品,采用 Rockchip 新一代 64 位处理器 RK3562(Quad-core ARM Cortex-A53,主频最高 2.0GHz),最大支持 8GB 内存;内置独立的 NPU,可用于轻量级人工智能…

谷歌浏览查询http被自动转化成https导致页面读取失败问题处理

原因: 谷歌浏览器版本升级,安全问题考虑自动转化https 解决方案: 一、打开配置页面: chrome://flags/ 二、禁止自动转化

vue3_setup基础_渲染函数(ref,reactive)

一、setup语法糖 是什么:组合式Api (vue2为option Api) 来解决什么问题:使用(data,computed,methonds,watch)组件选项来组织逻辑通常都很有效。然而,当我们组件变的更大的时候,逻辑…

ansible的介绍安装与模块

目录 一、ansible简介 二、ansible特点 三、Ansible核心组件与工作原理 1、核心组件 2、工作原理 四、ansible的安装 五、ansible 命令行模块 1.command 模块 2.shell 模块 3.cron 模块 4.user 模块 5.group 模…

01 时钟配置初始化,debug

1. 开启debug series,否则只能下载一次,再次下载要配置boot 2.f0外部时钟配置 h750 配置 实测可用

股票印花税如何征收,万一免五的低费率成本计算以及券商选择

印花税国家收的,不管是深市沪市都收,如下图所示,可以看到,证券交易印花税自2008年9月之后改为单向收取,今年8月份更是降到了0.05%,也就是万分之5,以现在的视角看历史,在最早90年的千…

【数据结构】算法的空间复杂度

🦄个人主页:修修修也 🎏所属专栏:数据结构 ⚙️操作环境:Visual Studio 2022 算法空间复杂度的定义 算法的时间复杂度和空间复杂度是度量算法好坏的两个重要量度,在实际写代码的过程中,我们完全可以用空间来换时间,比如说,我们要判断某某年是不是闰年,大…

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

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

【Proteus仿真】【51单片机】智能语音家居陪护机器人

文章目录 一、功能简介二、软件设计三、实验现象联系作者 一、功能简介 本项目使用Proteus8仿真51单片机控制器,使用OLED液晶、按键、蜂鸣器、DS18B20温度传感器、人体红外传感器、语音识别模块、继电器、风扇、LED等。 主要功能: 系统运行后&#xff0…

Kafka生产者使用案例

1.生产者发送消息的过程 首先介绍一下 Kafka 生产者发送消息的过程: 1)Kafka 会将发送消息包装为 ProducerRecord 对象, ProducerRecord 对象包含了目标主题和要发送的内容,同时还可以指定键和分区。在发送 ProducerRecord 对象前&#xff0c…

FPGA面试题(7)

一.解释一下SPI的四种模式 01时钟极性CPOL空闲状态为低电平空闲状态为高电平时钟相位CPHA在第一个跳变沿采样在第二个跳变沿采样 模式CPOLCPHA描述模式000sclk上升沿采样,sclk下降沿发送模式101sclk上升沿发送,sclk下降沿采样模式210sclk上升沿发送&…

解决nav2_bringup tb3_simulation_launch.py 无法启动Gazebo的问题

方法 1 断网再开gazebo. 评价: 方便且有效, 但来回联网很麻烦 参考: https://blog.csdn.net/James___H/article/details/116906217 方法 2 断网能打开是因为gazebo软件开启时会自动从网络下载模型,下载过程必然漫长, 另外你懂的, 网络问题嘛, vpn也解决不了的话…

jmeter压测记录、使用方法

jmeter压测记录、使用方法 1、非gui方式执行压测命令2、压测命令输出解读 1、非gui方式执行压测命令 sh jmeter.sh -n -t test.jmx -l result.jtl2、压测命令输出解读 Active: 10 Started: 10 Finished: 0 Active: 10 表示一共10个活动(正在进行的压测线程&#…

基于Cl2/BCl3电感偶联等离子体的氮化镓干蚀特性

引言 氮化镓(GaN)具有六方纤锌矿结构,直接带隙约为3.4eV,目前已成为实现蓝光发光二极管(led)的主导材料。由于GaN的高化学稳定性,在室温下用湿法化学蚀刻来蚀刻或图案化GaN是非常困难的。与湿法蚀刻技术相比,干法蚀刻技术可以提供…

前端axios下载导出文件工具封装

使用示例: import { fileDownload } from /utils/fileDownloadfileDownload({ url: process.env.VUE_APP_BASE_URL /statistic/pageList/export, method: post, data: data })工具类: import store from ../store/index import {getAccessToken } fro…

【Lombok的Bug记录】前端传的有值,但是到后端就全为空了

项目场景: 项目背景:使用Data注解标注类 问题描述 前端传的有值,但是到后端就全为空了 原因分析: AName和aName生成的set方法名是一样的,所以换名字就行了! 解决方案: 属性不要写成xXxx的形式…