prometheus二进制安装

1、在需要安装prometheus的目录下执行wget命令下载软件到本地,如我的路径是/opt/module/prometheus

wget https://github.com/prometheus/prometheus/releases/download/v2.34.0/prometheus-2.34.0.linux-amd64.tar.gz

正在解析主机 objects.githubusercontent.com (objects.githubusercontent.com)... 185.199.108.133, 185.199.111.133, 185.199.109.133, ...
正在连接 objects.githubusercontent.com (objects.githubusercontent.com)|185.199.108.133|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:76299772 (73M) [application/octet-stream]
正在保存至: “prometheus-2.34.0.linux-amd64.tar.gz”

100%[========================================================================================>] 76,299,772  15.7MB/s 用时 5.3s   

2023-12-24 11:51:25 (13.9 MB/s) - 已保存 “prometheus-2.34.0.linux-amd64.tar.gz” [76299772/76299772])

表示下载已完成
查看

[root@ambari-hadoop1 prometheus]# ll
总用量 74512
-rw-r--r-- 1 root root   76299772 315 2022 prometheus-2.34.0.linux-amd64.tar.gz

解压

[root@ambari-hadoop1 prometheus]# tar -zxvf prometheus-2.34.0.linux-amd64.tar.gz 
prometheus-2.34.0.linux-amd64/
prometheus-2.34.0.linux-amd64/consoles/
prometheus-2.34.0.linux-amd64/consoles/index.html.example
prometheus-2.34.0.linux-amd64/consoles/node-cpu.html
prometheus-2.34.0.linux-amd64/consoles/node-disk.html
prometheus-2.34.0.linux-amd64/consoles/node-overview.html
prometheus-2.34.0.linux-amd64/consoles/node.html
prometheus-2.34.0.linux-amd64/consoles/prometheus-overview.html
prometheus-2.34.0.linux-amd64/consoles/prometheus.html
prometheus-2.34.0.linux-amd64/console_libraries/
prometheus-2.34.0.linux-amd64/console_libraries/menu.lib
prometheus-2.34.0.linux-amd64/console_libraries/prom.lib
prometheus-2.34.0.linux-amd64/prometheus.yml
prometheus-2.34.0.linux-amd64/LICENSE
prometheus-2.34.0.linux-amd64/NOTICE
prometheus-2.34.0.linux-amd64/prometheus
prometheus-2.34.0.linux-amd64/promtool

解压后查看

[root@ambari-hadoop1 prometheus]# ll
总用量 74512
drwxr-xr-x 4 3434 3434      132 315 2022 prometheus-2.34.0.linux-amd64
-rw-r--r-- 1 root root 76299772 315 2022 prometheus-2.34.0.linux-amd64.tar.gz

删除压缩文件

[root@ambari-hadoop1 prometheus]# rm -rf prometheus-2.34.0.linux-amd64.tar.gz 

2、创建开机启动项

vim /usr/lib/systemd/system/prometheus.service

配置内容如下

[Unit]
Description=prometheus
Documentation=https://prometheus.io/
After=network.target

[Service]
Type=simple
User=root
Group=root
ExecStart=/opt/module/prometheus/prometheus-2.34.0.linux-amd64/prometheus --config.file=/opt/module/prometheus/prometheus-2.34.0.linux-amd64/prometheus.yml
Restart=on-failure

[Install]
WantedBy=multi-user.target

设置自动启动:

$ systemctl enable prometheus

报错

[root@ambari-hadoop1 system]# systemctl enable prometheus
Failed to execute operation: File exists

原因:之前安装过prometheus,没有卸载干净
接下来卸载之前安装的prometheus文件
先查找

[root@ambari-hadoop1 system]# find / -name prometheus.service
/etc/systemd/system/multi-user.target.wants/prometheus.service
/usr/lib/systemd/system/prometheus.service

删除第一个文件,第二个文件是刚刚自己创建的prometheus.service

[root@ambari-hadoop1 system]#  rm -rf /etc/systemd/system/multi-user.target.wants/prometheus.service

再次查看

[root@ambari-hadoop1 system]# find / -name prometheus.service
/usr/lib/systemd/system/prometheus.service

设置开机启动

[root@ambari-hadoop1 system]# systemctl enable prometheus
Created symlink from /etc/systemd/system/multi-user.target.wants/prometheus.service to /usr/lib/systemd/system/prometheus.service.

启动服务并查看启动状态:

# 重新加载某个服务的配置文件
$ systemctl daemon-reload
# 启动prometheus
$ systemctl start prometheus
# 查看prometheus状态
$ systemctl status prometheus

[root@ambari-hadoop1 system]# systemctl status prometheus
● prometheus.service - prometheus
   Loaded: loaded (/usr/lib/systemd/system/prometheus.service; enabled; vendor preset: disabled)
   Active: active (running) since 日 2023-12-24 12:08:55 CST; 5s ago
     Docs: https://prometheus.io/
 Main PID: 3960 (prometheus)
    Tasks: 9
   Memory: 19.4M
   CGroup: /system.slice/prometheus.service
           └─3960 /opt/module/prometheus/prometheus-2.34.0.linux-amd64/prometheus --config.file=/opt/module/prometheus/promethe...

1224 12:08:55 ambari-hadoop1 prometheus[3960]: ts=2023-12-24T04:08:55.726Z caller=head.go:493 level=info component=tsd... any"
12月 24 12:08:55 ambari-hadoop1 prometheus[3960]: ts=2023-12-24T04:08:55.726Z caller=head.go:536 level=info component=tsd…=5.31µs
12月 24 12:08:55 ambari-hadoop1 prometheus[3960]: ts=2023-12-24T04:08:55.726Z caller=head.go:542 level=info component=tsd...hile"
1224 12:08:55 ambari-hadoop1 prometheus[3960]: ts=2023-12-24T04:08:55.727Z caller=head.go:613 level=info component=tsd...ent=0
1224 12:08:55 ambari-hadoop1 prometheus[3960]: ts=2023-12-24T04:08:55.727Z caller=head.go:619 level=info component=tsd…0.235µs
1224 12:08:55 ambari-hadoop1 prometheus[3960]: ts=2023-12-24T04:08:55.727Z caller=main.go:958 level=info fs_type=XFS_S...MAGIC
1224 12:08:55 ambari-hadoop1 prometheus[3960]: ts=2023-12-24T04:08:55.727Z caller=main.go:961 level=info msg="TSDB started"
1224 12:08:55 ambari-hadoop1 prometheus[3960]: ts=2023-12-24T04:08:55.727Z caller=main.go:1142 level=info msg="Loading...s.yml
12月 24 12:08:55 ambari-hadoop1 prometheus[3960]: ts=2023-12-24T04:08:55.728Z caller=main.go:1179 level=info msg="Completed lo…µs
1224 12:08:55 ambari-hadoop1 prometheus[3960]: ts=2023-12-24T04:08:55.728Z caller=main.go:910 level=info msg="Server i...sts."
Hint: Some lines were ellipsized, use -l to show in full.

3、访问prometheus页面查看 http协议+prometheus安装主机的ip地址+端口号

http://192.168.0.21:9090

在这里插入图片描述
在页面Status------>targets查看节点信息
在这里插入图片描述4、在本机上安装Node-exporter客户端采集数据
NodeExporter 是 Prometheus 官方提供的一个可以采集到主机信息的应用程序,它能采集到机器的 CPU、内存、磁盘等信息。作为基础的组件,一般在所有的节点都都会安装。
从prometheus官网找https://prometheus.io/download/ 获取最新的 Node Exporter 版本的二进制包:

https://prometheus.io/download/

在这里插入图片描述
下载node_exporter-1.7.0.linux-amd64.tar.gz

[root@ambari-hadoop1 node-exporter]# ll
总用量 10176
-rw-r--r-- 1 root root 10419253 1224 13:22 node_exporter-1.7.0.linux-amd64.tar.gz
[root@ambari-hadoop1 node-exporter]# pwd
/opt/module/prometheus/node-exporter

解压

[root@ambari-hadoop1 node-exporter]# pwd
/opt/module/prometheus/node-exporter
[root@ambari-hadoop1 node-exporter]# tar -zxvf node_exporter-1.7.0.linux-amd64.tar.gz 
node_exporter-1.7.0.linux-amd64/
node_exporter-1.7.0.linux-amd64/LICENSE
node_exporter-1.7.0.linux-amd64/node_exporter
node_exporter-1.7.0.linux-amd64/NOTICE
[root@ambari-hadoop1 node-exporter]# ll
总用量 10176
drwxr-xr-x 2 1001 1002       56 1113 08:03 node_exporter-1.7.0.linux-amd64
-rw-r--r-- 1 root root 10419253 1224 13:22 node_exporter-1.7.0.linux-amd64.tar.gz

在解压后的目录下后台运行

[root@ambari-hadoop1 node_exporter-1.7.0.linux-amd64]# pwd
/opt/module/prometheus/node-exporter/node_exporter-1.7.0.linux-amd64

运行node Exporter ,指定为8080端口运行


# 前台运行
$ ./node_exporter --web.listen-address 192.168.0.21:8080
# 后台运行
$ nohup ./node_exporter --web.listen-address 192.168.0.21:8080 >> nohup.out 2>&1 &
[root@ambari-hadoop1 node_exporter-1.7.0.linux-amd64]# pwd
/opt/module/prometheus/node-exporter/node_exporter-1.7.0.linux-amd64
[root@ambari-hadoop1 node_exporter-1.7.0.linux-amd64]# nohup ./node_exporter --web.listen-address 192.168.0.21:8080 >> nohup.out 2>&1 &
[1] 9032

查看node-exporter运行成功后的页面

http://192.168.0.21:8080

在这里插入图片描述
在这里插入图片描述
配置prometheus的监控数据源

现在我们运行了 Prometheus 服务器,也运行了业务数据源 NodeExporter。但此时 Prometheus 还获取不到任何数据,我们还需要配置下 prometheus.yml 文件,让其去拉取 Node Exporter 的数据

prometheus.yml并在 scrape_configs 节点下添加以下内容:

[root@ambari-hadoop1 prometheus-2.34.0.linux-amd64]# pwd
/opt/module/prometheus/prometheus-2.34.0.linux-amd64
[root@ambari-hadoop1 prometheus-2.34.0.linux-amd64]# ll
总用量 197372
drwxr-xr-x 2 3434 3434        38 315 2022 console_libraries
drwxr-xr-x 2 3434 3434       173 315 2022 consoles
drwxr-xr-x 2 root root         6 1224 12:01 data
-rw-r--r-- 1 3434 3434     11357 315 2022 LICENSE
-rw-r--r-- 1 3434 3434      3773 315 2022 NOTICE
-rwxr-xr-x 1 3434 3434 105137495 315 2022 prometheus
-rw-r--r-- 1 3434 3434       934 315 2022 prometheus.yml
-rwxr-xr-x 1 3434 3434  96946761 315 2022 promtool
[root@ambari-hadoop1 prometheus-2.34.0.linux-amd64]# 

修改路径下的prometheus.yml文件
下方为原先有的文件

[root@ambari-hadoop1 prometheus-2.34.0.linux-amd64]# vim prometheus.yml 

# Alertmanager configuration
alerting:
  alertmanagers:
    - static_configs:
        - targets:
          # - alertmanager:9093

# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"

# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: "prometheus"

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

    static_configs:
      - targets: ["localhost:9090"]

需要增加的配置文件


  - job_name: 'node-exporter'
    static_configs:
      - targets: ['localhost:8080']

修改后的配置文件

# Alertmanager configuration
alerting:
  alertmanagers:
    - static_configs:
        - targets:
          # - alertmanager:9093

# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"

# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: "prometheus"

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

    static_configs:
      - targets: ["localhost:9090"]

  - job_name: 'node-exporter'
    static_configs:
      - targets: ['localhost:8080']

注意:每次修改配置完成,用promtool检测配置文件是否正确

$ ./promtool check config ./prometheus.yml

[root@ambari-hadoop1 prometheus-2.34.0.linux-amd64]# ./promtool check config ./prometheus.yml
Checking ./prometheus.yml
 SUCCESS: ./prometheus.yml is valid prometheus config file syntax

重启prometheus

$  systemctl restart prometheus

在这里插入图片描述

重启后发现增加了node-exporter的信息,状态为up

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/267243.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Fireblock:为Dapp实现可编程隐私

1. 引言 Fireblock network为Cosmos生态应用链。并于2023年10月宣布完成pre-seed轮250万美金融资。 其定位为实现&#xff1a; 有条件解密可编程隐私 Fireblock使用的密码学方案有&#xff1a; distributed key generation&#xff08;DKG&#xff09;Identity-based encry…

华为云Stack 8.X 流量模型分析(二)

二、流量模型分析相关知识 1.vNIC ​ 虚拟网络接口卡(vNIC)是基于主机物理 NIC 的虚拟网络接口。每个主机可以有多个 NIC&#xff0c;每个 NIC 可以是多个 vNIC 的基础。 ​ 将 vNIC 附加到虚拟机时&#xff0c;Red Hat Virtualization Manager 会在虚拟机之间创建多个关联的…

MySQL创建member表失败

最近在做一个项目&#xff0c;在台式机上可以跑通&#xff0c;也测试了各个已完成的接口&#xff0c;提交到了GitHub后想着用宿舍的电脑跑一下&#xff0c;在测试member表相关接口时就出错了。报了SQL语法错误&#xff0c;但SQL语句很简单&#xff0c;就根据手机号查询不至于出…

Redux与React环境准备、实现counter(及传参)、异步获取数据

环境说明&#xff1a; 一&#xff1a;说明 在React中使用redux&#xff0c;官方要求安装两个其他插件&#xff1a;Redux Toolkit和react-redux 1. Redux ToolKit(RTK) - 官方推荐编写Redux逻辑的方式&#xff0c;是一套工具的集合集&#xff0c;简化书写方式 &#xff08;简化…

【ps】新手 学 PS一本通

第一章 添加图像边框 1. 导入一张图片 2.选择 图像-画布大小 例&#xff1a;原图&#xff1a;720x820 填写画布大小&#xff1a;820x920 可以增加一个100x100的边框。 画布扩展颜色是扩展的颜色。 标尺工具 视图>标尺 或者使用 CTRL R 网格工具 视图-显示-网格 …

JavaOOP篇----第十五篇

系列文章目录 文章目录 系列文章目录前言一、有没有可能两个不相等的对象有相同的hashcode二、拷贝和浅拷贝的区别是什么?三、static都有哪些用法?前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通…

【BBuf的CUDA笔记】十,Linear Attention的cuda kernel实现解析

欢迎来 https://github.com/BBuf/how-to-optim-algorithm-in-cuda 踩一踩。 0x0. 问题引入 Linear Attention的论文如下&#xff1a; Transformers are RNNs: Fast Autoregressive Transformers with Linear Attention&#xff1a;https://arxiv.org/pdf/2006.16236.pdf 。官方…

【docker】安装mysql

查看可用的 mysql版本 docker search mysql拉取 MySQL最新镜像 docker pull mysql:latest 查看镜像 docker images 运行容器 docker run -it -d --name mysql-demo -m 500m -p 3309:3306 -v /test1/mysql/data:/var/lib/mysql -v /test1/mysql/config:/etc/mysql/conf.d -…

python实现元旦多种炫酷高级倒计时_附源码【第19篇—python过元旦】

文章目录 &#x1f30d;python实现元旦倒计时 — 初级(控制台)⛅实现效果&#x1f30b;实现源码&#x1f31c;源码讲解 &#x1f30d;python实现元旦倒计时 — 中级(精美动态图)⛅实现效果&#x1f30b;实现源码&#x1f31c;源码讲解 &#x1f30d;python实现元旦倒计时 — 高…

32. 深度学习进阶 - Transfer Learning

Hi&#xff0c;你好。我是茶桁。 之前的课程中&#xff0c;咱们学习了CNN的原理&#xff0c;学习了pooling, fully connected是做什么的。还了解了理论上简单的模型也是可以做事情的&#xff0c;只不过在特定的一些情况下要解决问题的时候简单方法效果不太好&#xff0c;所以用…

STM32位带

GPIO_SetBits(GPIOF,GPIO_Pin_9);修改为PFout(9)1; GPIO_ResetBits(GPIOF,GPIO_Pin_9);修改为PFout(9)0; 位带的定义&#xff1a; 支持了位带操作后&#xff0c;可以使用普通的加载/存储指令来对单一的比特进行读写。在CM3 中&#xff0c;有两个区中实现了位带。其中一个是S…

算法通关村第十关—归并排序(黄金)

归并排序 一、归并排序原理 归并排序(MERGE-SORT)简单来说就是将大的序列先视为若干个比较小的数组&#xff0c;分成几个比较小的结构&#xff0c;然后是利用归并的思想实现的排序方法&#xff0c;该算法采用经典的分治策略&#xff08;分就是将问题分(divide)成一些小的问题分…

vue3(五)-基础入门之计算属性

一、计算属性 1.计算属性与普通方法的的区别&#xff1a; 计算属性在需要渲染数据时调用一次&#xff0c;而后将结果缓存起来。只有计算属性所依赖的数据发生改变时才会重新调用函数&#xff0c;否则每次渲染相同的数据都只会从缓存中读取。 普通方法在每次数据需要渲染时都会…

设计模式----解释器模式

一、简介 解释器模式使用频率并不高&#xff0c;通常用来构建一个简单语言的语法解释器&#xff0c;它只在一些非常特定的领域被用到&#xff0c;比如编译器、规则引擎、正则表达式、sql解析等。 解释器模式是行为型设计模式之一&#xff0c;它的原始定义为&#xff1a;用于定义…

ZKP Algorithms for Efficient Cryptographic Operations 1 (MSM Pippenger)

MIT IAP 2023 Modern Zero Knowledge Cryptography课程笔记 Lecture 6: Algorithms for Efficient Cryptographic Operations (Jason Morton) Multi-scalar Multiplication(MSM) Naive: nP (((P P) P) P)… (2(2P))…Binary expand $n e_0e_1\alphae_2\alpha2\dots\e_{\…

嵌入式开发必须学习qt吗?

嵌入式开发必须学习qt吗&#xff1f; 在开始前我有一些资料&#xff0c;是我根据自己从业十年经验&#xff0c;熬夜搞了几个通宵&#xff0c;精心整理了一份「 嵌入式的资料从专业入门到高级教程工具包」&#xff0c;点个关注&#xff0c;全部无偿共享给大家&#xff01;&#…

JAVA的拼图游戏

看好路径 MyActionListener public class MyActionListener implements ActionListener {Overridepublic void actionPerformed(ActionEvent e) {System.out.println("按钮被点击了");} }MyJFrame public class MyJFrame extends JFrame implements ActionListener…

计算机网络——数据链路层(三)

前言: 前面我们已经对计算机网络的物理层有了一个大概的了解&#xff0c;今天我们学习的是物理层服务的上一层数据链路层&#xff0c;位于物理层和网络层之间。数据链路层在物理层提供的服务的基础上向网络层提供服务&#xff0c;其最基本的服务是将源自物理层来的数据可靠地传…

51单片机拆字程序实验

一、实验内容 1.基本要求 熟悉51仿真系统&#xff1b;设计并单步调试&#xff0c;实现将R5中数值&#xff08;初值为本人学号后两位&#xff09;拆分成两位独立的数据分别存于R6,R7中&#xff1b; 2.扩展要求 将R6,R7中的被拆出来的一位HEX数据转换为可显示的ASCII编码&…

C++笔试训练day_2

文章目录 选择题7. 编程题1.2. 选择题 &#xff08;6&#xff09;因为p2被const修饰所以p2不可以被改变&#xff0c;但是p2的指向可以被改变 &#xff08;7&#xff09;因为指针p3被const修饰&#xff0c;所以p3的指向不能被改变&#xff0c;但是*p3可以被改变 int main() {in…