夜莺-Nightingale-开源云原生监控分析系统部署 Prometheus 作为时序库使用(配置多数据源)

夜莺-Nightingale-开源云原生监控分析系统部署 Prometheus 作为时序库使用(配置多数据源)

夜莺-Nightingale-开源云原生监控分析系统部署 Prometheus 作为时序库使用(配置多数据源)

💐The Begin💐点点关注,收藏不迷路💐

一、前言

Prometheus是一款开源的监控系统和时序数据库,广泛应用于云原生监控领域。在实际使用中,我们经常需要将其他监控系统(如夜莺监控)的数据写入Prometheus,这就需要启用Prometheus的remote write接收功能。本文将详细介绍如何正确部署Prometheus并配置remote write接收器。

二、Prometheus安装步骤

1. 下载并安装Prometheus

首先选择适合的Prometheus版本并下载:

mkdir-p /usr/local/prometheus wget https://github.com/prometheus/prometheus/releases/download/2.54.0/prometheus-2.54.0.linux-amd64.tar.gz tar zxvf /root/prometheus-2.54.0.linux-amd64.tar.gz -C /usr/local/prometheus 
在这里插入图片描述

2. 关键配置:启用Remote Write接收器

Prometheus默认不开启remote write接收功能,需要通过启动参数显式启用。根据版本不同,参数写法有所差异:

  • 老版本--enable-feature=remote-write-receiver
  • 新版本--web.enable-remote-write-receiver

不确定该用哪个参数时,可以通过以下命令查看:

./prometheus --help|grep receiver 
[root@zyl-server prometheus-2.54.0.linux-amd64]# ./prometheus --help | grep receiver--[no-]web.enable-remote-write-receiver --web.remote-write-receiver.accepted-protobuf-messages=prometheus.WriteRequest... ...  remote-write-receiver (DEPRECATED), native-histograms, otlp-write-receiver,[root@zyl-server prometheus-2.54.0.linux-amd64]# [root@zyl-server prometheus-2.54.0.linux-amd64]# [root@zyl-server prometheus-2.54.0.linux-amd64]# 

3. 创建Systemd服务

创建服务配置文件/etc/systemd/system/prometheus.service

cat <<EOF >/etc/systemd/system/prometheus.service [Unit] Description="prometheus" Documentation=https://prometheus.io/After=network.target [Service]Type=simple ExecStart=/usr/local/prometheus/prometheus-2.54.0.linux-amd64/prometheus --config.file=/usr/local/prometheus/prometheus-2.54.0.linux-amd64/prometheus.yml --storage.tsdb.path=/usr/local/prometheus/data --web.enable-lifecycle --web.enable-remote-write-receiver Restart=on-failure SuccessExitStatus=0 LimitNOFILE=65536 StandardOutput=syslog StandardError=syslog SyslogIdentifier=prometheus [Install] WantedBy=multi-user.target EOF 
在这里插入图片描述

4. 启动并验证服务

systemctl daemon-reload systemctl enable prometheus systemctl restart prometheus systemctl status prometheus 
在这里插入图片描述

三、验证Remote Write功能

Prometheus启动后,可以通过以下方式验证remote write接口是否正常工作:

  1. 检查Prometheus日志,确认没有错误信息

访问Prometheus的/api/v1/write接口:

curl-X POST http://localhost:9090/api/v1/write 

如果返回404,说明remote write接收器没有正确启用;如果返回"empty write request"等消息,说明接口已正常启用

在这里插入图片描述

四、修改夜莺配置文件对接时序库

夜莺作为 pushgateway,需要告诉夜莺时序库的地址在哪里。夜莺的配置文件是 etc/config.toml,修改 [[Pushgw.Writers]] 部分即可,核心是 Url 部分,夜莺接收到指标数据之后,会通过 Prometheus remote write 协议写入 Url 指向的时序库(任何支持 Prometheus remote write 的存储都可以用):

1. 再增加一个Prometheus 时序库。

[[Pushgw.Writers]]# Url = "http://127.0.0.1:8480/insert/0/prometheus/api/v1/write" Url ="http://127.0.0.1:9090/api/v1/write"# Basic auth username BasicAuthUser =""# Basic auth password BasicAuthPass =""# timeout settings, unit: ms Headers =["X-From", "n9e"] Timeout =10000 DialTimeout =3000 TLSHandshakeTimeout =30000 ExpectContinueTimeout =1000 IdleConnTimeout =90000# time duration, unit: ms KeepAlive =30000 MaxConnsPerHost =0 MaxIdleConns =100 MaxIdleConnsPerHost =100
在这里插入图片描述

2. 重启夜莺监控(N9E)服务:

systemctl restart n9e systemctl status n9e 
在这里插入图片描述

3. 夜莺数据源管理新增数据源

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


在这里插入图片描述

五、常见问题解决

1. 夜莺转发数据时报404错误

这通常是因为Prometheus没有启用remote write接收器。请检查:

  • 确保启动参数正确(--web.enable-remote-write-receiver--enable-feature=remote-write-receiver
  • 确认Prometheus版本与参数匹配

2. 权限问题

确保Prometheus对数据目录有读写权限:

chown-R prometheus:prometheus /opt/prometheus/data 

3. 端口冲突

如果9090端口被占用,可以通过--web.listen-address参数修改监听地址:

--web.listen-address=:9091 

六、总结

正确配置Prometheus的remote write接收器对于构建监控数据流水线至关重要。通过本文介绍的步骤,您可以轻松部署一个支持remote write的Prometheus实例,为后续与其他监控系统(如夜莺)的集成打下基础。

参考链接

在这里插入图片描述

💐The End💐点点关注,收藏不迷路💐

Read more

今日AI榜单速览(GitHub Trending AI Top3)

今日AI榜单速览(GitHub Trending AI Top3)

🔥 个人主页:杨利杰YJlio❄️ 个人专栏:《Sysinternals实战教程》《Windows PowerShell 实战》《WINDOWS教程》《IOS教程》《微信助手》《锤子助手》《Python》《Kali Linux》《那些年未解决的Windows疑难杂症》🌟 让复杂的事情更简单,让重复的工作自动化 今日AI热榜 * 1 1 今日榜单速览(GitHub Trending AI Top3) * 2 2 ruvnet / RuView:WiFi DensePose 的“无线透视”路线 * 2 我的一句话总结 * 2 为什么今天它能冲到第一? * 2 图:它的可视化界面长这样(很直观) * 2 我如何最快验证(不折腾工具链) * 3 3 K-Dense-AI / claude-scientific-skills:给

By Ne0inhk
盘点IDEA中那些实用的GIT小技巧

盘点IDEA中那些实用的GIT小技巧

作者:唐叔在学习 专栏:唐叔的Java实践 关键词:IDEA技巧,开发效率优化, 代码比较, 团队协作, 程序员必备, 代码管理 一句话:还在用Commit和Pull?唐叔教你解锁IDEA中那些隐藏的Git神操作,让代码管理变得如此简单! 文章目录 * 前言 * 🔄 一、智能更新项目:Update Project * 🔍 二、精准代码比较:Git Show Diff * 1. 当前修改比较:Git Show Diff * 2. 分支/标签比较:Compare Branch or Tag * 📜 三、追溯代码历史:Show History for Selection * 💾 四、灵活提取修改:Patch * 📦 五、暂存未提交代码:Uncommitted

By Ne0inhk
免费无套路!开源 PPT 神器 Presenton 本地部署全攻略,10 分钟搞定专业演示文稿

免费无套路!开源 PPT 神器 Presenton 本地部署全攻略,10 分钟搞定专业演示文稿

1.前言 AI生成PPT是一种利用人工智能技术帮助用户快速创建专业级演示文稿的方法。用户只需提供主题或内容大纲,AI算法就会自动分析并生成幻灯片,从而节省时间和精力。以下是几种常见的AI生成PPT的方式和工具. 上面的PPT 生成效果都不错,但是上面的PPT很多都是付费的。前段时间都豆包生成一个PPT ,生成的PPT 是非常好看,结果呢?好不容易上他生成的PPT。 结果下载下来的时候弹个框 1个月49 ,好像不便宜啊。关键是我平常用PPT 也不多,一个月 做不了几张。结果 要掏49块钱,我感觉这个钱可以订阅其他国外付费模型了。 有没有办法使用免费开源的PPT项目呢?这样我在公司内部搭建起来,数据私密性、会员费也都可以省了。呵呵这个想法不错。接下来我们在github找一下有没有PPT 生成的开源项目。结果真给我找到了,下面看一下生成的效果 总共我让它生成了8页,效果还是不错的。下面手把手带大家本地电脑上部署一个生成PPT 的开源项目。 2.项目的部署 这个项目的开源地址是:https://github.com/presenton/presenton 目前这个项目开源时

By Ne0inhk
Flutter 三方库 better_commit 的鸿蒙化适配指南 - 实现具备语义化提交规范与自动化交互的 Git 工作流插件、支持端侧版本工程的高效规范化审计实战

Flutter 三方库 better_commit 的鸿蒙化适配指南 - 实现具备语义化提交规范与自动化交互的 Git 工作流插件、支持端侧版本工程的高效规范化审计实战

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 三方库 better_commit 的鸿蒙化适配指南 - 实现具备语义化提交规范与自动化交互的 Git 工作流插件、支持端侧版本工程的高效规范化审计实战 前言 在进行 Flutter for OpenHarmony 开发时,当团队规模扩大到需要多人协同、频繁提交代码时,凌乱的 Commit Message 会让 Git 历史变得难以审计(如:分不清哪些是功能修复、哪些是底层鸿蒙适配)。better_commit 是一款专注于极致规范化提交的 CLI 增强工具。本文将探讨如何在鸿蒙端构建极致、专业的工程化提交标准。 一、原直观解析 / 概念介绍 1.1 基础原理 该库建立在“Angular 提交规范”之上。它通过交互式的命令行引导(

By Ne0inhk