天天看点

cloudera namager & CDH5 安装与升级

一、 准备工作

下载cdh的各种源:

1.下载cloudera manager installer:http://archive-primary.cloudera.com/cm5/installer

2.因为这次要模拟升级安装,首先要先下载beta的源:http://archive-primary.cloudera.com/cm5/redhat/5/x86_64/cm/5.0.0-beta-2/

3.然后下载release的源:http://archive-primary.cloudera.com/cm5/redhat/5/x86_64/cm/5.0.0/

4.然后下载parcel包,官方也推荐这种方式安装:http://archive-primary.cloudera.com/cdh5/parcels/

另外除了parcel包,还要下载json文件,没有那个json文件是无法正常安装的.

5.下载到本地后将rpm包的源,放到webserver目录下,写好yum的repo文件

[cloudera-manager]

name = Cloudera Manager, Version 5.0.0

baseurl = http://IP/yum-package/cm5/redhat/5/x86_64/cm/5.0.0/

gpgcheck = 0

6.parcel包添加验证文件

cat manifest.json 把sha那一段沾出来, 写到parcel包.sha文件里,然后为这三个文件授权755

(之前因为manifest.json文件改错,安装包一直失败,查看manager的log才发现问题)

至此准备工作完成!

二 、安装cloudera manager

./cloudera-manager-installer.bin 直接执行,这个还支持鼠标点击.

在最后一步前,准备好另一个终端,准备好手动拷贝刚才写的repo文件,因为安装时会被覆盖,所以只能手动反覆盖.......

完成manager机器的安装 就可以进web配置了,启动略慢

http://ip:7180

三、通过web安装cdh

1.添加完涉及的服务器后,手动指定parcel和agent的本地源

2.安装完成后选择服务,本次只选择了基本服务hdfs,yarn,zookeeper

3.指定角色,完成安装.

4.使用slave节点,测试上传文件ok

四、升级cloudera manager

升级cloudera manager

1.把当前跑的所有服务都停掉,包括服务.

2.停掉cloudera-scm-server和cloudera-scm-server-db

1

service cloudera-scm-server stop

2

service cloudera-scm-server-db stop

3.准备好新版本的manager的repo文件

执行yum clean all && yum upgrade 'cloudera-*'

rpm -qa  'cloudera-*' 查看版本

4.升级完成,启动server和db

5.进入web升级agent们,一进去就会有提示,然后手动指定url,升级就可以鸟.

五、升级CDH

  1. 注意先办法namenode数据, 
  2. # cd /mnt/hadoop/hdfs/name
    # tar -cvf /root/nn_backup_data.tar .      
  3. 点搜索框左边小礼品盒子图标,添加新版本parcel的url,添加后下面会多出个小图,点激活就可以自动升级了

至此完成所有升级.

六、错误整理

  1. 升级过程出现namenode启动失败问题,

java.io.IOException:

File system image contains an old layout version -51.

An upgrade to version -55 is required.

Please restart NameNode with the "-rollingUpgrade started" option if a rolling upgraded is already started; or restart NameNode with the "UPGRADE" to start a new upgrade.

手动到master节点启动后,停掉,再通过web页面重启后正常

hdfs --config /run/cloudera-scm-agent/process/XXX-hdfs-NAMENODE namenode -upgrade

2.另一个可能出现的报错:

 Get corrupt file blocks returned error: Cannot run listCorruptFileBlocks because replication queues have not been initialized.

删掉namenode节点的previous/目录即可

3. 由于前一次安装socket文件(/var/run/hdfs-sockets)没有正常删除,造成datanode启动失败,手动修改其权限为root解决

参考链接及文档:

报错解决(可能要翻墙):http://www.abcn.net/2014/04/upgrade-from-cdh5-beta2-to-cdh5-ga.html

官方pdf:Cloudera-Manager-Administration-Guide.pdf

CDH官方升级文档:http://www.cloudera.com/content/cloudera-content/cloudera-docs/CM5/latest/Cloudera-Manager-Managing-Clusters/cm5mc_upgrade_tocdh5_using_parcels.html

转自http://my.oschina.net/MaTech/blog/223150

继续阅读