您的位置:首页 > 大数据

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

2018-03-14 10:17 288 查看
注:公司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:安装过程中集群各组件可能报错,警告什么的,这些不用管,过段时间就好。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息