【云原生监控】Prometheus之PushGateway
Prometheus之PushGateway
文章目录
- Prometheus之PushGateway
- 介绍作用
- 资源列表
- 基础环境
- 一、部署PushGateway
- 1.1、下载软件包
- 1.2、解压软件包
- 1.3、编辑配置systemctl启动文件
- 1.4、创建日志目录
- 1.5、加载并启动
- 1.6、监控端口
- 1.7、访问PushGateway
- 二、 配置Prometheus抓取PushGateway数据
- 三、被监控服务推送数据到PushGateway
- 四、查看是否推送数据
介绍作用
- PushGateway为Promethus整体监控方案的功能组件之一,并作为一个独立的工具存在。它主要用于Prometheus无法直接拿到监控指标的场景,如监控源位于防火墙之后,Prometheus无法穿透防火墙,目标服务器没有可抓取监控数据的端点等多种情况。在类似的场景中,可通过部署PushGateway的方式解决问题。
- 当部署该组件后,监控源通过主动发送监控数据到PushGateway,再又Prometheus定时获取信息,实现资源的状态监控。
资源列表
| 操作系统 | 配置 | 主机名 | IP |
|---|---|---|---|
| CentOS 7.9 | 2C4G | prometheus-server | 192.168.93.101 |
| CentOS 7.9 | 2C4G | node-exporter | 192.168.93.102 |
| CentOS 7.9 | 2C4G | grafana | 192.168.93.103 |
| CentOS 7.9 | 2C4G | push-gateway | 192.168.93.104 |
基础环境
- 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
- 关闭内核安全机制
setenforce 0
sed -i "s/^SELINUX=.*/SELINUX=disabled/g" /etc/selinux/config
- 修改主机名
hostnamectl set-hostname prometheus-server
hostnamectl set-hostname node-exporter
hostnamectl set-hostname grafana
hostnamectl set-hostname push-gateway
一、部署PushGateway
- PushGatway可以随便找一台机器单独部署或者和Prometheus或node-exporter部署在一起,用来接收数据
1.1、下载软件包
wget https://github.com/prometheus/pushgateway/releases/download/v1.6.1/pushgateway-1.6.1.linux-amd64.tar.gz
1.2、解压软件包
[root@push-gateway ~]# tar -zxvf pushgateway-1.6.1.linux-amd64.tar.gz -C /usr/local/bin/ pushgateway-1.6.1.linux-amd64/pushgateway --strip-components=1
1.3、编辑配置systemctl启动文件
[root@push-gateway ~]# cat > /etc/systemd/system/pushgatway.service <<EOF
[Unit]
Description=Pushgateway
After=network.target[Service]
ExecStart=/usr/local/bin/pushgateway \--web.listen-address=:9091 \--persistence.file=/prometheus/data/pushgatway.log \--persistence.interval=5m \--log.level=info \--log.format=json[Install]
WantedBy=multi-user.target
EOF
1.4、创建日志目录
[root@push-gateway ~]# mkdir -p /prometheus/data/
1.5、加载并启动
[root@push-gateway ~]# systemctl daemon-reload
[root@push-gateway ~]# systemctl enable pushgatway.service --now
1.6、监控端口
- PushGateway默认监听
9090端口
[root@push-gateway ~]# netstat -anpt | grep 9091
tcp6 0 0 :::9091 :::* LISTEN 8307/pushgateway
1.7、访问PushGateway
- 访问地址:http://192.168.93.104:9091

二、 配置Prometheus抓取PushGateway数据
[root@prometheus-server ~]# vim /usr/local/prometheus/prometheus.yml
# 添加如下内容- job_name: "prometheus-pushgateway" # 监控的名字honor_labels: true # 解决pushgateway组件的标签和prometheus服务标签冲突,false(默认),将标签加上前缀"exporter_",不覆盖。true,覆盖原来的标签static_configs: # 静态配置发现目标- targets: ["192.168.93.104:9091"] # 监控的地址
# 刷新Prometheus服务
[root@prometheus-server ~]# curl -X POST http://192.168.93.101:9090/-/reload
- 浏览器查看,Prometheus抓取PushGatway数据联通了,但是还没有数据

三、被监控服务推送数据到PushGateway
[root@node-exporter ~]# echo "user_num 22" | curl --data-binary @- http://192.168.93.104:9091/metrics/job/xinjizhiwa_user/instance/192.168.93.102# 参数说明
echo "key value" | curl --data-binary @- http://pushgatway的ip:端口号/metrics/job/自定义job名称/instance/被监控节点的ip地址
四、查看是否推送数据
-
查看PushGateway是否有数据

-
查看PushGateway是否把数据推送到Prometheus

相关文章:
【云原生监控】Prometheus之PushGateway
Prometheus之PushGateway 文章目录 Prometheus之PushGateway介绍作用资源列表基础环境一、部署PushGateway1.1、下载软件包1.2、解压软件包1.3、编辑配置systemctl启动文件1.4、创建日志目录1.5、加载并启动1.6、监控端口1.7、访问PushGateway 二、 配置Prometheus抓取PushGate…...
sqlalchemy JSON 字段写入时中文序列化问题
JSON字段定义 from sqlalchemy import Column, JSONclass Table(Base):__tablename__ "table"__table_args__ ({"comment": "表名称"})...extra Column(JSON, comment"其他属性")...局部序列化 def create(extra):table Table()#…...
C++ 类域+类的对象大小
个人主页:Jason_from_China-CSDN博客 所属栏目:C系统性学习_Jason_from_China的博客-CSDN博客 所属栏目:C知识点的补充_Jason_from_China的博客-CSDN博客 概念概述 类定义了一个新的作用域,类的所有成员都在类的作用域中ÿ…...
QT开发:深入详解QtCore模块事件处理,一文学懂QT 事件循环与处理机制
Qt 是一个跨平台的 C 应用程序框架,QtCore 模块提供了核心的非 GUI 功能。事件处理是 Qt 应用程序的重要组成部分。Qt 的事件处理机制包括事件循环和事件处理,它们共同确保应用程序能够响应用户输入、定时器事件和其他事件。 1. 事件循环(Ev…...
小米,B站网络安全岗位笔试题目+答案
《网安面试指南》http://mp.weixin.qq.com/s?__bizMzkwNjY1Mzc0Nw&mid2247484339&idx1&sn356300f169de74e7a778b04bfbbbd0ab&chksmc0e47aeff793f3f9a5f7abcfa57695e8944e52bca2de2c7a3eb1aecb3c1e6b9cb6abe509d51f&scene21#wechat_redirect 《Java代码审…...
微信小程序中巧妙使用 wx:if 和 catchtouchmove 实现弹窗禁止页面滑动功能
大家好,今天我要和大家分享的是在微信小程序开发过程中,如何利用 wx:if 或 wx:elif 来条件性地渲染不同的元素,并结合 catchtouchmove 事件处理函数来解决弹窗弹出时禁止背后页面滑动,而弹窗消失时恢复滑动的功能。 在微信小程序…...
唯徳知识产权管理系统 DownloadFileWordTemplate 文件读取漏洞复现
0x01 产品简介 唯徳知识产权管理系统,由深圳市唯德科创信息有限公司精心打造,旨在为企业及代理机构提供全方位、高效、安全的知识产权管理解决方案。该系统集成了专利、商标、版权等知识产权的全面管理功能,并通过云平台实现远程在线办公,提升工作效率。是一款集知识产权申…...
我在高职教STM32——准备HAL库工程模板(2)
新学期已开始,又要给学生上 STM32 嵌入式课程了。这课上了多年了,一直用的都是标准库来开发,已经驾轻就熟了。人就是这样,有了自己熟悉的舒适圈,就很难做出改变,老师上课也是如此,排斥新课和不熟悉的内容。显然,STM32 的开发,HAL 库已是主流,自己其实也在使用,只不过…...
数字化转型的实战法则:全面剖析《数字化专业知识体系》中的落地策略与最佳实践
开启数字化成功的实践路径 随着全球经济加速迈向数字化,企业不再仅仅依赖传统商业模式,而是通过技术创新提升竞争力与市场地位。然而,数字化转型的成功不仅依赖于战略思维,更需要精准的实战执行。《数字化专业知识体系》…...
远程桌面内网穿透是什么?有什么作用?
远程桌面内网穿透指的是通过特定技术手段,将处于内网中的电脑或服务器,通过外部网络(互联网)进行访问。内网穿透的主要作用是解决在内网环境下,远程设备与外部互联网之间的连接问题,允许用户从外部访问内网…...
【算法专场】分治(上)
目录 前言 什么是分治? 75. 颜色分类 算法分析 算法步骤 算法代码 912. 排序数组 - 力扣(LeetCode) 算法分析 算法步骤 算法代码 215. 数组中的第K个最大元素 - 力扣(LeetCode) 算法分析 算法步骤 编辑…...
腾讯云软件工程师面试问题收集记录-数据库
SQL是什么:结构化查询语言,是一种专门用于管理关系型数据库管理系统的编程语言 MySQL操作命令 数据库操作 登陆数据库:mysql -u 用户面 -p创建数据库:CREATE DATABASE testdb; SQLite操作命令 数据库操作 创建数据库:…...
Sourcetree安装教程及使用
下载链接:源代码树 |适用于 Mac 和 Windows 的免费 Git GUI (sourcetreeapp.com) Sourcetree安装教程及使用_sourcetree 安装使用-CSDN博客...
TryHackMe 第1天 | Introduction to Cyber Security
偶然之间了解到了TryHackMe这个网站,尝试跟着其中的学习路径进行学习,发现还是挺适合入门网络安全这一领域的。但是这个网站包含了很多内容,如果不用一些东西记录下来,那么很容易忘记,所以打算在此记录一下学习过程。 …...
ASP.NET MVC 迅速集成 SignalR
在现代 Web 应用程序中,实时更新数据是一个常见需求。本文将详细介绍如何在 ASP.NET MVC 项目中使用 SignalR 实现定时任务操作数据库并将数据更新到网页。我们将逐步讲解如何配置 SignalR、创建定时任务、操作数据库以及在前端显示实时数据。 目录 项目初始化安装…...
[数据集][目标检测]葡萄成熟度检测数据集VOC+YOLO格式1123张3类别
数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):1123 标注数量(xml文件个数):1123 标注数量(txt文件个数):1123 标注…...
【Python 数据分析学习】Matplotlib 的基础和应用
题目 1 Matplotlib 主要特性2 Matplotlib 基础知识2.1 导入模块2.2 图形构成2.2.1 图形(Figure)2.2.2 轴 (Axes)2.2.3 轴线(axis) 2.5 中文设置2.5.1 借助rcParams修改字体实现设置2.5.2 增加一个fontprope…...
HarmonyOS应用开发者基础认证
目录 一、判断二、单选三、多选 一、判断 1、HarmonyOS提供了基础的应用加固安全能力,包括混淆、加密和代码签名能力。正确 2、可以通过ohpm uninstall 指令下载指定的三方库。错误 3、支持模块化开发是指一个应用通常会包含多种功能,将不同的功能特性…...
gin基本使用
中文文档:https://gin-gonic.com/zh-cn/docs/ 下载和安装gin模块 go get -u github.com/gin-gonic/gin简单接口demo package mainimport "github.com/gin-gonic/gin"func main() {r := gin.Default() // 创建一个默认的路由引擎r.GET("/pin…...
【VUE】pinia持久化存储
前言:状态持久化存储的意义在于它能够确保用户在与应用程序交互时,其操作状态、用户偏好、应用数据等关键信息在页面刷新、浏览器关闭或重新启动后依然得以保留,从而提供连贯、无缝的用户体验,避免因状态丢失导致的不便和重复操作…...
避坑指南:Zephyr RTOS与nRF Connect SDK环境搭建常见错误及解决方案
Zephyr RTOS与nRF Connect SDK环境搭建深度排错手册 当你的开发环境突然"罢工":一位工程师的实战笔记 去年冬天,当我第一次尝试在Windows系统上搭建nRF Connect SDK(NCS)开发环境时,整整三天时间都耗在了各种…...
Qwen3-ForcedAligner-0.6B完整指南:音频格式支持/实时录音/时间戳导出全解析
Qwen3-ForcedAligner-0.6B完整指南:音频格式支持/实时录音/时间戳导出全解析 你是不是也遇到过这样的烦恼?开会录音想整理成文字,手动打字累到怀疑人生;做视频需要加字幕,一句一句对时间轴对到眼花。今天要介绍的这个…...
ERTEC 系列 PROFINET 芯片级硬件过滤器分析
起因是我想在搞一些操作windows进程的事情时,老是需要右键以管理员身份运行,感觉很麻烦。就研究了一下怎么提权,顺手瞄了一眼Windows下用户态权限分配,然后也是感谢《深入解析Windows操作系统》这本书给我偷令牌的灵感吧ÿ…...
工业质检新思路:当UNet遇上钢材缺陷,聊聊PyTorch实战中的那些‘坑’与优化技巧
工业质检实战:UNet在钢材缺陷检测中的高阶优化与避坑指南 第一次把UNet模型部署到钢厂产线时,我盯着监控屏幕上闪烁的误报提示,意识到学术论文里的漂亮指标和真实工业场景之间,隔着无数个深夜调试的神经网络。钢材表面那些细如发丝…...
OpenClaw与企业微信/飞书/钉钉深度集成方案
第1章 引言 1.1 OpenClaw简介与定位 OpenClaw是一个现代化的AI Agent运行框架,专为构建企业级智能助手和应用而设计。它采用模块化架构,通过统一的Gateway接口支持多种通信渠道的接入,让AI能力能够无缝融入企业现有的协作生态中。 OpenClaw的核心特性包括: 多渠道统一接…...
SoftSerial软件串口原理与STM32工程实践
1. SoftSerial 库深度解析:面向资源受限 MCU 的软件 UART 实现原理与工程实践1.1 背景与工程必要性在嵌入式系统开发中,UART(通用异步收发传输器)是最基础、最广泛使用的串行通信接口。然而,MCU 的硬件 UART 资源往往极…...
TikTok直播卡顿、发布失败?可能是你的动态IP池没调好(附IPIPD轮询策略设置)
TikTok直播与内容发布的动态IP优化实战指南 直播突然中断、视频上传失败——这些看似随机的网络问题,往往源于动态IP池的配置不当。许多运营者投入大量成本获取优质IP资源,却因参数设置不合理导致实际效果大打折扣。本文将深入解析TikTok平台的风控机制与…...
单片机代码版本管理工具横向评测与应用
1. 单片机开发中的代码版本管理痛点作为一名在嵌入式领域摸爬滚打多年的工程师,我深知单片机项目开发中最让人头疼的场景之一:当你需要对比两个版本的程序差异时,面对密密麻麻的汇编和C代码,用肉眼逐行比对简直是场噩梦。特别是在…...
基于MPC模型预测的两轮差速移动机器人多种轨迹跟踪控制(带参考文献)
✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…...
Linux网络编程核心API速查手册
认识Pass层级结构 Pass范围从上到下一共分为5个层级: 模块层级:单个.ll或.bc文件 调用图层级:函数调用的关系。 函数层级:单个函数。 基本块层级:单个代码块。例如C语言中{}括起来的最小代码。 指令层级:单…...
