Results 90 comments of Shell.Xu

举例来说,如果你有机器A和B,希望做高可用同时分片。你可以这么配置。 A:8087 influxdb A B:8087 influxdb B A:8086 influx-proxy A B:8086 influx-proxy B BACKENDS = { 'influxA': { 'url': 'http://A:8087', 'db': 'monitor', 'zone':'local', 'interval': 1000 }, 'influxB': { 'url': 'http://B:8087',...

KEYMAPS有对应改过来么?

日志非常奇怪。从`Write body received by handler`来看,你的请求确实进了系统。但是从`new measurement: influxdb.cluster`来看,识别出来的measurement是influxdb.cluster,而且时间隔的太长了。建议在 https://github.com/shell909090/influx-proxy/blob/master/backend/cluster.go#L447 加一行调试语句,看看分发之前的记录到底是什么样子的。

@lhl-1983 我看了三遍没看懂你的问题,请问你的问题应该这么分解么? 请问下,这个(prometheus在(配置远端存储的API接口地址)写指向influxd-gateway)的url该怎么写?

您说的读写分离是什么意思?

我不大确定您说的表是指什么。一个或多个measurement可以映射到多个数据库,写入时这些库会同时写入,读取时会随机选中一个。redis的库是golang的redis连接配置问题,修改配置选项应该就可以做到。

一般来说,未写入数据会缓存在本地,等机器上线后会自动开始提交追平。所以注意一个副作用——如果机器离线很长时间,记得先置于write only不要改回来。因为写追平和新数据会同步提交,导致机器一直承受压力。这时候如果直接变为readwrite,会导致部分查询异常缓慢。等机器数据追平并做完写入后,再改为readwrite。 如果你在配置里干掉了宕机节点,那么你面临的就是数据迁移问题。influx的数据迁移是按日的。找到合适的文件,拷贝过去,done。你的节点宕机了几天,就需要迁移几天的全部数据。具体需要查一下influx的文档。

我不大明白为什么会有这个问题。所有的query直接打到proxy就好,proxy会分析这个query到底会被发到哪个backend,然后自动forward过去。

能看看是什么错么?先留在这里,有空分析一下为什么,能不能修复。

OK,我们先记下来,回头修正。