环境

原IP

目标IP

迁移的服务

备注

192.168.11.20

192.168.11.23

nebula-metad

nebula-graphd

nebula-storaged

服务部署目录/opt/nebulagraph

数据存储目录/data/nebula

192.168.11.21

192.168.11.24

192.168.11.22

192.168.11.25

迁移前的准备

  1. 操作系统和环境要保持一致
  2. 系统存储的目录要保持一致
  3. NebulaGraph安装的目录要保持一致

操作实战

  1. 停止原服务
/opt/nebulagraph/scripts/nebula.service stop all
  1. 压缩服务部署目录/opt/nebulagraph数据存储目录/data/nebula,每一台都样的压缩
压缩nebulagraph服务
 cd /opt
 zip -r nebulagraph.zip  nebulagraph
 压缩数据目录
 zip -r data.zip data
  1. 使用scp命令把原IP服务目录和数据存储复制到对应的目标IP上
192.168.11.20
scp nebulagraph.zip root@192.168.11.23:/opt
scp data.zip        root@192.168.11.23:/data
192.168.11.21
scp nebulagraph.zip root@192.168.11.24:/opt
scp data.zip        root@192.168.11.24:/data
192.168.11.22
scp nebulagraph.zip root@192.168.11.25:/opt
scp data.zip        root@192.168.11.25:/data
  1. 使用unzip或者tar进行解压.
unzip nebulagraph.zip
unzip data.zip
以上目录要和原来机器的目录保持一致
  1. 修改nebula-graphd.conf nebula-metad.conf nebula-storaged.conf配置文件
原来配置--meta_server_addrs=192.168.11.20:9559,192.168.11.21:9559,192.168.11.22:9559
修改配置--meta_server_addrs=192.168.11.23:9559, 192.168.11.24:9559,192.178.11.25:9559
--local_ip=192.168.11.20 ---修改成本机的IP
  1. 先启用metad和graphd服务
/opt/nebulagraph/scripts/nebula.service start metad  
/opt/nebulagraph/scripts/nebula.service start graphd
  1. 查看服务是否被启动
1. /opt/nebulagraph/scripts/nebula.service status all
  1. 通过这个命令找到meta的leder节点利用leder节点更换hosts
使用客户端登录
./nebula-console-linux-amd64-v3.6.0 -addr 192.168.11.24 -port 9669 -u root -p
输入命令找出meta的leader
show meta leader

NebulaGraph 3.6的迁移​_数据存储

  1. 利用meta的http服务替换storaged机器的host替换
curl -Gs "http://192.168.11.24:19559/replace?from=192.168.11.20:9779&to=192.168.11.23:9779"
curl -Gs "http://192.168.11.24:19559/replace?from=192.168.11.21:9779&to=192.168.11.24:9779"
curl -Gs "http://192.168.11.24:19559/replace?from=192.168.11.22:9779&to=192.168.11.25:9779"


NebulaGraph 3.6的迁移​_linux_02

    提示这个Replace Host in partition and zone successfully代表替换成功了


  1. 启动storage
/opt/nebulagraph/scripts/nebula.service start storage

查看服务的服务是否正常启动

/opt/nebulagraph/scripts/nebula.service status all
  1. 查看hosts及分区使用客户端进去
./nebula-console-linux-amd64-v3.6.0 -addr 192.168.11.24 -port 9669 -u root -p
输入密码
进入后输入
show hosts;

NebulaGraph 3.6的迁移​_linux_03

以上表示原IP到目标IP已经切换完成


  1. 删除原IP,迁移成功
drop HOSTS192.168.11.20:9779, 192.168.11.21:9779,192.168.11.22:9779;

NebulaGraph 3.6的迁移​_linux_04

  1. 删除后,证明迁移正常

NebulaGraph 3.6的迁移​_linux_05