在ubuntu上编译prometheus

news/2024/5/18 22:51:30 标签: ubuntu, prometheus, linux

大纲

  • 系统环境
  • 编译环境
    • 默认的版本
      • Golang
      • Nodejs
      • NPM
    • 更新Nodejs和NPM
      • Nodejs
      • NPM
  • 编译
  • 运行

prometheus的编译并不难,核心是要将编译环境配置到符合要求的地步,否则就会出现各种错误,而且难以排查。
我们主要需要关心go、npm和nodejs的版本
以下步骤亲测有效。

系统环境

使用下面指令升级软件(非必要)

sudo apt update
sudo apt upgrade

升级过后我的系统环境信息如下

cat /proc/version

Linux version 5.15.0-101-generic (buildd@lcy02-amd64-031) (gcc (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0, GNU ld (GNU Binutils for Ubuntu) 2.34) #111~20.04.1-Ubuntu SMP Mon Mar 11 15:44:43 UTC 2024

这一步主要是为了展现我的实验环境。

编译环境

安装各种代码拉取和编译过程中的工具

sudo apt install git
sudo snap install go --classic
sudo apt install nodejs
sudo apt install npm

默认的版本

Golang

go version

go version go1.22.1 linux/amd64

Nodejs

node --version

v10.19.0

NPM

npm version

{ npm: ‘6.14.4’,
ares: ‘1.15.0’,
brotli: ‘1.0.7’,
cldr: ‘36.1’,
http_parser: ‘2.9.3’,
icu: ‘66.1’,
modules: ‘64’,
napi: ‘5’,
nghttp2: ‘1.40.0’,
node: ‘10.19.0’,
openssl: ‘1.1.1f’,
tz: ‘2024a’,
unicode: ‘13.0’,
uv: ‘1.34.2’,
v8: ‘6.8.275.32-node.55’,
zlib: ‘1.2.11’ }

更新Nodejs和NPM

上述nodejs和npm的版本比较老,需要我们手动升级它们。

sudo npm install -g n
sudo n lts
sudo n prune

重启终端,执行下面指令

npm install -g npm@latest

Nodejs

node --version

v20.12.0

NPM

npm version

{
npm: ‘10.5.0’,
node: ‘20.12.0’,
acorn: ‘8.11.3’,
ada: ‘2.7.6’,
ares: ‘1.27.0’,
base64: ‘0.5.2’,
brotli: ‘1.1.0’,
cjs_module_lexer: ‘1.2.2’,
cldr: ‘44.1’,
icu: ‘74.2’,
llhttp: ‘8.1.1’,
modules: ‘115’,
napi: ‘9’,
nghttp2: ‘1.60.0’,
nghttp3: ‘0.7.0’,
ngtcp2: ‘0.8.1’,
openssl: ‘3.0.13+quic’,
simdutf: ‘4.0.8’,
tz: ‘2024a’,
undici: ‘5.28.3’,
unicode: ‘15.1’,
uv: ‘1.46.0’,
uvwasi: ‘0.0.20’,
v8: ‘11.3.244.8-node.19’,
zlib: ‘1.3.0.1-motley-40e35a7’
}

编译

git clone https://github.com/prometheus/prometheus.git
cd prometheus
make build

编译过程比较漫长,需要耐心等待。

运行

./prometheus --config.file=./documentation/examples/prometheus.yml 

在浏览器中打开http://localhost:9090
可以看到页面如下,说明编译和运行没有问题。
在这里插入图片描述


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

相关文章

springboot项目

controller层: 方式1: 方式2: springboot-02-config: 从配置文件注入值 ConfigurationProperties(prefix "person") 将配置文件中配置的每一个属性的值,映射到这个组件中; 告诉SpringBoot将本类中的所有属…

蓝桥杯算法赛(二进制王国)

问题描述 二进制王国是一个非常特殊的国家,因为该国家的居民仅由 0 和 1 组成。 在这个国家中,每个家庭都可以用一个由 0 和 1 组成的字符串 S 来表示,例如 101、 000、 111 等。 现在,国王选了出 N 户家庭参加邻国的庆典…

基于Givens旋转完成QR分解进而求解实矩阵的逆矩阵

基于Givens旋转完成QR分解进而求解实矩阵的逆矩阵 目录 前言 一、Givens旋转简介 二、Givens旋转解释 三、Givens旋转进行QR分解 四、Givens旋转进行QR分解数值计算例子 五、求逆矩阵 六、MATLAB仿真 七、参考资料 总结 前言 在进行QR分解时,HouseHolder变换…

7.JDK下载和安装

文章目录 一、下载二、安装三、JDK的安装目录介绍 写JAVA代码不是随随便便能写的,我们得先做一点准备工作。例如,我们平时想要玩一把游戏,就需要先下载、安装才能玩游戏。JAVA也是一样的,也是需要下载并安装相关的软件&#xff0c…

C++ 控制语句(一)

一 顺序结构 程序的基本结构有三种: 顺序结构、分支结构、循环结构 大量的实际问题需要通过各种控制流程来解决。 1.1 顺序结构 1.2 简单语句和复合语句 二 循环 2.1 for循环 语句流程图 注意:使用for语句的灵活性 三 while语句 四 do while语句

STM32串口收发单字节数据原理及程序实现

线路连接: 显示屏的SCA接在B11,SCL接在B10,串口的RX连接A9,TX连接A10。 程序编写: 在上一个博客中实现了串口的发送代码,这里实现串口的接收代码,在上一个代码的基础上增加程序功能。 Seiral.…

代码随想录算法训练营第二十一天| 530.二叉搜索树的最小绝对差,501.二叉搜索树中的众数,236. 二叉树的最近公共祖先

题目与题解 530.二叉搜索树的最小绝对差 题目链接:530.二叉搜索树的最小绝对差 代码随想录题解:530.二叉搜索树的最小绝对差 视频讲解:二叉搜索树中,需要掌握如何双指针遍历!| LeetCode:530.二叉搜索树的最…

【完整版!YOLOv9论文翻译】

目录 摘要1 引言2 相关工作2.1 实时目标检测2.2 可逆架构2.3 辅助监督 3 问题陈述3.1 信息瓶颈原理3.2 可逆函数 4 方法4.1 可编程梯度信息(PGI)4.1.1 辅助可逆分支4.1.2 多层次辅助信息 4.2 通用高效层聚合网络 Generalized ELAN 5 实验5.1 实验设置5.2…