Apache Kudu TabletServer迁移

来源:互联网 发布:数据监控系统页面 编辑:程序博客网 时间:2024/06/07 18:01

Kudu集群tablet server迁移

1、在cloudera manager 界面上停止该节点的tablet server角色服务

2、通过脚本工具removeNode.sh,从kudu集群中删除该节点的所有tablet数据,使kudu集群自动选取其他节点替换该节点的服务

   脚本命令如下:

sh removeNode.sh idc-10-248-5-17.ddw.sina.com:7051,idc-192-168-8-41.ddw.sina.com:7051,idc-192-168-8-47.ddw.sina.com:7051 ea1f758d8f2649899cb684daac9f46a2 idc-10-248-1-34.ddw.sina.com:7050

sh removeNode.sh 集群地址 需要迁移的TabletServerUUID 集群中任一存活的一个服务节点

3、等待kudu集群自动恢复,完成tablet server的迁移下线

removeNode.sh 的脚本代码

#! /bin/bash

echo "input kudu master:$1 , taletId:$2, tabletName:$3 , go on? yes/no"

read value

if [ $value == yes ];then

kududata=$(kudu remote_replica list $3 | grep 'Tablet id')

IFS=$'\n'

for tablet in $kududata

do

echo '\n------------------------------------------------------------------------------------------'

tabletid=${tablet#Tablet id: };

echo su - kudu -c "kudu tablet change_config remove_replica $1 $tabletid $2";

su - kudu -c "kudu tablet change_config remove_replica $1 $tabletid $2";

done

fi

原创粉丝点击