hadoop-2.0.0-cdh4.1.2升级到hadoop-2.7.2

升级前准备:

如果是 centos6.x的系统得升级glibc和pam包

在/etc/ld.so.conf 文件里添加 /usr/src/jdk1.6.0_23/jre/lib/amd64/server,然后运行ldconfig命令

配置好新的hadoop-2.7.2到各个集群服务器上

配置好新的环境变量备用

开始升级:

1.停止hive、hbase、zookeeper等相关服务

2.检查文件(如果文件太多太费时间可以不做)

hadoop dfsadmin -safemode enter

检查元数据块(过滤所有以小圆点开始的行):

hadoop fsck / -files -blocks -locations |grep -v -E '^.' > old-fsck.log
hadoop dfsadmin -safemode leave

3.停止hadoop集群

$HADOOP_HOME/bin/stop-all.sh

4.修改环境变量

source /etc/profile 各个集群都执行
echo $HADOOP_HOME 看是否是新的hadoop目录了

5.开始升级

hadoop-daemon.sh start namenode -upgrade 启动namenode升级

hadoop-daemons.sh start datanode 启动各个数据节点

打开日志文件观察有误错误,如果报内存溢出,修改hadoop-env.sh 文件的export HADOOP_HEAPSIZE,HADOOP_CLIENT_OPTS参数值和yarn-env.sh文件JAVA_HEAP_MAX参数值

打开50070端口web页面观察升级过程

等所有数据节点全部升级完成后,检查数据完整性(此过程根据集群数量得等一段时间)

hadoop fsck /

 

有问题回滚命令:

hadoop-daemon.sh start namenode -rollback 

hadoop-daemons.sh start datanode –rollback

6.提交升级

运行一段时间后,观察没有问题,可以提交升级

hdfs dfsadmin -finalizeUpgrade

 

原文地址:https://www.cnblogs.com/wsl222000/p/5409110.html