CDH集群 Spark1.6 升级到 Spark2.2 全纪录

注:公司CDH集群版本为5.13.0
这里写图片描述


我们用的CDH 5.13.0集群几乎算是最新的版本了,但默认安装的Spark依旧是1.6版本,看来1.6的确经典啊。。但鉴于Spark2.0以后变化较大,为了方便新来员工技术发展,我决定把Spark1.6升级为spark2.2版本(2.3版本刚出不久,算是最新了)。经查阅官方文档,发现spark1.6和2.x是可以并行安装的,也就是说可以不用删除默认的1.6版本,可以直接安装2.x版本,它们各自用的命令、端口也不一样。( History Server port is 18089 instead of the usual 18088)


一、安装准备

Cloudera官方Spark升级文档:
https://www.cloudera.com/documentation/spark2/latest/topics/spark2_installing.html
官方CSD文件及Parcels包下载地址:
https://www.cloudera.com/documentation/spark2/latest/topics/spark2_packaging.html#versions

这里写图片描述
CSD文件和Parcel版本注意对应!(Cloudera1和2也要注意对应)

这里写图片描述
Parcel包的版本根据自己操作系统来,我们是Centos7所以选择el7,Centos6选择el6

二、正式安装步骤

1.在CM主界面打开 管理 - 设置 - 自定义服务描述符,查看本地描述符存储库路径,根据路径选择CSD文件放置目录,默认是:/opt/cloudera/csd
这里写图片描述

然后将CSD的jar包放在集群所有机器的该目录,并修改文件所属用户和组(注意如果本目录下有其它jar包,请删掉或者移到其他目录)

chown cloudera-scm /opt/cloudera/csd/SPARK2_ON_YARN-2.2.0.cloudera2.jar 
chgrp cloudera-scm /opt/cloudera/csd/SPARK2_ON_YARN-2.2.0.cloudera2.jar 

2.上传parcel包到主节点的parcel-repo目录下(该目录为CDH的安装目录,默认为/opt/cloudera/parcel-repo,我的是/home/cdh/cloudera/parcel-repo)。
注意该目录下如果有其他的安装包,不用删除 ,但是如果有重名的manifest.json文件,则把它重命名备份掉。然后把那3个的文件放在这里
这里写图片描述
这里写图片描述

3.现在可以重启安装Spark2服务了
在CM主界面停止集群Cloudera Management Service,然后在集群CDH安装目录下启动serveragent进程:

/home/cdh/cm-5.13.0/etc/init.d/cloudera-scm-server restart
/home/cdh/cm-5.13.0/etc/init.d/cloudera-scm-agent restart

注意:官网上只要求重启server,但是呵呵,我重启几次server、集群都看不到Spark2的服务,然后我把agent也重启就好了

再在主界面把集群和Cloudera Management Service启动,启动完毕后打开 主机 - parcel,找到 SPARK2,分配激活!
这里写图片描述
这里写图片描述
这里写图片描述

4.现在就可以在集群添加Spark2的服务了!
这里写图片描述
配置什么的先保持默认,后期再设置
这里写图片描述

这里写图片描述

5.简单测试
我们可以在集群上输入spark2-shell 以命令行模式启动:
这里写图片描述

我们可以查看所有关于spark的命令:
这里写图片描述

我们可以很清楚的看到,以后通过spark2命令来启动spark任务就ok了!

到现在Spark2.2版本就正式安装在CDH集群上了。


ps:安装过程中集群各组件可能报错,警告什么的,这些不用管,过段时间就好。

猜你喜欢

转载自blog.csdn.net/abysscarry/article/details/79550746