简单,可复制

点点滴滴,尽在文中

  :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

假设namenode是yy8,备份节点是yy9,计划把namenode迁移到yy9,备份节点迁移到yy10

停止集群

停止整个集群

su hadoop
/usr/local/hadoop/bin/stop-all.sh

 

更新配置信息

 同步集群hosts文件

修改

192.168.20.9    yynamenode
192.168.20.10    yysecondary
192.168.20.9    yyjobtracker
192.168.20.9    hivemysqlserver
192.168.20.9    yyhbasemaster

批量同步hosts文件到集群 

修改接口机的/etc/hosts文件,指向新的主节点

 

修改hadoop slaves配置

同步集群全部hadoop配置

 

清理新namenode 8的crontab和启动脚本

停止namenode 8的hadoop用户的crontab

去掉namenode 8 nfs自动挂载服务

卸载namenode 8 nfs目录

umount /web/hadoop/backup

 

 

清理namenode 9的crontab和启动脚本

关闭新namenode 9 hadoop用户的crontab

关闭新namenode 9的nfs服务

/etc/init.d/nfs-kernel-server stop

 

 

初始化namenode 9的环境

启动新备份节点10的nfs服务

修改新备份节点10的启动项

/etc/init.d/nfs-kernel-server start

 

 

修改新namenode 9 nfs自动挂载服务

vim /etc/rc.local
mount
-t nfs -o soft 192.168.20.10:/web/nfshadoop /web/hadoop/backup

 

在新namenode 9上恢复最新的元数据

rm -rf /web/hadoop/hdfs/name/*  (use mv backup?)
cp -rf /web/nfshadoop/nfsname/* /web/hadoop/hdfs/name/

 

在新namenode 9上挂载新的nfs目录

加载新namenode 9 nfs自动挂载服务

vim /etc/rc.local
mount -t nfs -o soft 192.168.20.10:/web/nfshadoop /web/hadoop/backup

 

恢复集群

启动新namenode 9

su hadoop
/usr/local/hadoop/bin/hadoop-daemon.sh start namenode

!!!!!启动后,查看下hdfs文件信息,确保hdfs数据齐全,可以按照hive表的分区来查看,如果数据不齐全,再启动datanode,多余的数据块会被删除,造成不可恢复的丢失数据

 

启动hadoop集群

su hadoop
/usr/local/hadoop/bin/start-all.sh

 

检查hadoop集群,检查集群状态

 

在新namenode上恢复hive

source hive_databases.sql

 

 在任意节点上测试hive,看运行是否成功

 

修改启动脚本,hadoop运维脚本,hadoop crontab脚本

mapred log的rsync同步

检查数据备份和报警

posted on 2013-10-09 18:38  ggjucheng  阅读(981)  评论(0)    收藏  举报