Prometheus搭乘华为云GaussDB(for Influx):让监控数据更安全
摘要:GaussDB(for Influx)是一款分布式架构,云原生的时序数据库。可无缝被Prometheus集成,在协议上原生支持Prometheus远端存储对接至GaussDB(for Influx),解决了Prometheus在使用本地数据库存储数据的痛点问题。
本文分享自华为云社区《Prometheus搭乘华为云GaussDB(for Influx):让监控数据更安全》,作者:高斯Influx官方博客。
背景
Prometheus 作为一个独立的开源项目,开发者和用户社区非常活跃,目前已经有超过650+位贡献者参与其研发工作上,并且超过120+项的第三方集成。是目前很受欢迎的系统监控和告警工具包。但是Prometheus默认使用本地数据库存储数据,作为正式业务,面临无法弹性扩容、没有副本、没有备份等问题。
GaussDB(for Influx)是一款分布式架构,云原生的时序数据库。可无缝被Prometheus集成,在协议上原生支持Prometheus远端存储对接至GaussDB(for Influx),解决了Prometheus在使用本地数据库存储数据的痛点问题。
Prometheus的优势和不足
Prometheus 优势
Prometheus是一款开源的数据监控告警系统,支持数据的采集,存储,可视化以及告警功能。
1、Prometheus部署简单,依赖少。核心部分只有一个单独的二进制文件,不存在任何的第三方依赖(数据库,缓存等等) ,只需要下载一个包就可以运行起来。
2、功能完整,包括数据采集,存储,可视化,告警等功能,其基本架构如下:

数据采集部分,exporter用来采集监控数据,并向Prometheus server提供标准格式的监控数据。
数据存储部分,Prometheus Server负责数据的抓取和存储,其定时在目标上抓取metrics(指标)数据并保存到本地存储里面。Prometheus采用了一种Pull(拉)的方式获取数据,不仅降低客户端的复杂度,客户端只需要采集数据,无需了解服务端情况,而且服务端可以更加方便的水平扩展。Prometheus默认存储是一套TSDB本地部署的时序数据库。通过对接第三方时序数据库扩展历史数据的存储。
数据可视化部分默认提供了自带的UI界面,同时支持开源的Grafana工具。
Prometheus本地存储的问题
Prometheus的默认部署的本地时序数据库,可以减少其自身运维和管理的复杂度,能够满足大部分用户监控规模的需求,但是随着业务的增长和数据规模的不断扩大,本地存储存在一些无法解决的问题:
1、存储大小有限,且无法灵活扩容。存储容量有限,无法存储时间太长的数据,存储能力的扩展目前依赖磁盘的扩展,本地磁盘的扩展涉及到迁移数据等。
2、没有副本,可靠性不足。本地存储数据只有一份,没有副本架构,一旦磁盘或者数据损坏,无法修复。
3、存储成本高。数据库一般使用性能较高的SSD,数据存储成本高。
4、存储安全性低。所有人都可以看到本地的数据,数据安全性不足。
5、数据难共享。本地存储的数据库,不利于其他分析组件的数据共享。
6、缺少备份能力。本地数据库没有备份能力,一旦业务数据损坏,无法恢复数据。
GaussDB(for Influx)如何解决上述问题
GaussDB(for Influx)作为一款采用分布式架构,云原生的时序数据库,作为Prometheus的远程存储,完美解决了使用本地数据库存储时遇到的问题,并且可维护性,读写性能等方面也做了很多的优化。
1、存储按需扩容。GaussDB(for Influx)依托云原生能力,采用计算存储分离架构,存储使用分布式共享存储,实现了秒级扩容,且在扩容过程中不中断业务,可以根据业务需求灵活进行扩展,不担心随着业务增长,存储不足的问题。

2、三副本高可用架构。GaussDB(for Influx)基于华为分布式共享存储,将数据存为3副本,保证数据可靠性。业务写一份数据到数据库,系统会根据一定的策略将数据复制成3份,分别存储。如果其中一份数据损坏,系统会根据其他两份数据,重新恢复出被损坏的数据。
3、支持冷热存储分离。GaussDB(for Influx)支持数据冷热分离存储,时序数据随着时间的推移,其被查询和分析的概率越来越低。用户可以根据时序数据的特点以及业务需求将数据划分为热数据和冷数据,热数据保存在分布式共享存储上保证读写的性能。冷数据保留在低成本存储上,降低存储的成本。GaussDB(for Influx)支持一键购买冷存储,如下图所示,可以根据需要购买对应的冷存储空间。

4、数据安全性高。GaussDB(for Influx)的存储文件对业务是不可见的,客户只能通过InfluxQL语句来访问数据,而无法看到真实文件。降低了数据被损坏和泄露的风险。
5、数据访问共享分析。数据存储到远端时,其他组件可以通过数据库访问地址,直接访问采集到的数据。
6、支持备份功能。GaussDB(for Influx)依托云原生能力,支持全量备份和增量备份,数据一旦异常,可以选择历史备份迅速恢复。
除了以上优势外,GaussDB(for Influx)还在在计算能力方面,采用集群架构,支持灵活扩容。在写入性能,查询性能,数据压缩率等方面做了很多优化。
Prometheus使用GaussDB(for Influx)
配置
Prometheus使用GaussDB(for Influx)非常方便。在华为云上购买GaussDB(for Influx)实例后,只需要在配置文件prometheus.yml中添加以下配置项,然后重启Prometheus服务即可。
remote_write:
- url:"http://127.0.0.1:8086/api/v1/prom/write?db=prometheus&u=rwuser&p=******
remote_read:
- url: “http://127.0.0.1:8086/api/v1/prom/read?db=prometheus&u=rwuser&p=******
- 127.0.0.1:8086: 链接GaussDB(for Influx)实例的IP和端口,需要保证Prometheus部署机器的网络可以连通该IP。
- db=prometheus:数据写入指定的数据库名称。
- u=rwuser&p=******:购买GaussDB(for Influx)实例时的账号密码。
其余参数不变。
验证
重启后就可以通过Prometheus自带的界面来查询数据了。在浏览器中输入http://localhost:9090,打开Prometheus界面,输入一条查询语句,如下图:

可以看到已经可以查到相关数据。也可以通过登录GaussDB(for Influx)来查看写入的数据情况。登录数据库后,执行以下语句
use Prometheus
show measurements
可以看到Prometheus已经成功的写入数据了。如下图:

结束
本文作者:华为云数据库创新Lab & 华为云时空数据库团队
Prometheus搭乘华为云GaussDB(for Influx):让监控数据更安全的更多相关文章
- 揭秘华为云GaussDB(for Influx):数据直方图
摘要:本文带您了解直方图在不同产品中的实现,以及GaussDB(for Influx)中直方图的使用方法. 本文分享自华为云社区<华为云GaussDB(for Influx)揭秘第九期:最佳实践 ...
- 揭秘华为云GaussDB(for Influx)最佳实践:hint查询
摘要:GaussDB(for Influx)通过提供hint功能,在单时间线的查询场景下,性能有大幅度的提升,能有效满足客户某些特定场景的查询需求. 本文分享自华为云社区<华为云GaussDB( ...
- 升级的华为云“GaussDB”还能战否?
摘要:芯片.操作系统.数据库是现代信息技术领域的三大核心基础,做数据库,不仅需要技术和投入,对华为这种做通讯起家的企业,更需要的是一种并非玩票性质的态度. GaussDB,不仅蕴含着华为对数学和科学的 ...
- 华为云GaussDB(DWS)内存知识点,你知道吗?
前言 在日常数据库的使用中,难免会遇到一些内存问题.此次博文主要向大家分享一些华为云数仓GaussDB(DWS)内存的基本框架以及基本视图的使用,以便遇到内存问题后可以有一个基本的判断. 注意,本篇博 ...
- Prometheus入门到放弃(3)之Grafana展示监控数据
grafana我们这里采用docker方式部署 1.下载镜像 镜像官网地址:https://hub.docker.com/r/grafana/grafana/tags [root@prometheus ...
- 华为云PB级数据库GaussDB(for Redis)揭秘第七期:高斯Redis与强一致
摘要:在KV数据库领域,"强一致性"不仅是一个技术名词,它更是业务与运维的重要需求. 清明刚过,五一假期就要来了.大好春光,不如去婺源看油菜花吧!小云迅速打开APP刷出余票2张,赶 ...
- 一文带你读懂!华为云在ACMUG技术沙龙上都透露了些啥?
摘要:近日,华为云数据库业务总裁苏光牛在ACMUG中国MySQL用户组主办的 "华为云专场" 技术沙龙中分享了华为云数据库重磅新品GaussDB的核心能力与竞争优势.那么, Gau ...
- 华为云kafka POC 踩坑记录
2019/03/08 18:29 最近在进行华为云相关POC验证,个人主要负责华为云DMS kafka相关.大致数据流程是,从DIS取出数据,进行解析处理,然后放入kafka,再从kafka中取出数据 ...
- 走近深度学习,认识MoXing:初识华为云ModelArts的王牌利器 — MoXing
[摘要] 本文为MoXing系列文章第一篇,主要介绍什么是MoXing,MoXing API的优势以及MoXing程序的基本结构. MoXing的概念 MoXing是华为云深度学习服务提供的网络模型开 ...
- 华为云备案服务全面升级,EI助力带来极速体验
华为云备案"电子化核验"正式发布,备案更轻松.更快捷.自2019年9月12日起,华为云用户申请办理ICP备案可以通过华为云APP进行"ICP备案主体真实身份信息采集&qu ...
随机推荐
- OI 模板合集
update on 2023.10: 这篇博客的原本意义是 方便直接复制 / 快速复习,但部分原有代码存在本质错误,完全没有起到这个作用,故重构. 由于折叠代码块在某些 markdown 编辑器中不支 ...
- 停止 Windows 11 更新的行之有效的办法,去掉 Windows Defender 实时监控(Win 11)
用设置的方法,几乎无法达成目的.即使禁用 Windows 11 服务里的 "Windows 更新" 服务,系统也会自己将之改成手动,然后再打开. 先找到控制面板 -> 服务, ...
- Codeforces Round 856 (Div. 2)C
C. Scoring Subsequences 思路:我们想要找到满足的最大值的长度最长的的区间,因为单调不减,所以更大的数一定在最大值的里面包含,所以我们用两个指针维护这样一个满足当前i的最大值区间 ...
- 技术向:一文读懂卷积神经网络CNN(转)
目录(?)[-] 卷积神经网络 神经网络 卷积神经网络 1 局部感知 2 参数共享 3 多卷积核 4 Down-pooling 5 多层卷积 ImageNet-2010网络结构 DeepID网络结构 ...
- 产品代码都给你看了,可别再说不会DDD(十):CQRS
这是一个讲解DDD落地的文章系列,作者是<实现领域驱动设计>的译者滕云.本文章系列以一个真实的并已成功上线的软件项目--码如云(https://www.mryqr.com)为例,系统性地讲 ...
- 【pwn】[MoeCTF 2022]babyfmt --格式化字符串漏洞,got表劫持
拿到程序,先checksec一下 发现是Partial RELRO,got表可修改 当RELRO保护为NO RELRO的时候,init.array.fini.array.got.plt均可读可写:为P ...
- P5318 查阅文献
题意大概意思就是分别用dfs与bfs遍历一个图,特殊要求是从编号小的点开始遍历. 用邻接表存图,至今我也没想明白怎么才可以从编号小的点开始遍历,明白是排序,但是不知道如何排序,题解中的排序方法是:按照 ...
- .NET领域性能最好的对象映射框架Mapster使用方法
Mapster是一个开源的.NET对象映射库,它提供了一种简单而强大的方式来处理对象之间的映射.在本文中,我将详细介绍如何在.NET中使用Mapster,并提供一些实例和源代码. 和其它框架性能对比: ...
- C/C++ 运用Npcap发送UDP数据包
Npcap 是一个功能强大的开源网络抓包库,它是 WinPcap 的一个分支,并提供了一些增强和改进.特别适用于在 Windows 环境下进行网络流量捕获和分析.除了支持通常的网络抓包功能外,Npca ...
- 聊聊分布式 SQL 数据库Doris(八)
稀疏索引 密集索引:文件中的每个搜索码值都对应一个索引值,就是叶子节点保存了整行. 稀疏索引:文件只为索引码的某些值建立索引项. 稀疏索引的创建过程包括将集合中的元素分段,并给每个分段中的最小元素创建 ...