prometheus配置pushgateway功能测试
一、环境:
1、prometheus服务器ip:192.168.0.208
2、node-exporter客户机ip:192.168.0.202
二、测试设计考虑:
pushgateway类似一台信息收集中转机,其部署位置不受任何限制。本次测试,考虑把pushgateway部署在node-exporter客户机上,在prometheus服务器上编制信息收集和推送程序。
信息数据流程:
1、prometheus服务器作为信息数据采集点,通过采集和推送程序向pushgateway端推送所采集的信息数据。
2、prometheus服务器作为prometheus服务端,从pushgateway端拉取所需信息数据用于处理和展示。
二、配置过程
1、pushgateway服务端的安装
(1)pushgateway的image下载和安装
[root@DL ~]# docker search pushgateway #查询可用pushgateway镜像
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
prom/pushgateway The Prometheus Pushgateway allows ephemeral … 45 [OK]
[root@DL ~]# docker pull prom/pushgateway
(2)pushgateway服务的运行:
[root@DL ~]# docker run -d --name=pg -p 9091:9091 prom/pushgateway
2、prometheus服务器的配置
(1)prometheus服务器对pushgateway的监控配置
[root@ELK prometheus]# vi prometheus.yml
...
- job_name: 'pushgateway'
# metrics_path defaults to '/metrics'
# scheme defaults to 'http'.
static_configs:
- targets: ['192.168.0.202:9091']
配置完成后需要重启一下prometheus服务:docker restart prometheus
(2)数据采集和推送程序的编制
以采集netstat命令中处于wait状态的连接数为例:
[root@ELK prometheus]# vi node-exporter-shell.sh
#!/bin/bash
instance_name=`hostname -f | cut -d'.' -f1` #本机机器名 变量 用于之后的标签
if [[ $instanc_name == "localhost" ]];then #要求机器名不能是localhost,不然标签就没有区分了
echo "Must FQDN hostname"
exit 1
fi
# For waiting connections
label="count_netstat_wait_connections" #定义一个新的key
count_netstat_wait_connections=`netstat -an | grep -i wait | wc -l` #定义一个新的数值netstat中wait的数量
echo "$label:$count_netstat_wait_connections"
echo "$label $count_netstat_wait_connections" | curl --data-binary @- http://192.168.0.202:9091/metrics/job/pushgateway/instance/$instance_name #推送键值对到pushgateway服务端
(3)数据采集程序的定时运行设置
[root@ELK prometheus]# crontab -e
* * * * * sleep 10;cd /root/prometheus; ./node-exporter-shell.sh #设置每10秒采集和推送一次数据
三、测试
1、web访问:http://192.168.0.202:9091/ 可看到pushgateway的实时push状态
2、web访问:http://192.168.0.202:9091/metrics 可看到采集数据的键值对
# TYPE count_netstat_wait_connections untyped
count_netstat_wait_connections{instance="ELK",job="pushgateway"} 0 数据采集和推送程序来源:B站大米运维课堂
prometheus配置pushgateway功能测试的更多相关文章
- 基于Prometheus的Pushgateway实战
一.Pushgateway 简介 Pushgateway 是 Prometheus 生态中一个重要工具,使用它的原因主要是: Prometheus 采用 pull 模式,可能由于不在一个子网或者防火墙 ...
- prometheus 配置介绍
prometheus 配置介绍 prometheus 配置分global.alerting.rule_files.scrape_configs 1.global(全局配置) scrape_interv ...
- prometheus配置
本文主要记录下测试环境积累的prometheus配置信息,主要是k8s基本节点的配置和cadvisor的配置,方便以后使用做为参考 global: scrape_interval: 30s scrap ...
- Prometheus 配置采集目标
Prometheus 配置采集目标 1.根据配置的任务(job)以http/s周期性的收刮(scrape/pull)2.指定目标(target)上的指标(metric).目标(target)3.可以以 ...
- 实用干货丨如何使用Prometheus配置自定义告警规则
前 言 Prometheus是一个用于监控和告警的开源系统.一开始由Soundcloud开发,后来在2016年,它迁移到CNCF并且称为Kubernetes之后最流行的项目之一.从整个Linux服务器 ...
- 神坑!为什么prometheus的pushgateway不能对上报的counter进行累加?
部署了一个prometheus的pushgateway,然后两次对其发送counter类型的数据: #第一次发送 curl -X POST -d '# TYPE my_first_metric_ahf ...
- prometheus 配置容器 cadvisor监控节点
安装cadvisor docker run \ --volume=/:/roofs:ro \ --volume=/var/run:/var/run:rw \ --volume=/sys:/sys:ro ...
- prometheus配置简介
参考网页:https://my.oschina.net/wangyunlong/blog/3060776 global: scrape_interval: 15s evalua ...
- prometheus配置详情
https://prometheus.io/docs/prometheus/latest/configuration/configuration/ 下面监控宿主机和容器的内存,CPU,磁盘等状态 gr ...
随机推荐
- windows脱密码总结
方式1:通过SAM数据库获得本地用户HASH sam文件:是用来存储本地用户账号密码的文件的数据库system文件:里面有对sam文件进行加密和加密的密钥 利用方式: 导出sam和system: re ...
- Java——Java面向对象
该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架. 概述: Java是面 ...
- B. Long Path dp
https://codeforces.com/problemset/problem/407/B 这个题目是一个dp,有那么一点点的递归的意思,这个应该算一个找规律的dp, dp[i]定义为第一次到第i ...
- Vue + Element-ui实现后台管理系统(4)---封装一个ECharts组件的一点思路
封装一个ECharts组件的一点思路 有关后台管理系统之前写过三遍博客,看这篇之前最好先看下这三篇博客.另外这里只展示关键部分代码,项目代码放在github上: mall-manage-system ...
- vue项目中使用bpmn-自定义platter
前情提要 经过前四篇的学习,我们能够实现bpmn基本绘图.预览.为节点加事件加颜色等效果,这一篇我们来说,如何自定义左侧工具栏(platter),首先看一下自定义前后效果图对比: 我们本次要实现的目标 ...
- ARM-Linux Gcc 交叉编译环境搭建
1 NFS网络文件系统搭建 测试宿主机与目标板ping通 目标板上某个文件夹(例如mnt)挂载到宿主机(192.168.1.111)的/home/nfs_dir文件夹下 mount –t nfs –o ...
- 《C程序设计语言》 练习2-6 及 位运算总结
问题描述 2.6 编写一个函数setbits(x, p ,n, y),该函数返回对x执行下列操作后的结果值: 将x中从第p位开始的n个(二进制)位设置为y中最右边n位的值,x的其余各位保持不变. Wr ...
- 手把手教你撸一套Redux(Redux源码解读)
Redux 版本:3.7.2 Redux 是 JavaScript 状态容器,提供可预测化的状态管理. 说白了Redux就是一个数据存储工具,所以数据基础模型有get方法,set方法以及数据改变后通知 ...
- [hdu4670 Cube number on a tree]点分治
题意:给一个N个带权节点的树,权值以给定的K个素数为因子,求路径上节点乘积为立方数的路径条数 思路:立方数的性质是每个因子的个数为3的倍数,那么每个因子只需要保存0-2三个状态即可,然后路径就可以转化 ...
- 在一段字符串中的指定位置插入html标签,实现内容修改留痕
客户需求:实现内容修改留痕,并且鼠标移动到元素时,显示修改人和修改时间. (其实呢本人觉得这个如果是静态的页面,或者是后端拼接好的html,都很好实现,如果让前端动态实现就......) 前端实现的方 ...