删除一个host之后查询数据失败

  • nebula 版本:“3.6.0”

  • 部署方式:单机

  • 安装方式:RPM

  • 是否上生产环境:N

  • *硬件信息

    • 磁盘512G
    • cpu 16核,内存128G
  • 问题的具体描述:删除了一个host之后,数据丢失了,急急急!!!
    image

  • 相关的 meta / storage / graph info 日志信息(尽量使用文本形式方便检索)
    删除host之前是如下的样子


    由于想要创建snapshot,尝试执行create snapshot,报错如下

    配置均使用默认墨汁,经过查询以为是需要修改配置中的ip地址,所以将默认配置中的127.0.0.1修改为机器的真实ip,同时重新添加机器真实ip的host,这时候日志中报错如下:

    然后又将配置还原,host还原,出现了上述问题,数据丢失了,其他一切正常
    如果有日志或者代码,记得用 Markdown 语法(下面语法)包裹它们提高阅读体验,让回复者更快解决问题哟~~

代码 / 终端输出 / 日志…

show stats了一下,数据全部丢失了,应该如何恢复数据呢

你说的删除hosts是指修改了配置中的IP吗?
如果没执行DROP HOSTS那不叫删除hosts,从你执行snapshot的截图来看,是graph服务挂了。

帖子里有一些描述不清晰的地方希望你补充一下:1、删除hosts的操作具体做了什么;2、从帖子后面的描述看来你只是创建snapshot失败后改了config里IP的配置(请补充下是改了所有服务的config还是某个服务的config);3、最后一张log截图出自哪个文件,请贴一下文件名。

最后建议你先检查下3个服务的运行状态。

[quote=“zzzyr, post:5, topic:16109, full:true”]
我的操作过程如下:
初始的hosts如下

然后执行了drop hosts “7.192.128.172”:9779,之后的hosts如下,此时一切正常
image

接着,我修改了配置文件,将nebula-graphd.conf、nebula-metad.conf、nebula-storaged.conf中如下图红色框中的内容全部修改成了绿色框中的内容,即将ip127.0.0.1修改为了7.192.128.172
image

修改完配置之后,又执行了命令:add hosts 7.192.128.172:9779,此时再查看hosts如下


此时查看log文件nebula-storaged.ERROR,出现了如下错误:

最后我又把所有的etc目录下的配置和hosts回复原样,数据就都没有了

3个服务的状态

你改IP之前drop hosts那一次其实也是合理的(因为一开始没改IP的时候,你不仅加了个无效的hosts,而且是把graph当成storage加进去了)。

其实这个时候,你只要再把3个服务的config里IP改回去,重启服务,然后再DROP HOSTS 7.192.128.172:9779 按理说就恢复回一开始的状态了。

但是现在你说恢复了etc下的配置,是指直接用之前备份的etc目录覆盖了么?还是说把config里hosts改回去。如果只是改回去,再drop掉公网IP的hosts,按理说是可以恢复的。

那你现在连接服务上去再show hosts有哪些节点

现在系统认为127.0.0.1上的storage服务在线的,也有有效的partition,应该是有数据的,可以执行下简单的查询命令看下

现在show stats还是0
image
之前是有0.4亿个entity类型的节点
image

你之前对etc目录有没有执行过cp之类的覆盖操作,看起来是storage里的data没了

这个时候能否用BR工具备份恢复一下呢,或者用checkpoint恢复是否可行呢

没有做过覆盖操作

有backup过的话是可以用br恢复的,checkpoint我需要再确认下。

你主要要得看下storage的data目录有没有覆盖过

你用的这个ownthink数据集是我们开源过的资料,可以考虑重新import data

请问是否有操作指导连接呢,我重新操作一下,十分感谢~

BR没有做过backup,data目录下面的storage也没有覆盖过,但是看文件夹的修改时间是有做过改动的,但非人为主动修改

现在ownthink的资源获取方式:https://github.com/ownthink/KnowledgeGraphData

nebula 1.x时代的资料:使用图数据库 Nebula Graph 数据导入快速体验知识图谱 OwnThink

你可以看下storage的data目录体积多大,因为反复drop过hosts,所以很难说是否会对数据造成影响。