meta 服务迁移

提问参考模版:

  • nebula 版本:v2.6.1
  • 部署方式:分布式
  • 安装方式:RPM
  • 是否为线上版本:Y

因为机房搬迁,现在要对nebula 集群进行迁移。
原先的是A B C 三节点,三个meta 服务。
我的想法先扩容到六台 A, B, C + D, E, F 现在下掉了A B C 的graph 和 storage
现在想迁移meta 服务
参考这个对metad进行迁移 - #5,来自 ThomasWang 还是不太懂,具体怎么操作。
看文档上有个脚本,也没明白 这个脚本怎么使用,是把 D E F 的配置中meta 设置改好 然后运行脚本嘛?但是这样不久有一段时间的服务不可用了吗?还是啥意思?

ping

是只迁移 metad 服务吗?

如果只迁移 metad 的话,大概流程就是:

  1. 找三台新机器,安装 metad,然后利用老集群的 data 文件夹替换掉新集群每台机器上的 data 文件夹。替换时可以任意一对一替换,比如 A->D, B->E, C->F
  2. 启动 DEF 三台机器上的 metad。
  3. 然后对 DEF storaged/graphd 每一台(逐台):
    • 停掉后
    • 修改配置文件中 metad 地址为 DEF 地址
    • 重启

强烈建议先用一个测试集群练练手,没问题再动线上集群。

1 个赞

现在的情况是机房迁移。
三个 metad graphd storaged 都需要迁移。如上面的做法,graphd, storaged 已经通过扩容 缩容 变成了DEF, metad 还在ABC 上。
如果利用老集群的data 文件替换新机器的data文件,data 文件下面有多个空间的数据,如下,如果直接替换文件夹的话,是不是数量太大了? 还有 A B C 三个metad 是A → D 还是 A → E 呢?这个怎么判断

[root@idc-nebula-01 nebula]# ll
total 0
drwxr-xr-x. 3 root root 18 Oct 13 10:37 0
drwxr-xr-x. 4 root root 29 Oct 13 17:27 12
drwxr-xr-x. 4 root root 29 Oct 13 17:43 24
drwxr-xr-x. 4 root root 29 Oct 13 17:27 30
drwxr-xr-x. 4 root root 29 Oct 13 17:23 39

楼上说的意思 就是把ABC的三个meta的data_path(看meta配置文件) 分别复制到DEF (任意一对一关系就行) 然后把所有配置里面的meta地址都改掉

把data/meta 的文件复制到了 D E F
然后启动了D E F 的meta 服务,一直leader 没有选举成功。(旧的ABC 机器 metad 服务没有停掉)

I1017 17:44:50.379259 29830 MetaDaemon.cpp:110] Leader has not been elected, sleep 1s
I1017 17:44:51.379338 29830 MetaDaemon.cpp:110] Leader has not been elected, sleep 1s
I1017 17:44:52.379417 29830 MetaDaemon.cpp:110] Leader has not been elected, sleep 1s
I1017 17:44:53.379498 29830 MetaDaemon.cpp:110] Leader has not been elected, sleep 1s
I1017 17:44:54.379575 29830 MetaDaemon.cpp:110] Leader has not been elected, sleep 1s
I1017 17:44:55.379654 29830 MetaDaemon.cpp:110] Leader has not been elected, sleep 1s
I1017 17:44:56.379736 29830 MetaDaemon.cpp:110] Leader has not been elected, sleep 1s
I1017 17:44:57.379823 29830 MetaDaemon.cpp:110] Leader has not been elected, sleep 1s
I1017 17:44:58.379907 29830 MetaDaemon.cpp:110] Leader has not been elected, sleep 1s

刚刚想着把A 机器的meta,graph,storage 配置改成新的meta ips,重启,然后现在也是重启失败了

但是我还有一个疑问,着是一个typo 吗? 写了不支持扩容缩容,不支持迁移新机器,
我的这个需求不就是迁移到新机器吗

所有都的地方meta地址都要改掉 包括meta、graph、storage

另外meta还需要把local_ip也改掉

想象成在DEF重新部署一个集群

是的,之前已经弄好了。
现在对文档有上面那个疑惑?
另外:在我重新启动新的metad 服务的时候,会不会有数据缺失的情况?

已经呼唤文档 @RandomJoe

只要遵循停ABC → 迁移 → DEF重启就不会丢

明白了, 感谢

此话题已在最后回复的 7 天后被自动关闭。不再允许新回复。