KUDU Master迁移

565 阅读2分钟

KUDU Master迁移

一、背景

kudu集群为3个master高可用集群,其中一个master节点需要下线维护,故迁移该节点的master角色至其他节点。

二、Kudu Master迁移

1、新增kudu master节点

在CM界面新增一个kudu master实例,但不启动

2 、记录 kudu master uuid

查看所有master uuid

sudo -u kudu kudu local_replica cmeta print_replica_uuids -fs_wal_dir=/data/sdv1/kudu_master/wal -fs_data_dirs=/data/sdv2/kudu_master,/data/sdv3/kudu_master 00000000000000000000000000000000 2>/dev/null

image.png

查看每个master节点master uuid

sudo -u kudu kudu fs dump uuid -fs_wal_dir=/data/sdv1/kudu_master/wal -fs_data_dirs=/data/sdv2/kudu_master,/data/sdv3/kudu_master 2>/dev/null

  image.png

根据上述结果确定需要迁移的master uuid

3、新增kudu master 节点初始化****

在新master主机上执行格式化,uuid为待下线master的uuid标识,并将目录改为kudu拥有者

kudu fs format -fs_wal_dir=/data/sdv1/kudu_master/wal -fs_data_dirs=/data/sdv2/kudu_master,/data/sdv3/kudu_master --uuid=246708ef96134cbbb84ce886a2a5e580

chown -R kudu:kudu /data/sdv{1..3}/kudu_master

  

4、新增kudu master 节点 元数据 复制****

从其他master节点复制元数据至新master

sudo -u kudu kudu local_replica copy_from_remote -fs_wal_dir=/data/sdv1/kudu_master/wal -fs_data_dirs=/data/sdv2/kudu_master,/data/sdv3/kudu_master 00000000000000000000000000000000 unionbigdata01.localdomain:7051

 

5 、更新 kudu master list****

在所有kudu master节点执行master list 更新操作

sudo -u kudu kudu local_replica cmeta rewrite_raft_config -fs_wal_dir=/data/sdv1/kudu_master/wal -fs_data_dirs=/data/sdv2/kudu_master,/data/sdv3/kudu_master 00000000000000000000000000000000 020825e1f55646928be758df617a8862:unionbigdata01.localdomain:7051 2caaa0752d2e41b4934ab3ccf0e25797:unionbigdata02.localdomain:7051 246708ef96134cbbb84ce886a2a5e580:unionbigdata03.localdomain:7051

image.png image.png  

三、Kudu Master重启

1、重启kudu master

删除停掉待替换的master

重启kudu master

image.png

2、 检查master状态

# sudo -u kudu kudu master list unionbigdata01.localdomain,unionbigdata02.localdomain,unionbigdata03.localdomain

image.png

image.png

image.png

3、 执行健康检查

   # sudo -u kudu kudu cluster ksck unionbigdata01.localdomain,unionbigdata02.localdomain,unionbigdata03.localdomain

image.png