Victoria Metrics是一个高速的,低能耗,可扩展的时间序列数据库。它可以作为Prometheus的长期远程存储。
当接收速率高于每秒100万个数据点时,建议使用集群版本。集群版在性能与空间存储可完美地扩展,不过配置和操作相对复杂。
VictoriaMetrics程序的集群版与单机版最大区别,实现了读写分离。读与写由不同的组件完成。
组件 | 作用 |
---|---|
vminsert | 写入组件,负责接收数据写入并根据对度量名称及其所有标签的一致 hash 结果将数据分散写入不同的后端 vmstorage |
vmstorage | 存储组件,存储原始数据并返回给定时间范围内给定标签过滤器的查询数据 |
vmselect | 读取组件,连接 vmstorage,获取查询数据 |
图中出现了5台服务器,1台Prometheus服务器,3台VictoriaMetrics服务器(每台同时安装3个组件),1台Grafana服务器。端口如下:
组件 | 端口 | 作用 |
---|---|---|
Prometheus | 9090 | Prometheus 网页端口 |
vminsert | 8480 | http端口,接收Prometheus的写入数据,并在/metrics显示状态 |
vmstorage | 8400 | 接收vminsert数据,存入硬盘。注意:任意一台vminsert数据都能接收 |
vmstorage | 8482 | http端口,存储组件使用,并在/metrics显示状态 |
vmstorage | 8401 | 响应vmselect查询请求 |
vmselect | 8481 | http端口,响应Grafana的读取数据,并在/metrics显示状态 |
Grafana | 3000 | Grafana 网页端口 |
3个主机同时部署VictoriaMetrics程序,每个组件需创建一个服务。
# 下载集群版二进制文件
wget https://github.com/VictoriaMetrics/VictoriaMetrics/releas