victoriametrics/vminsertVictoriaMetrics Cluster 是一个高性能、可扩展的时序数据库集群解决方案,由三个独立扩展的核心服务组成:
vmstorage 节点vmstorage 节点获取数据并合并结果vminsert 和 vmselect 的请求该集群架构允许每个组件独立扩展,以满足不同场景下的性能需求,适用于大规模时序数据的存储和查询场景。
推荐指定具体版本标签而非使用 latest:
bash# 拉取 vminsert 镜像 docker pull victoriametrics/vminsert:{TAG} # 拉取 vmselect 镜像 docker pull victoriametrics/vmselect:{TAG} # 拉取 vmstorage 镜像 docker pull victoriametrics/vmstorage:{TAG}
运行集群需要将三个组件网络连接在一起,以下是简化示例:
bashdocker run -d --name vmstorage \ -p 8482:8482 \ -p 8400:8400 \ -p 8401:8401 \ -v /path/to/vmdata-cluster:/storage \ victoriametrics/vmstorage:latest \ -storageDataPath=/storage \ -vminsertAddr=:8400 \ -vmselectAddr=:8401
bashdocker run -d --name vminsert \ -p 8480:8480 \ victoriametrics/vminsert:latest \ -storageNode=vmstorage:8400
bashdocker run -d --name vmselect \ -p 8481:8481 \ victoriametrics/vmselect:latest \ -storageNode=vmstorage:8400
创建 docker-compose.yml 文件:
yamlversion: '3.8' services: vmstorage: image: victoriametrics/vmstorage:latest volumes: - ./vmdata-cluster:/storage ports: - "8482:8482" - "8400:8400" - "8401:8401" command: - -storageDataPath=/storage - -vminsertAddr=:8400 - -vmselectAddr=:8401 restart: always vminsert: image: victoriametrics/vminsert:latest ports: - "8480:8480" command: - -storageNode=vmstorage:8400 depends_on: - vmstorage restart: always vmselect: image: victoriametrics/vmselect:latest ports: - "8481:8481" command: - -storageNode=vmstorage:8400 depends_on: - vmstorage restart: always
启动集群:
bashdocker-compose up -d
| 参数 | 组件 | 说明 |
|---|---|---|
-storageNode | vminsert/vmselect | vmstorage 节点地址,可多次指定以实现多节点配置 |
| 参数 | 说明 |
|---|---|
-storageDataPath | 数据存储目录路径 |
-retentionPeriod | 数据保留周期,默认1个月 |
-vminsertAddr | vmstorage 监听 vminsert 连接的地址 |
-vmselectAddr | vmstorage 监听 vmselect 连接的地址 |
-httpListenAddr | HTTP 服务监听地址,默认 ":8482" |
| 参数 | 说明 |
|---|---|
-httpListenAddr | HTTP 服务监听地址,默认 ":8480" |
-replicationFactor | 数据复制因子,默认1 |
| 参数 | 说明 |
|---|---|
-httpListenAddr | HTTP 服务监听地址,默认 ":8481" |
-cacheExpireDuration | 查询结果缓存过期时间,默认10秒 |
| 组件 | 端口 | 用途 |
|---|---|---|
| vmstorage | 8482 | HTTP API 端口 |
| vmstorage | 8400 | 接收来自 vminsert 的连接 |
| vmstorage | 8401 | 接收来自 vmselect 的连接 |
| vminsert | 8480 | HTTP API 端口(接收数据) |
| vmselect | 8481 | HTTP API 端口(接收查询) |
如果有任何问题,请联系 VictoriaMetrics 社区获取帮助:
各集群组件的源代码可在 VictoriaMetrics GitHub 仓库中找到:
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务