Nebula-BR备份数据到本地报错!
集群有三台机器,三台机器都分别部署了metad、graphd、storaged服务
三台机器都部署了agent,都是用的实际ip地址,没有用127.0.0.1
./agent --agent=“10.128.22.109:8888” --meta=“10.128.22.109:9559” &
Nebula-BR备份数据到本地报错!
集群有三台机器,三台机器都分别部署了metad、graphd、storaged服务
三台机器都部署了agent,都是用的实际ip地址,没有用127.0.0.1
./agent --agent=“10.128.22.109:8888” --meta=“10.128.22.109:9559” &
你的 Nebula 版本是多少?
3.0.0
metad 的这个报错应该关系不大,看看在执行 br 前后有没有其他报错。另外可以提供下 meta_dump 的 host 相关信息。
请问meta_dump 的 host 相关信息是什么?
不会,备份时三 metad 能正常备份,只是恢复时会有问题。
在nebula 的安装目录 bin 下,有个 meta_dump 工具。用法如:
./meta_dump --path=${your nebula data path}/meta/nebula/0/data
的确是这个问题;
现在解决办法有两个:
那台机器目前已经不用了,是不是集群目前还有那台机器的一些残留信息?我清理掉行不行?
是的,在 meta 中还有一些残留信息,是一个 host 表,你如果懂 rocksdb, 可以直接打开 metad 的 rocksdb 把他清掉。
请问metad的rocksdb在什么地方呢?我在存放数据的地方找了下,。没看到
metad 就是指 meta 服务,底层用了 rocksdb 存储,具体数据路径就是你之前使用 meta_dump 的路径;你想去掉这个过时的 host,可以参考 meta_dump 代码,打开 rocksdb,删除那个 host 对应的 key。这需要一定的 rocksdb 知识。
好的,谢谢你
我把metad的数据都删除了,storaged的数据不删,然后重新启动集群行不行?
啊,不行的;metad 的数据删除掉集群就坏了,只能删除其中的一个 key。