[知识分享]TDH5.x更换磁盘后配置操作


#1

5.x更换磁盘步骤如下:


1.在集群的服务去掉更换磁盘被挂载的目录
在服务的配置中依次搜索dir或者path.data等关键字,在参数配置中去掉需要更换盘的路径

修改后保存并配置服务,从前到后依次修改服务的配置,修改完成后。从后往前停止被修改的服务,再从前往后启动被停止的服务

注:如果需要更加多块磁盘,最好是一块一块的替换,防止数据的丢失,更换完成一块后,过一定的时间查看
hadoop fsck / 是否有缺失的block,Mis-replicated blocks和Corrupt blocks为0再更换下一块磁盘

2.去机房找到要需要更换的磁盘,把新的磁盘给换上去
然后在磁盘上创建刚刚被去掉的路径,目录和权限参照节点下其他盘的相同目录

3.参照步骤1,把加入的磁盘按照刚刚去掉的操作给重新加上,目录和原来保持一致
修改后配置服务,重启服务

4.换盘结束,最后查看hadoop fsck /看数据是否完整


更换磁盘后操作举例:

cfctdh193 硬件原槽位更换硬盘,/dev/sdb -> /dev/sdj, 根据实际情况调整-N选项后的inode数

mkfs.ext4 -F -N 20000000 /dev/sdj

在fstab里替换sdb为sdj,只在OS层做映射变换,对TDH上各个服务还是原来的/mnt/sdb路径

vim /etc/fstab

此时如果直接mount,重启Inceptor等服务,仍旧无法识别到新盘。通过findmnt可以发现/mnt/sdb以及被标记为deleted

[root@cfctdh193 mnt]# findmnt | grep inceptor1
├─/transwarp/mounts/inceptor1/mnt/sdb/hadoop/ngmr/inceptor1 /dev/mapper/centos_cfctdh193-root01[/tmp/mnt-sdb/hadoop/ngmr/inceptor1//deleted] ext4 rw,relatime,seclabel,stripe=64,data=ordered

Manager界面依次关闭slipstream, inceptor, hyperbase, search, yarn, hdfs

ps:可以不用全局停止服务,简易操作是,将故障节点(cfctdh193)相关角色都关闭,分别在相关服务中点击“配置服务”,再重启节点的角色

确保/mnt/sdb下现在没数据,删除并重新创建目录。挂载/dev/sdj到/mnt/sdb

PS:关于删除和重建/mnt/sdb:一开始并不知道采用“配置服务”的形式。现在仍不确定该操作是否会自动挂载/etc/fstab的内容 。当时手动mount新盘,既不报错(包括OS日志)也不成功。故猜测是目录的fd被OS占用,在确认/mnt/sdb没数据的情况下,进行重建才mount成功。

重新创建的目录才能成功挂载

rm -rf /mnt/sdb

重新创建目录才能成功挂载

mkdir /mnt/sdb
mount -a

检验/dev/sdj成功挂载

df -h | grep sdj

创建hdfs, yarn,search和inceptor,slipstream必要的目录

mkdir -p /mnt/sdb/hadoop/data
mkdir -p /mnt/sdb/hadoop/ngmr
mkdir -p /mnt/sdb/hadoop/yarn/loal
mkdir -p /mnt/sdb/hadoop/yarn/logs

更改上述的目录的owner和group,具体的用户和组参考其他盘的对应目录,如:

chown -R 1001:1002 /mnt/sdb/hadoop/data
chown 1005:root /mnt/sdb/hadoop/ngmr/inceptor1/
chown -R crm:1002 /mnt/sdb/hadoop/yarn/local
chown -R crm:1002 /mnt/sdb/hadoop/yarn/logs

Manager界面依次启动hdfs, yarn, search, hyperbase, inceptor, slipstream


在线支持