Kudu master 迁移

当Kudu集群中的Master节点宕机且无法恢复时,可以通过记录存活Master的UUID,格式化新主机,复制数据,更新Raft配置等步骤迁移Master服务。本文详细介绍了这个过程,包括必要的命令和操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

kudu集群运行避免不了服务器硬件,软件异常导致宕机。如果宕机的是master节点且服务器不能启动如何恢复master?下面介绍下如何在服务器宕机的情况下迁移master服务。

1. 将每个活着的master uuid 记录下来   

    命令:

      sudo -u kudu kudu fs dump uuid --fs_wal_dir=<master_wal_dir> [--fs_data_dirs=<master_data_dir>] 2>/dev/null

    示例:

     sudo -u kudu kudu fs dump uuid --fs_wal_dir=/data/data1/kmaster

      --fs_data_dirs=/data/data2/kmdata,/data/data3/kmdata,/data/data4/kmdata 2>/dev/null

2. 在活动的master上执行

     命令

      sudo -u kudu kudu local_replica cmeta print_replica_uuids --fs_wal_dir=<master_data_dir> <tablet_id> 2>/dev/null

      示例

      $ sudo -u kudu kudu local_replica cmeta print_replica_uuids --fs_wal_dir=/data/kudu/master/wal

         --fs_data_dirs=/data/kudu/master/data  00000000000000000000000000000000 2>/dev/null

 

3. 根据前面两个uuid 列表找出dead master uuid

4. 使用先前记录的死亡主机的UUID格式化替换主机上的数据目录。 使用以下命令序列:

      命令:

      sudo -u kudu kudu fs format --fs_wal_dir=<master_wal_dir> [--fs_data_dirs=<master_data_dir>] --uuid=<uuid>

      示例:

       $ sudo -u kudu kudu fs format --fs_wal_dir=/data/kudu/master/wal --fs_data_dirs=/data/kudu/master/data         

        --uuid=80a82c4b8a9f4c819bab744927ad765c

5. 使用以下命令将主数据复制到替换主服务器

     命令:

     sudo -u kudu kudu local_replica copy_from_remote --fs_wal_dir=<master_wal_dir> [--fs_data_dirs=<master_data_dir>]      <tablet_id> <reference_master>

tablet_id 固定值:00000000000000000000000000000000

      示例:

          sudo -u kudu kudu local_replica copy_from_remote --fs_wal_dir=/data/data1/kmaster --  fs_data_dirs=/data/data3/kmdata,/data/data2/kmdata,/data/data4/kmdata  00000000000000000000000000000000 cdh-15-170:7051

6. 使用cloucera manager在新主机上添加master

7. 更新master ,在所有master上执行,需要先停止活动的master服务

   命令:

   sudo -u kudu kudu local_replica cmeta rewrite_raft_config --fs_wal_dir=<master_wal_dir> [--fs_data_dirs=<master_data_dir>] <tablet_id> <all_masters>

tablet_id 固定值:00000000000000000000000000000000

   示例:

 sudo -u kudu kudu local_replica cmeta rewrite_raft_config --fs_wal_dir=/data/data3/kmaster/wal --fs_data_dirs=/data/data1/kmaster/data,/data/data2/kmaster/data,/data/data4/kmaster/data 00000000000000000000000000000000 5cd17814d4e748e0b52b776daaff21bf:cdh-15-170:7051 164623e4b7ee45139ad00f64ee84be84:cdh-15-171:7051 85534db90b604fe38323041af882363b:cdh-15-172:7051

8. 启动替换的master 和 重启之前的master ,重启tablet

9. 在kudu ui 界面查看master状态,每个master节点状态要一致

10. 执行健康检查脚本

  sudo -u kudu kudu cluster ksck master-01.example.com,master-02.example.com,master-03.example.com

 

11. 在cm上删除 死亡的Kudu master

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值