如果监控全部接入单节点influxdb显然不能满足需求
Influxdb免费版不支持集群,商业版按照节点数收费不合理
在查询Influxdb监控数据的时候天然不会跨表(Measurement)查询
考虑到这些因素可以简单开发一个proxy来做数据分片,它的功能包括
- 按 db 和 measurement 分片写入不同节点
- 聚合查询请求
- 转发其它控制命令到所有节点
除此之外还有一个influx-proxy-ops模块,它的功能包括:
- 保存节点配置、转发规则到数据库
- 动态配置和更新influx-proxy中的配置
- 在某个节点宕机后,下线或者替换某个节点