Prometheus+Grafana部署

news2025/1/12 20:41:29

一 、Prometheus 源码安装和启动配置

普罗米修斯下载网址:https://prometheus.io/download/
监控集成器下载地址:http://www.coderdocument.com/docs/prometheus/v2.14/instrumenting/exporters_and_integrations.html

1.实验环境

IP角色系统
172.16.11.7Prometheus 服务端CentOS 7
172.16.11.8node_exporter 客户端CentOS 7

2.下载prometheus

[root@prometheus ~]# cd  /usr/local/
   [root@prometheus local]# wget https://github.com/prometheus/prometheus/releases/download/v2.25.0/prometheus-2.25.0.linux-amd64.tar.gz
   [root@prometheus local]# tar xf  prometheus-2.25.0.linux-amd64.tar.gz
   [root@prometheus local]# mv prometheus-2.25.0.linux-amd64/  prometheus

查看版本号

[root@prometheus prometheus]# ./prometheus --version

在这里插入图片描述
查看帮助文档

[root@prometheus prometheus]# ./prometheus --help

3.prometheus.yml 配置解释
cat /usr/local/prometheus/prometheus.yml

# my global config
global:
  # 默认情况下,每15s拉取一次目标采样点数据。
  scrape_interval:     15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  # 每15秒评估一次规则。默认值为每1分钟。
  evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
  # scrape_timeout is set to the global default (10s).

# 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:
  # job名称会增加到拉取到的所有采样点上,同时还有一个instance目标服务的host:port标签也会增加到采样点上
  - job_name: 'prometheus'

    # 覆盖global的采样点,拉取时间间隔5s
    scrape_interval: 5s
    static_configs:
    - targets: ['localhost:9090']

4.启动服务

#启动服务
[root@prometheus prometheus]# ./prometheus --config.file=prometheus.yml

# 指定配置文件
--config.file="prometheus.yml"

# 默认指定监听地址端口,可修改端口
--web.listen-address="0.0.0.0:9090" 

# 最大连接数
--web.max-connections=512

# tsdb数据存储的目录,默认当前data/
--storage.tsdb.path="data/"

# premetheus 存储数据的时间,默认保存15天
--storage.tsdb.retention=15d 

# 通过命令热加载无需重启 curl -XPOST 172.16.11.7:9090/-/reload
--web.enable-lifecycle

# 可以启用 TLS 或 身份验证 的配置文件的路径
--web.config.file=""


启动选项更多了解:./prometheus --help

5.访问:http://172.16.11.7:9090
在这里插入图片描述
6.查看暴露指标
访问 http://172.16.11.7:9090/metrics
在这里插入图片描述
7.将Prometheus配置为系统服务
进入systemd目录下

cd /usr/lib/systemd/system

在这里插入图片描述
创建文件:vim prometheus.service

[Unit]
  Description=https://prometheus.io
  
  [Service]
  Restart=on-failure
  ExecStart=/usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/prometheus.yml --web.listen-address=:9090

  [Install]                      
  WantedBy=multi-user.target

生效系统system文件

systemctl daemon-reload

启动服务

systemctl start prometheus

二、客户端,配置服务发现监控linux主机及相关服务

172.16.11.8操作
1.安装node_exporter
监控Linux 安装常用node_exporter

cd /usr/local/
wget https://github.com/prometheus/node_exporter/releases/download/v1.1.2/node_exporter-1.1.2.linux-amd64.tar.gz
tar xf node_exporter-1.1.2.linux-amd64.tar.gz 
mv node_exporter-1.1.2.linux-amd64/ node_exporter

2.启动node_exporter,并添加到服务
(1)直接启动

cd /usr/local/node_exporter && ./node_exporter &
# 启动后会监听9100端口

(2)添加为服务方式启动

vim /usr/lib/systemd/system/node_exporter.service
[Unit]
Description=node_exporter
After=network.target 

[Service]
ExecStart=/usr/local/node_exporter/node_exporter
Restart=on-failure

[Install]
WantedBy=multi-user.target

这里选择(2)添加为服务方式启动

systemctl daemon-reload
systemctl start node_exporter

在这里插入图片描述

三 、服务端配置文件添加监控项

172.16.11.7操作

cd /usr/local/prometheus 
vim prometheus.yml
# my global config
global:
  scrape_interval:     15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
  # scrape_timeout is set to the global default (10s).

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

# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:
scrape_configs:
  - job_name: 'prometheus'
    static_configs:
    - targets: ['172.16.11.7:9090']
  - job_name: 'linux'
    static_configs:
    - targets: ['172.16.11.8:9100']

重启prometheus

[root@prometheus ~]# systemctl restart prometheus.service

重启之后,再次刷新查看
在这里插入图片描述

四 、监控mysql(mysqld-exporter)

172.16.11.8操作
1.下载跟配置

cd  /usr/local
wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.12.1/mysqld_exporter-0.12.1.linux-amd64.tar.gz
tar xf mysqld_exporter-0.12.1.linux-amd64.tar.gz -C /usr/local/
mv mysqld_exporter-0.12.1.linux-amd64 mysqld_exporter
cd /usr/local/mysqld_exporter   &&  vim .my.cnf

在这里插入图片描述
2.启动mysqld-exporter

cd   /usr/local/mysqld_exporter
./mysqld_exporter --config.my-cnf="/usr/local/mysqld_exporter/.my.cnf" &

在这里插入图片描述
启动后会监听9104端口
在这里插入图片描述
3.配置文件添加监控项后重启
172.16.11.7Prometheus 服务端操作

 cd   /usr/local/prometheus
 vim prometheus.yml
- job_name: 'mysql'
    static_configs:
    - targets: ['172.16.11.8:9104']

在这里插入图片描述
重启普罗米修斯

systemctl restart prometheus.service

在这里插入图片描述

五 、监控节点的其它系统服务

172.16.11.8操作
如果要监控节点的系统服务,需要在后面添加名单参数
–collector.systemd.unit-whitelist=“.+” 从systemd中循环正则匹配单元
–collector.systemd.unit-whitelist=“(docker|sshd|nginx).service” 白名单,收集目标

#监控客户端,docker服务,nginx服务,sshd
vi /usr/lib/systemd/system/node_exporter.service

[Unit]
Description=https://prometheus.io

[Service]
Restart=on-failure
ExecStart=/usr/local/node_exporter/node_exporter --collector.systemd --collector.systemd.unit-whitelist=(docker|sshd|nginx).service

[Install]
WantedBy=multi-user.target

在这里插入图片描述
重启服务node_exporter

systemctl daemon-reload
systemctl restart node_exporter

六 、Grafana 展示 Prometheus 数据

1.快速下载安装Grafana
172.16.11.7操作

wget --no-check-certificate https://mirrors.tuna.tsinghua.edu.cn/grafana/yum/rpm/grafana-7.4.3-1.x86_64.rpm
yum install -y initscripts fontconfig
yum install -y grafana-7.4.3-1.x86_64.rpm
systemctl  start grafana-server.service 
systemctl status grafana-server.service 

启动后访问地址:ip:3000
初始用户名和密码都是admin
在这里插入图片描述

2.添加Prometheus数据源
Configuration -> Data Sources ->add data source -> Prometheus
在这里插入图片描述
3.新增Dashboard Linux基础数据展示
Create -> import
在这里插入图片描述

4.导入模板8919
在这里插入图片描述
5.选择数据源
在这里插入图片描述
点击lmport
6.查看Dashboard
Dashboards ->Manage
在这里插入图片描述

七 、MySQL数据展示

1 设置数据源
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.导入已经画好的dashboard,数据源选择刚刚创建好的mysql数据源即可
导入画好的dashboard,可在官网下载

点击访问mysql数据源
这里我选择第一个
在这里插入图片描述

在这里插入图片描述

7991数字是上面官网复制过来的
粘贴,点击load
在这里插入图片描述
选择Mysql源
在这里插入图片描述

七 、监控Redis(redis_exporter)

1.安装redis_exporter
172.16.11.8操作
cd /usr/local
wget https://github.com/oliver006/redis_exporter/releases/download/v0.15.0/redis_exporter-v0.15.0.linux-amd64.tar.gz
tar -xvf redis_exporter-v0.15.0.linux-amd64.tar.gz

2.启动redis_exporter
172.16.11.8操作
默认redis_exporter端口为9121
cd /usr/local
./redis_exporter redis//172.16.11.8:6379 &

3.prometheus配置文件中加入redis监控并重启
172.16.11.7操作

vim /usr/local/prometheus/prometheus.yml
- job_name: 'Redis'
      static_configs:
      - targets: ['172.16.11.8:9121']
systemctl restart prometheus

4.grafana导入画好的dashboard
流程可以参考 (七 、MySQL数据展示)
模板改成 redis的就行了

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

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

相关文章

理解浅拷贝和深拷贝以及实现方法

一、数据类型 数据分为基本数据类型(String, Number, Boolean, Null, Undefined,Symbol)和引用数据类型Object,包含(function,Array,Date)。 1、基本数据类型的特点:直接存储在栈内存中的数据 …

品牌投资与形象全面升级 | 快来认识全新的 Go 旅城通票

近日,Go 旅城通票(Go City)品牌全面升级,旨在提高旅游爱好者对品牌的认知。从新冠疫情大流行中阴霾中走出来的 Go 旅城通票复苏势头强劲,专注于技术提升,使命是协助旅游爱好者无论到世界各地的哪一个城市畅…

在线分析网站日志软件-免费分析网站蜘蛛的软件

搜索引擎蜘蛛的作用是什么?我们网站上的内容如果要想被搜索引擎收录并且给予排名,就必须要经过搜索引擎蜘蛛的爬取并且建立索引。所以让搜索引擎蜘蛛更好的了解我们的网站是很重要的一步!搜索引擎蜘蛛在爬取某个网站,是通过网站的…

浅谈虚拟地址转换成物理地址(值得收藏)

这里,我们讲解一下Linux是如何将虚拟地址转换成物理地址的 一、地址转换 在进程中,我们不直接对物理地址进行操作,CPU在运行时,指定的地址要经过MMU转换后才能访问到真正的物理内存。 地址转换的过程分为两部分,分段…

Linux systemctl 详解自定义 systemd unit

Linux systemctl 详解&自定义 systemd unit systemctl 序 大家都知道,我们安装了很多服务之后,使用 systemctl 来管理这些服务,比如开启、重启、关闭等等,所以 systemctl 是一个 systemd 系统。centos 使用 systemctl 来代…

9.8 段错误,虚拟内存,内存映射 CSAPP

相信写代码的或多或少都会遇到段错误,segmentation fault. 今天终于看到这里面的底层原理 参考: https://greenhathg.github.io/2022/05/18/CMU213-CSAPP-Virtual-Memory-Systems/18-Virtual-Memory-SystemsSimple memory system exampleAddress Trans…

(转)CSS结合伪类实现icon

老规矩,还是先说说业务场景:有一个图片列表,可以添加、删除和更改,其中呢删除时设计给的设计稿时悬浮(hover)在图片上时显示删除的图标,所以就有了这个用before实现icon的场景 进入正文&#xf…

嵌入式系统开发笔记108:IO的使用方法与面向对象程序设计

文章目录前言一、IO引脚的基本概念二、映射层的设置1、映射层是原理图的直译层2、IO引脚的设置在hal.h 和 hal.cpp文件中完成(1)在hal.h中进行类定义(2)在hal.cpp中完成引脚映射三、面向对象程序设计思想1、程序设计分类2、举例3、…

DevExpress之C#界面+MATLAB动态链接库联合编程

MATLAB导出动态链接库 在MATLAB命令行中输入:deploytool,打开如下界面,选择Library Compiler 对于C#,选择.NET Assembly,点击右侧的“+”加号,添加要导出的函数 可添加多个函数 下面的类名中输入即为导出后类的名称 点击设置按钮,输入参数-C,参数的具体含义如下 …

简化MRO工业品供采交易路径,S2B2B商城助力企业构建业务一体化管理优势

在政策拉动、市场需求驱动及数字技术进步等多重力量共同作用下,近5年来,我国工业品B2B市场规模保持上升的态势。尽管2022年受疫情反复影响,但中国经济向好的局面并未改变,中国数字化经济依然会加快工业品B2B市场的发展&#xff0c…

绿色债券数据集2016-2021(含交易代码、债券简称、发行规模期限等多指标数据)

1、数据来源:wind 2、时间跨度:2016.01-2021.11年 3、区域范围:全国 4、指标说明: 部分指标如下: 交易代码 债券简称 发行起始日 缴款日 计划发行规模(亿) 发行金额上…

第四章. Pandas进阶—时间序列

第四章. Pandas进阶 4.9 时间序列 1.重采样(resample) 在Pandas中,对时间序列频率的调整称为重采样,即时间序列从一个频率转换到另一个频率的过程,由周统计变成月统计 1).语法: 4.8章 第4点 已介绍过&…

5G无线技术基础自学系列 | MIMO功能

素材来源:《5G无线网络规划与优化》 一边学习一边整理内容,并与大家分享,侵权即删,谢谢支持! 附上汇总贴:5G无线技术基础自学系列 | 汇总_COCOgsta的博客-CSDN博客 无线通信的迅速发展对系统的容量和频谱…

天启星座(Tianqi)介绍

天启星座(Tianqi)由38颗卫星组网而成,提供全球短数据采集。致力于为全球物联网相关行业用户提供覆盖全球、准实时的物联网卫星数据服务,真正实现空中、海洋和地面的万物互联,构建天地一体化的卫星物联网生态系统&#…

stm32 笔记 UART读取及HAL库应用

基本流程图 由此图可知: 采用HAL库,中断方式接收串口,只有当RxXferCount 0 时,也就是调用这个函数,接收指定量的数据大小完成时,才会调用回调函数HAL_UART_RxCpltCallback()。 而且,RxXferCou…

技术资料:STM32F746NGH7,STM32L471ZGT6 IC MCU+FPU

描述:STM32F7 32 位 MCUFPU 基于高性能的 ARMCortex-M7 32 位 RISC 内核,工作频率高达 216MHz。Cortex-M7 内核具有单浮点单元(SFPU)精度,支持所有 ARM 单精度数据处理指令与数据类型。同时执行全套 DSP 指令和存储保护单元(MPU&a…

ThreadLocal源码解析 2.ThreadLocalMap内核

ThreadLocal源码解析—ThreadLocalMap内核 简介 内部类 ThreadLocalMap 才是 ThreadLocal 的真正核心。 ThreadLocalMap 与 HashMap不一样,HashMap 中的数据结构有数组,链表还有红黑树;而 ThreadLocalMap 中的数据结构只有数组。HashMap 处…

反转链表与拓展【灵神基础精讲】

来源0x3f:https://space.bilibili.com/206214 文章目录反转链表[206. 反转链表](https://leetcode.cn/problems/reverse-linked-list/)[92. 反转链表 II](https://leetcode.cn/problems/reverse-linked-list-ii/)[25. K 个一组翻转链表](https://leetcode.cn/proble…

[附源码]Python计算机毕业设计Django仓储综合管理系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

windows改linux

使用旧的windows电脑改成linux机器,不使用双系统,直接格式化 本次需要两个U盘或者两台电脑。 制作WINPE启动盘 使用U深度制作启动盘,制作完成后进入PE系统,然后使用diskGenius删除所有电脑的分区进行快速分区,格式选…