hadoop2.3cdh5.0.2 upgrade to hadoop2.5cdh5.5.0

两台机器,nn1,nn2搭建的ha,同时又担任nn,dn,rm,nm,jn,zkfc,zk等职能。

以下是升级回滚再升级的记录。仅供参考,同时参考了cdh官网的说明,官网主要是使用CM的。

1 官网上下载hadoop2.6cdh5.5.tar包和hadoop的rpm包

rpm2cpio hadoop.rpm | cpio –div

可以从里面找到我们需要的native的文件 。

2 复制原cdh下的etc/下的所有文件到hadoop2.6下的etc/hadoop

3 进入安全模式,生成fsimage文件 ,并备份整个metadata 文件夹

hdfs dfsadmin -safemode enter
hdfs dfsadmin –saveNamespace

cd /hdp/dfs/name
tar -cvf nn_backup_data.tar .

4. 关停所有相关的进程

stop-all.sh
stop-hbase.sh
ps -aef | grep java

5 纷发新的文件到其他节点

6 修改.bash_profile(根据你自己的配置)把HADOOP_HOME 指向新的目录

并纷发到所有机器上,并加载这个文件 使其生效。

7 先启动jn 然后升级hdfs metadata

hadoop-daemons.sh start journalnode

hdfs namenode -upgrade
hadoop-daemons.sh start datanode

根据你的block的数量情况,但是一般会很快的。我这边遇到的情况下,一直会报:缓存管理器在扫描之类的日志,好像是bug.不影响升级。

8 回滚

升级后,namenode ,journalnode和datanode下面的相关version等文件有变动.回滚的操作如下:

先操作journalnode的:

可以直接进入journalnode配置目录下,把current的改成new,把previous的改成current.

或执行

hadoop-daemons.sh start journalnode -rollback(未尝试)

hdfs namenode –rollback

hadoop-daemons.sh start datanode –rollback

9升级后测试

pdsh -w nn1,nn2 "source /home/student/.bash_profile; zkServer.sh start"

在nn2上,hdfs namenode –bootstrapStandby

同步新生成的fsimage

start-dfs.sh

start-yarn.sh

hadoop jar /app/cdh26550/share/hadoop/mapreduce2/hadoop-mapreduce-examples-2.6.0-cdh5.5.0.jar wordcount pi 10 100

你可能感兴趣的:(hadoop2.3cdh5.0.2 upgrade to hadoop2.5cdh5.5.0)