1. Prometheus是什么?
Prometheus 是由 SoundCloud 开源监控告警解决方案,从 2012 年开始编写代码,再到 2015 年 github 上开源以来,已经吸引了 9k+ 关注,以及很多大公司的使用;2016 年 Prometheus 成为继 k8s 后,第二名 CNCF(Cloud Native Computing Foundation) 成员。作为新一代开源解决方案,很多理念与 Google SRE 运维之道不谋而合。
Prometheus是目前比较主流的监控和告警系统了,然而原生的Prometheus并没有提供高可用及集群存储方案,因此基于Prometheus的高可用推出了很多项目, 例如: Prometheus Operator、VictoriaMetrics等。下面我要介绍的正是VictoriaMetrics的相关技术。
2. VictoriaMetrics是什么?
VictoriaMetrics是一个支持高可用、资源消耗极低、可伸缩的时序数据库,它可用于Prometheus、InfluxDB、Graphite、OpenTSDB等其他监控系统数据的长期存储。集群版 VictoriaMetrics 用来实现大规模 Prometheus 集群的高可用,并提供了全局视图和可靠的历史数据存储,与 Thanos 的功能类似,但比 Thanos 的架构更简单,值得一试!
3. VictoriaMetrics有哪些特点?
VictoriaMetrics不仅仅是时序数据库,它优势主要有:
- 对外支持Prometheus相关的API,所以它可以直接用于Grafana作为Prometheus数据源使用, 同时扩展了PromQL查询语法;
- 支持全局查询视图。多个普罗米修斯实例可以将数据写入同一个namespace中。稍后,此数据可以在单个查询中使用;
- 针对Prometheus的Metrics插入查询具备高性能和良好的扩展性。甚至性能比InfluxDB和TimescaleDB高出20倍;
- 内存占用方面也做出了优化, 同等数据量下使用率比InfluxDB少10倍;
- 高性能的数据压缩方式,使存入存储的数据量比TimescaleDB多达70倍;
- 针对高延迟IO和低IOPS的存储进行了优化。
- 异常关闭情况下可以保护存储数据不受损坏
- 使用简单,不需要外部依赖、启动参数极其简单等
本文暂时没有评论,来添加一个吧(●'◡'●)