K8S学习之基础四十一:Prometheus基于Pushgateway采集数据

Prometheus基于Pushgateway采集数据

​ 拉取pushgageway镜像,启动容器

复制代码
docker pull pushgateway
docker run -d --name pushgateway -p 9091:9091 prom/pushgateway

​ 浏览器查看9091端口

​ 修改prometheus-alertmanager-cfg.yaml文件,在k8s-master节点操作

添加如下job

复制代码
- job_name: 'pushgateway'
   scrape_interval: 5s
   static_configs:
   - targets: ['172.18.80.131:9091']
 honor_labels: true

更新配置和deploy

复制代码
kubectl apply -f prometheus-alertmanager-pushgateway-cfg.yaml
kubectl delete -f prometheus-alertmanager-deploy.yaml
kubectl apply -f prometheus-alertmanager-deploy.yaml

​ 推送数据到pushgateway

复制代码
# 向 {job="test_job"} 添加单条数据:
echo " metric 3.6" | curl --data-binary @- http://172.16.80.131:9091/metrics/job/test_job



复制代码
# 添加复杂数据
cat <<EOF | curl --data-binary @- http://172.16.80.131:9091/metrics/job/instance/test_instance
# HELP node_memory_usage The current memory usage.
# TYPE node_memory_usage gauge
node_memory_usage 36
# HELP node_memory_total The total memory available.
# TYPE node_memory_total gauge
node_memory_total 36000
EOF

删除某个组下某个实例的所有数据
curl -X DELETE http://172.16.80.131:9091/metrics/job/test_job/instance/test_instance

删除某个组下的所有数据:
curl -X DELETE http://172.16.80.131:9091/metrics/job/test_job

​ 通过脚本方式上报指标

复制代码
#!/bin/bash

# 计算内存使用率,并格式化为两位小数
node_memory_usages=$(free -m | grep Mem | awk '{printf "%.2f", $3/$2*100}')

# 定义 job 和 instance 名称
job_name="memory"
instance_name="172.16.80.131"

# 推送指标数据到 Pushgateway
cat <<EOF | curl --data-binary @- http://172.16.80.131:9091/metrics/job/$job_name/instance/$instance_name
# HELP node_memory_usages The percentage of memory usage.
# TYPE node_memory_usages gauge
node_memory_usages $node_memory_usages
EOF

sh push_memory.sh
# 可以配置定时任务,每隔多长时间获取一次
相关推荐
来包番茄沙司5 分钟前
【网盘资源分享】2026新版尚硅谷AI Agent智能体极速版|全套课程资料+面经
人工智能·学习
每天题库20 分钟前
塔式起重机安装拆卸工考试题库 真题模拟考前押题精准覆盖
学习·安全·考试·题库·考证
阿里云云原生6 小时前
AI 语音一直“正在连接”?用 RUM 排查 WebSocket 建连问题
云原生
别动我齐刘海10 小时前
C++ 工程化学习
java·linux·前端·c++·学习·机器学习·机器人
gjf05_0513 小时前
人该怎样活着呢?版本75.8
学习
阿里云云原生14 小时前
从页面渲染到智能体:ARMS Node.js 探针解锁 SSR + AI 全链路可观测
云原生
li星野14 小时前
【学习记录】PCB与PCBA核心知识全解析:从设计到制造的关键细节
学习·制造
卿卿的产品经理日记15 小时前
【AI产品经理实战】Day 35|从“沉迷工具“到回归 AI 底层:Skill 收官、系统复盘与下一个 13 天
人工智能·学习·产品经理
一条泥憨鱼16 小时前
【从0开始学习计算机网络】| ARP 协议:地址解析,ARP 欺骗,链路层寻址
网络·后端·学习·计算机网络