influx-proxy icon indicating copy to clipboard operation
influx-proxy copied to clipboard

节点数据备份与高可用问题请教

Open tixff opened this issue 4 years ago • 6 comments

1.数据备份: 1)是否在keymap配置measurements指向多个backend 就可以实现数据备份 2)新的measureents添加是否都需要修改config.py添加 keymap配置再刷到redis 2.数据查询的的时候其中一个backend 挂掉proxy是否能自动切换到另外一个节点查询,写入同理

tixff avatar Mar 26 '21 02:03 tixff

另外挂掉的节点在重启后 能自动同步丢失的数据吗 保证各节点数据的一致性

tixff avatar Mar 26 '21 05:03 tixff

1.数据备份: 1)是否在keymap配置measurements指向多个backend 就可以实现数据备份 2)新的measureents添加是否都需要修改config.py添加 keymap配置再刷到redis 2.数据查询的的时候其中一个backend 挂掉proxy是否能自动切换到另外一个节点查询,写入同理

    1. 是的
    1. 对于新规则,可以通过config.py修改后刷到redis,也可以直接修改redis
  1. 如果在keymaps中配置了一个key对应多个backend,那么查询时,挂掉了一个backend,会尝试查第二个backend;对于写入,如果挂掉一个backend,proxy会将写入失败的数据缓存到本地,等待backend恢复后尝试写入

另外挂掉的节点在重启后 能自动同步丢失的数据吗 保证各节点数据的一致性

能同步之前宕机导致的未写入的数据,各节点数据的一致性是最终一致性

另外:可以参考基于本库 fork 后的新版本 influx proxy: https://github.com/chengshiwen/influx-proxy 支持了更多特性,也移除了python和redis的依赖 对比参考:https://github.com/shell909090/influx-proxy/issues/111

chengshiwen avatar Mar 26 '21 13:03 chengshiwen

  1. 如果在keymaps中配置了一个key对应多个backend,那么查询时,挂掉了一个backend,会尝试查第二个backend;对于写入,如果挂掉一个backend,proxy会将写入失败的数据缓存到本地,等待backend恢复后尝试写入

另外挂掉的节点在重启后 能自动同步丢失的数据吗 保证各节点数据的一致性

@chengshiwen 非常感谢您的耐心回答,基于以上我还有几点不清楚的地方 1)数据将失败的数据缓存到本地是指proxy节点所在的机器吗,默认缓存路径是什么位置呢,可配置吗?(考虑到如果数据量大,默认配置打到了较小的磁盘造成磁盘不够用) 2)失败节点恢复后是立即同步数据吗

tixff avatar Mar 26 '21 16:03 tixff

@tixff 1) https://github.com/shell909090/influx-proxy 是无法配置的,路径是执行influx-proxy的当前目录下的 .rec 和 .dat 文件;https://github.com/chengshiwen/influx-proxy 是可以配置的缓存目录的位置的。数据量大的问题,这个只能用更大的磁盘解决 2) 失败节点恢复后是立即同步数据吗? 是的

chengshiwen avatar Mar 27 '21 05:03 chengshiwen

@chengshiwen 了解了,https://github.com/chengshiwen/influx-proxy 新版本的配置(proxy.json)是动态加载的吗,还是需要手动重启proxy进行加载呢

tixff avatar Mar 28 '21 03:03 tixff

目前是重启加载,不会动态加载

chengshiwen avatar Mar 28 '21 04:03 chengshiwen