【大数据监控】Prometheus、Node_exporter、Graphite_exporter安装部署详细文档

article/2025/9/20 16:25:59

目录

  • Prometheus
    • 简介
    • 下载软件包
    • 安装部署
    • 创建用户
    • 创建Systemd服务
    • 修改配置文件prometheus.yml
    • 启动Prometheus
  • node exporter
    • 下载软件包
    • 安装部署
    • 创建systemd服务
    • 启动node_exporter
  • graphite_exporter
    • 下载软件包
    • 安装部署
    • 创建systemd服务
    • 启动 graphite_exporter

Prometheus

在这里插入图片描述
在这里插入图片描述

简介

Prometheus是一个开源的系统监控和报警系统,现在已经加入到CNCF基金会,成为继k8s之后第二个在CNCF托管的项目,在kubernetes容器管理系统中,通常会搭配prometheus进行监控,同时也支持多种exporter采集数据,还支持pushgateway进行数据上报,Prometheus性能足够支撑上万台规模的集群。

下载软件包

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

安装部署

解压

tar zxvf prometheus-2.19.2.linux-amd64.tar.gz
mv prometheus-2.19.2.linux-amd64 /usr/local/prometheus

创建用户

groupadd prometheus
useradd -g prometheus -m -d /var/lib/prometheus -s /sbin/nologin prometheus
chown prometheus.prometheus -R /usr/local/prometheus

创建Systemd服务

cat > /etc/systemd/system/prometheus.service <<EOF
[Unit]
Description=prometheus
After=network.target
[Service]
Type=simple
User=prometheus
ExecStart=/usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/prometheus.yml --storage.tsdb.path=/var/lib/prometheus/data 
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF

修改配置文件prometheus.yml

前面部分基本没改动,沿用默认配置。

参数作用
scrape_interval默认抓取间隔, 15秒向目标抓取一次数据
scrape_configs这个配置是表示在这个配置内的时间序例,每一条都会自动添加上这个{job_name:“prometheus”}的标签 - job_name: ‘prometheus’
job_name默认抓取间隔, 15秒向目标抓取一次数据
scrape_interval监控名称,相当于分组组名之类 (可手动自定义添加)
static_configs配置静态获取地址,与targets配合使用
file_sd_configs引用外部获取地址,与files配合使用
files外部获取地址文件指定,外部IP地址需要以json格式。 此方法优点适合大集群规模,可以根据hosts文件,批量生成json文件。可以直接添加IP地址,不用修改主配置,不用重启prometheus

最终配置文件如下:

# 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:# - "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: 'linux_server' #自定义名称,用于监控linux基础服务file_sd_configs:- files:- configs/linux.json  #linux机器IP地址json文件- job_name: 'hdfs'  #用于监控HDFS组件file_sd_configs:- files:- configs/hdfs.json  #hdfs参数获取地址- job_name: 'hbase' #用于监控Hbase组件file_sd_configs:- files:- configs/hbase.json #hbase参数获取地址- job_name: 'yarn' #用于监控Yarn组件file_sd_configs:- files:- configs/yarn.json #yarn参数获取地址- job_name: 'zookeeper' #用于监控zk组件file_sd_configs:- files:- configs/zookeeper.json #zk参数获取地址- job_name: 'hive'file_sd_configs:- files:- configs/hive.json- job_name: 'kafka'file_sd_configs:- files:- configs/kafka.json- job_name: 'spark'file_sd_configs:- files:- configs/spark.json

启动Prometheus

systemctl daemon-reload
systemctl start prometheus
systemctl status prometheus
systemctl enable prometheus

node exporter

在这里插入图片描述
Exporter是Prometheus的指标数据收集组件。它负责从目标Jobs收集数据,并把收集到的数据转换为Prometheus支持的时序数据格式。 和传统的指标数据收集组件不同的是,他只负责收集,并不向Server端发送数据,而是等待Prometheus Server 主动抓取.

node-exporter 默认的抓取url地址:http://ip:9100/metrics

另外,如果因为环境原因,网络不可达的场景,Prometheus可以使用Pushgateway 这个组件推送node-exporter的指标数据到远端Prometheus

node-exporter用于采集node的运行指标,包括node的cpu、load、filesystem、meminfo、network等基础监控指标,类似于zabbix监控系统的的zabbix-agent

node-exporter由Prometheus官方提供、维护,属于监控指标收集类UNIX内核操作系统的必备的exporter。

下载软件包

wget https://github.com/prometheus/node_exporter/releases/download/v1.5.0/node_exporter-1.5.0.linux-amd64.tar.gz

安装部署

解压

tar zxvf node_exporter-1.5.0.linux-amd64.tar.gz
mv node_exporter-1.5.0.linux-amd64 /usr/local/node_exporter

创建systemd服务

vim /etc/systemd/system/node_exporter.service[Unit]
Description=node_exporter
After=network.target[Service]
Type=simple
User=prometheus
ExecStart=/usr/local/node_exporter/node_exporter
Restart=on-failure[Install]
WantedBy=multi-user.target

启动node_exporter

systemctl daemon-reload
systemctl start node_exporter
systemctl status node_exporter
systemctl enable node_exporter

graphite_exporter

Graphite 来收集度量标准,Grafana 则用于构建仪表板,首先,需要配置 Spark 以将 metrics 报告到 Graphite。

prometheus 提供了一个插件(graphite_exporter),可以将 Graphite metrics 进行转化并写入 Prometheus (本文的方式)。

graphite_exporter 接收数据端口为9109

下载软件包

https://github.com/prometheus/graphite_exporter/releases/download/v0.12.4/graphite_exporter-0.12.4.linux-amd64.tar.gz

安装部署

解压

tar -xvzf graphite_exporter-0.12.4.linux-amd64.tar.gz
mv graphite_exporter-0.12.4.linux-amd64 /usr/local/graphite_exporter

创建systemd服务

vim /usr/lib/systemd/system/graphite_exporter.service[Unit]
Description=prometheus graphite_exporter[Service]
Type=simple
ExecStart=/usr/local/graphite_exporter/graphite_exporter --graphite.mapping-config=/usr/local/graphite_exporter/graphite_exporter_mapping
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
RestartSec=42s[Install]
WantedBy=multi-user.target

启动 graphite_exporter

systemctl daemon-reload
systemctl restart graphite_exporter.service
systemctl enable graphite_exporter.service
systemctl status graphite_exporter

希望对正在查看文章的您有所帮助,记得关注、评论、收藏,谢谢您


http://chatgpt.dhexx.cn/article/yalbcsJf.shtml

相关文章

docker部署grafana graphite stastd实时监控告警配置_亲测成功

docker部署grafana graphite stastd实时监控告警配置_亲测成功 实时监控请求的次数和响应时间及异常报警 项目中需要监控API接口的调用情况,如:调用次数,每次调用耗时,调用高峰期,异常报警等 grafana graphite stastd这一套对代码没有侵入,也不会影响接口性能 安装docker环…

graphite安装笔记

0.Graphite目录 Graphite安装之后&#xff0c;在安装位置(默认为/opt/graphite)的文件布局如下&#xff1a; 目录介绍/opt/graphite/bin二进制文件目录/opt/graphite/conf配置文件目录/opt/graphite/lib库目录/opt/graphite/storage数据存放目录&#xff0c;包括log&#xff0c…

graphite 数据库_大数据存储和分析-IBM DB2和Graphite

在本文中,我们将结合IBM™Persistence API使用IBM DB2作为数据源,描述PCC系统中的数据存储。 此外,我们讨论了如何使用Graphite来检测代码库和工作负载。 最后,我们描述了用于分析数据的工具。 成绩单 IBM DB2和Java Persistence API DB2是IBM关系数据库服务器,已在整个…

graphite安装(一键搞定版)

一、python部分&#xff1a; 0、系统&#xff1a; $ cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) 1、检查系统python是否2.7以上&#xff08;最新graphite需要python至少2.7&#xff09;&#xff1a; $ python -V Python 2.7.5 2、安装pip&#xff1a;…

graphite http api

Render API Graphite web 提供了/render API用来生成图片和获取原始数据。这个API通过查询字符串支持各种参数。参数之间通过&进行分割&#xff0c;如下所示&#xff1a; &namevalue 你可以通过访问 http://GRAPHITE_HOST:GRAPHITE_PORT/render 这个url来确认这个A…

sitespeed+graphite+grafana

最近在看性能UI performance testing 的工具 其中一个是 sitespeed。 sitespeed.io 是 一款可监视和衡量网站前端性能的开源工具。 1. 开 源 2 . 支持事务模 拟 3 . 自动性能分析&#xff0c;形成可视化报 告 4 . 提供的 docker 镜像已搭建完成监控系统&#xff0c;满足…

在Ubuntu18.04使用Docker安装graphite

安装docker apt install docker.io 参照graphite官网&#xff0c;运行docker docker run -d \--name graphite \--restartalways \-p 80:80 \-p 2003-2004:2003-2004 \-p 2023-2024:2023-2024 \-p 8125:8125/udp \-p 8126:8126 \graphiteapp/graphite-statsd 查看docker&am…

graphite

Graphite 是一个用于采集网站实时信息并进行统计的开源项目&#xff0c;可用于采集多种网站服务运行状态信息。Graphite服务平均每分钟有4800次更新操作。实践已经 证实要监测网站发发生什么是非常有用的&#xff0c;它的简单文本协议和绘图功能可以方便地即插即 用的方式用于任…

Graphite详解

Graphite详解 作者&#xff1a;chszs&#xff0c;未经博主允许不得转载。经许可的转载需注明作者和博客主页&#xff1a;http://blog.csdn.net/chszs Graphite是一个开源实时的、显示时间序列度量数据的图形系统。Graphite并不收集度量数据本身&#xff0c;而是像一个数据库&…

时序数据库-Graphite

Graphite就属于一种时序数据库&#xff0c;作用是存储和聚合监控数据并绘制图标&#xff0c;不负责数据的收集。之所以想写一篇关于Graphite的博文主要是因为这是我接触到的另一种新型数据库&#xff0c;其特点和功能让人眼前一亮。但是需要强调的是&#xff0c;这里所谓的时序…

Graphite介绍

Graphite详解 https://www.2cto.com/kf/201603/494435.html Graphite是一个开源实时的、显示时间序列度量数据的图形系统。Graphite并不收集度量数据本身&#xff0c;而是像一个数据库&#xff0c;通过其后端接收度量数据&#xff0c;然后以实时方式查询、转换、组合这些度量数…

http中的XFF(X-Forwarded-For)

详细知识请移步大佬网页

攻防世界-xff_referer

题目 访问题目场景 抓包看看&#xff0c;打开场景&#xff0c;页面提示我们ip必须是123.123.123.123&#xff0c;我们就想到burpsuite抓包&#xff0c;添加上X-Forwarded-For:123.123.123.123 GET / HTTP/1.1 Host: 223.112.5.156:54671 X-Forwarded-For:123.123.123.123 User-…

XCTF2-web xff_referer

xff_referer 题目描述 X老师告诉小宁其实xff和referer是可以伪造的。 进入场景 提示对ip地址进行了限制 根据题目的描述&#xff0c;可以推测是伪造xff和referer。 根据要求构造xff和referer 轻松获得flag xff x-forwarded-for简称XFF&#xff0c;是http协议的一个扩展…

攻防世界-WEB:xff_referer

题目&#xff1a;https://adworld.xctf.org.cn/challenges/problem-set-index?id25&rwNmOdr1679149714756 题目描述&#xff1a;X老师告诉小宁其实xff和referer是可以伪造的。 根据题目描述&#xff0c;那就是考验xff和referer知识。 知识补充&#xff1a; XFF X-Forwarde…

day28 SQL注入HTTP头XFFCOOKIEPOST请求

前言 #知识点&#xff1a; 1、数据请求方式-GET&POST&COOKIE等 2、常见功能点请求方式-用户登录&IP记录等 3、黑盒白盒注入测试要点-SQLMAP注入参数 #补充点&#xff1a; 黑盒测试&#xff1a;功能点分析 1、后台要记录操作访问IP IP要进行代码的获取&#…

NGINX动态XFF黑名单配置

通过XFF地址动态限制访问 方案特点&#xff1a; 无需reloadAPI管理 NGINX PLUS的KEYVAL是可以通过API进行管理的内部可持久化kv存储。 KEYVAL查找XFF地址是否在黑白名单中&#xff0c;来实现访问控制。 KEYVAL存放黑白名单列表&#xff1a; 定义键值为1为白名单定义键值为…

xff-referer伪造ip地址和域名

layout: post title: “xff-referer伪造ip地址和域名” categories: [ctf] tags: [xff referer] 最新版的BurpSuite与以前版本不同&#xff0c;将raw headers hex这些二级导航栏去掉&#xff0c;改在了右侧显示&#xff0c;需要Add伪造ip和域名的时候&#xff0c;在该部分右侧底…

[CTF/网络安全] 攻防世界 xff_referer 解题详析

[CTF/网络安全] 攻防世界 xff_referer 解题详析 XFF及refererXFF格式referer格式姿势总结 题目描述&#xff1a;X老师告诉小宁其实xff和referer是可以伪造的。 XFF及referer X-Forwarded-For&#xff08;简称 XFF&#xff09;是一个 HTTP 请求头部字段&#xff0c;它用于表示 …

XCTF攻防世界练习区-web题-xff_referer

0x08 XFF Referer 【题目描述】 X老师告诉小宁其实xff和referer是可以伪造的。 【目标】 掌握有关X-Forwarded-For和Referer的知识: (1)X-Forwarded-For:简称XFF头,它代表客户端,也就是HTTP的请求端真实的IP,只有在通过了HTTP 代理或者负载均衡服务器时才会添加该项。…