Prometheus-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@4829330363bebuild date:       20231004-10:31:16go version:       go1.21.1platform:         linux/amd64tags:             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.hqwc.cn/news/132839.html

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

相关文章

Matlab之数组、包含分配给类别的值函数categorical

一、功能 categorical 是为一组有限的离散类别(例如 High、Med 和 Low)赋值的数据类型。这些类别可以采用您指定的数学排序,例如 High > Med > Low,但这并非必须。分类数组可用来有效地存储并方便地处理非数值数据&#xf…

SpringBoot 接口 字节数组直接显示为图片

源码: import java.io.ByteArrayOutputStream; import javax.imageio.ImageIO; import org.springframework.web.bind.annotation.RequestMapping;/*** 获取二维码图像* 二维码支付** param price 金额* return 二维码图像* throws IOException IOException*/ Requ…

c#设计模式-行为型模式 之 迭代器模式

🚀简介 提供一个对象来顺序访问聚合对象中的一系列数据,而不暴露聚合对象的内部表示。 迭代器模式主要包含以下角色: 抽象聚合(Aggregate)角色:定义存储、添加、删除聚合元素以及创建迭代器对象的接口…

github Release 下载加速,绿色合法,遥遥领先

你有没有这样一个困惑,当你寻找了很久终于找到一个解决问题的方案,发现这个工具在 GitHub 上,接下来等待我们的就是遥遥无期的龟速下载。 文章目录 前言下载测试加速下载操作 视频讲解 遥遥领先 前言 GitHub 作为程序员的知识宝库&#xff…

DetailView/货币详情页 的实现

1. 创建货币详情数据模型类 CoinDetailModel.swift import Foundation// JSON Data /*URL:https://api.coingecko.com/api/v3/coins/bitcoin?localizationfalse&tickersfalse&market_datafalse&community_datafalse&developer_datafalse&sparklinefalseR…

本文整理了Debian 11在国内的几个软件源。

1.使用说明 一般情况下,将/etc/apt/sources.list文件中Debian默认的软件仓库地址和安全更新仓库地址修改为国内的镜像地址即可,比如将deb.debian.org和security.debian.org改为mirrors.xxx.com,并使用https访问,可使用…

保护互联网数据安全:关键方法与最佳实践

在当今数字化时代,互联网数据安全已经成为个人、企业和组织的首要任务之一。随着信息技术的迅猛发展,网络威胁也不断演进,因此保护互联网数据安全变得尤为关键。本文将介绍一些关键方法和最佳实践,帮助您确保互联网数据的安全性。…

webstorm自定义文件模板(Vue + Scss)

最终效果如下&#xff1a; 具体配置如下&#xff1a; 新增文件代码如下&#xff1a; <!--* Description: ${COMPONENT_NAME} 页面* Author: mhf* Date: ${DATE} --> <template><div>${COMPONENT_NAME} </div> </template><script&g…

JVM源码剖析之线程的创建过程

说在前面&#xff1a; 对于Java线程的创建这个话题&#xff0c;似乎已经被"八股文"带偏&#xff5e; 大部分Java程序员从"八股文"得知创建Java线程有N种方式&#xff0c;比如new Thread、new Runnable、Callable、线程池等等&#xff5e; 而笔者写下这篇文…

Maven 构建配置文件

目录 构建配置文件的类型 配置文件激活 配置文件激活实例 1、配置文件激活 2、通过Maven设置激活配置文件 3、通过环境变量激活配置文件 4、通过操作系统激活配置文件 5、通过文件的存在或者缺失激活配置文件 构建配置文件是一系列的配置项的值&#xff0c;可以用来设置…

【深度学习实验】卷积神经网络(七):实现深度残差神经网络ResNet

目录 一、实验介绍 二、实验环境 1. 配置虚拟环境 2. 库版本介绍 三、实验内容 0. 导入必要的工具包 1. Residual&#xff08;残差连接&#xff09; __init__&#xff08;初始化&#xff09; forward&#xff08;前向传播&#xff09; 2. resnet_block&#xff08;残…

Kotlin函数作为参数指向不同逻辑

Kotlin函数作为参数指向不同逻辑 fun sum(): (Int, Int) -> Int {return { a, b -> (a b) } }fun multiplication(): (Int, Int) -> Int {return { a, b -> (a * b) } }fun main(args: Array<String>) {var math: (Int, Int) -> Intmath sum()println(m…