首页 > TAG信息列表 > victoriametrics
victoriametrics 与Grafana Mimir 的一个性能对比
内容来自victoriametrics 官方,主要说明了victoriametrics 与Grafana Mimir 的性能差异 说明 victoriametrics 以及Mimir 都是我比较喜欢的prometheus metrics 存储服务,但是从能力上来说victoriametrics 更好毕竟相对来说轻量而且维护简单,victoriametrics 官方的这片文章还是值得学victoriaMetrics无法获取抓取target的问题
victoriaMetrics无法获取抓取target的问题 问题描述 最近在新环境中部署了一个服务,其暴露的指标路径为:10299/metrics,配置文件如下(名称字段有修改): apiVersion: v1 items: - apiVersion: operator.victoriametrics.com/v1beta1 kind: VMServiceScrape metadata: labels:victoriaMetrics库之布隆过滤器
victoriaMetrics库之布隆过滤器 代码路径:/lib/bloomfilter 概述 victoriaMetrics的vmstorage组件会接收上游传递过来的指标,在现实场景中,指标或瞬时指标的数量级可能会非常恐怖,如果不限制缓存的大小,有可能会由于cache miss而导致出现过高的slow insert。 为此,vmstorage提供了两个参mimir grafana 团队开源的时序数据存储服务
mimir 是grafana团队在Cortex基础之上新的时序存储引擎,底层基于对象存储就可以解决了 特性 100% prometheus 兼容 基于复制的高可用 基于对象存储的长时存储 基于分片以及水平扩展的强大查询性能 多租户支持以及数据隔离(同时支持租户联邦) 水平扩展的集群架构 支持metrics 输入(infVictoriaMetrics 1.73.1 值得关注的新特性
作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢! cnblogs博客 zhihu 公众号:一本正经的瞎扯 VictoriaMetrics 1.73.1 的changelog: https://github.com/VictoriaMetrics/VictoriaMetrics/releases/tag/v1.73.1 重点关注的是cache的配置: 在之前的版本,vm-storage中几个prometheus 数据传输到远程 VictoriaMetrics 存储
查看prometheus kubectl get prometheus k8s -n kubesphere-monitoring-system -o yaml 添加 http://172.31.115.19:8480/insert/0/prometheus/api/v1/write , 使prometheus 数据传输到远程 VictoriaMetrics 存储 apiVersion: monitoring.coreos.com/v1 kind: Prometgolang源码阅读:VictoriaMetrics中的协程优先级的处理方式
在阅读VictoriaMetrics的源码的时候,读到了那么平平无奇的一段: // AddRows adds the given mrs to s. func (s *Storage) AddRows(mrs []MetricRow, precisionBits uint8) error { if len(mrs) == 0 { return nil } // Limit the number of concurrent goroutines that may apromethes-远端存储
https://github.com/VictoriaMetrics/VictoriaMetrics https://docs.victoriametrics.com/Single-server-VictoriaMetrics.html wget https://github.com/VictoriaMetrics/VictoriaMetrics/releases/download/v1.71.0/victoria-metrics-amd64-v1.71.0.tar.gz 单机版 [root@local【VictoriaMetrics】vm-select源码阅读
调用层次表格 源文件 行号 函数 说明 app/vmselect/main.go 63 main 入口 92行调用 requestHandler app/vmselect/main.go 132 -requestHandler 处理http协议的入口 222行调用 selectHandler app/vmselect/main.go 236 --selectHandler 处理查询逻辑 326行调用 promethvictoriametrics在prometheus remotewrite下的使用
具体victoriametrics的功能和使用,我这里就不介绍了,官方文档上很全面的。这里说下我的拓扑和架构。prometheus的部署使用kube-prometheus的 operator方式部署。victoriametrics的部署使用sts方式部署。prometheus的数据通过remote_write方式写到victoriametrics里面,victoriametricspromethues 集成eureka 服务发现
prometheus 从v2.22 开始支持基于eureka的服务发现配置了(内置),对于基于eureka 的spring cloud 微服务解决方案的监控就很方便了,以下是一个简单的试用 环境准备 docker-compose 文件 version: "3" services: g: image: grafana/grafana portsVictoriaMetrics v1.36.0 的一些新功能
VictoriaMetrics 1.36.0 4个小时前发布了,以下是一些比较好的特性 支持replicationFactor 主要是进行数据复制,保证系统的可靠 vmstorage 性能提升 增强查询 vmauth 与vmalert 因为压缩不能工作问题 说明 VictoriaMetrics 的迭代还是比较快的,整体比较稳定 参考资料 https://githuVictoriaMetrics vmalert 集成vmauth 错误问题原因
通过调试发现通过vmauth 默认的编码是gzip的,所以会有问题,通过仔细查看vmalert 的命令参数已经包含了 禁用gzip 参数 -http.disableResponseCompression Disable compression of HTTP responses for saving CPU resources. By default compression isVictoriaMetrics vmauth 说明
VictoriaMetrics 的auth 组件是为了增强安全的,基于golang 的httputil.ReverseProxy ,当前支持的模式比较简单(基于配置文件) 包含的命令 vmauth-20200511-085829-heads-cluster-0-g6c88e352 Usage of ./vmauth: -auth.config string Path to auth configvmagent 方便的prometheus存储兼容的agent
vmagent 只是一个agent ,实现了prometheus 的remote_write 协议,同时强大的地方是支持influx ,opentsdb,graphite 。。。协议 基于此以及VictoriaMetrics可以灵活的扩展监控的处理 参考架构 说明 vmagent 的功能是很强大的,基于此我们可以实现灵活而且强大的基于prometheus 的victoriametrics 集群架构
victoriametrics 支持基于模式,同时拆分出了三大组件,vminsert,vmselect,vmstorage 参考图 从这张图我们可以看到insert 以及select 都是无状态的,只有vmstorage,对于insert 以及select 的扩展很简单,主要是vmstorage 配置说明 官方实际上已经提供了一个简单的基于docker-compose