目录
一、简介:
二、安装装备
二、开始安装
三、添加和启动spark2服务
在我的CDH5.16集群中,默认安装的spark是1.6版本,这里需要将其升级为spark2.x版本。经查阅官方文档,发现spark1.6和2.x是可以并行安装的,也就是说可以不用删除默认的1.6版本,可以直接安装2.x版本,它们各自用的端口也是不一样的。我尝试了安装spark2.0版本和spark2.1版本,均告成功。这里做一下安装spark2.1版本的步骤记录。
首先贴出一些官方的网址,有兴趣的可以去看看:
Cloudera发布Apache Spark 2概述(可以在这里面找到安装方法和parcel包的仓库,不过待会我会给出地址和安装方法):https://www.cloudera.com/documentation/spark2/latest/topics/spark2_installing.html
Cloudera Manager及5.16版本的介绍:https://www.cloudera.com/documentation/enterprise/latest/topics/cm_ig_parcels.html#cmug_topic_7_11_5__section_sd4_bzx_bm
1.csd包:http://archive.cloudera.com/spark2/csd/
下载标记的文件
②parcel包:http://archive.cloudera.com/spark2/parcels/2.1.0.cloudera1/
下载标记的三个文件
注意,下载对应版本的包,我的CentOS7,所以下载el7的包,若是CentOS6,就要下el6的包。
1.安装前可以停掉集群和Cloudera Management Service,也可以不停,但是待会还是要停止重启的。
2.下面的操作在每个CDH节点都要进行。
3.上传CSD包到机器的/opt/cloudera/csd目录,并且修改文件的用户和组。注意如果本目录下有其他的jar包,把删掉或者移到其他目录
[root@server cloudera]# cd csd/
[root@server csd]# ll
总用量 16
-rw-r--r-- 1 root root 16109 3月 14 09:12 SPARK2_ON_YARN-2.1.0.cloudera1.jar
[root@server csd]# chown cloudera-scm:cloudera-scm SPARK2_ON_YARN-2.1.0.cloudera1.jar
[root@server csd]# ll
总用量 16
-rw-r--r-- 1 cloudera-scm cloudera-scm 16109 3月 14 09:12 SPARK2_ON_YARN-2.1.0.cloudera1.jar
[root@server csd]# chmod 644 SPARK2_ON_YARN-2.1.0.cloudera1.jar
[root@server csd]# ll
总用量 16
-rw-r--r-- 1 cloudera-scm cloudera-scm 16109 3月 14 09:12 SPARK2_ON_YARN-2.1.0.cloudera1.jar
4.上传parcel包到机器的/opt/cloudera/parcel-repo目录下。注意:如果有其他的安装包,不用删除 ,但是如果本目录下有其他的重名文件比如manifest.json文件,把它重命名备份掉。然后把那3个parcel包的文件放在这里。
[root@server parcel-repo]# ll
总用量 1817628
-rw-r--r-- 1 root root 1592734904 6月 26 2017 CDH-5.11.1-1.cdh5.11.1.p0.4-el7.parcel
-rw-r--r-- 1 root root 41 6月 18 2017 CDH-5.11.1-1.cdh5.11.1.p0.4-el7.parcel.sha
-rw-r----- 1 cloudera-scm cloudera-scm 60926 9月 20 15:11 CDH-5.11.1-1.cdh5.11.1.p0.4-el7.parcel.torrent
-rw-r--r-- 1 root root 72302 6月 18 2017 manifest.json.bak
-rw-r--r-- 1 root root 165561123 3月 14 11:01 SPARK2-2.1.0.cloudera1-1.cdh5.7.0.p0.120904-el7.parcel.filepart
-rw-r--r-- 1 root root 41 3月 14 09:13 SPARK2-2.1.0.cloudera1-1.cdh5.7.0.p0.120904-el7.parcel.sha1
[root@server parcel-repo]#
[root@server parcel-repo]# ll
总用量 1728592
-rw-r--r-- 1 root root 1592734904 6月 26 2017 CDH-5.11.1-1.cdh5.11.1.p0.4-el7.parcel
-rw-r--r-- 1 root root 41 6月 18 2017 CDH-5.11.1-1.cdh5.11.1.p0.4-el7.parcel.sha
-rw-r----- 1 cloudera-scm cloudera-scm 60926 9月 20 15:11 CDH-5.11.1-1.cdh5.11.1.p0.4-el7.parcel.torrent
-rw-r--r-- 1 root root 4807 3月 14 11:02 manifest.json
-rw-r--r-- 1 root root 72302 6月 18 2017 manifest.json.bak
-rw-r--r-- 1 root root 177185276 3月 14 09:28 SPARK2-2.1.0.cloudera1-1.cdh5.7.0.p0.120904-el7.parcel
-rw-r--r-- 1 root root 41 3月 14 09:13 SPARK2-2.1.0.cloudera1-1.cdh5.7.0.p0.120904-el7.parcel.sha1
[root@server parcel-repo]# mv SPARK2-2.1.0.cloudera1-1.cdh5.7.0.p0.120904-el7.parcel.sha1 SPARK2-2.1.0.cloudera1-1.cdh5.7.0.p0.120904-el7.parcel.sha
[root@server parcel-repo]# ll
总用量 1728592
-rw-r--r-- 1 root root 1592734904 6月 26 2017 CDH-5.11.1-1.cdh5.11.1.p0.4-el7.parcel
-rw-r--r-- 1 root root 41 6月 18 2017 CDH-5.11.1-1.cdh5.11.1.p0.4-el7.parcel.sha
-rw-r----- 1 cloudera-scm cloudera-scm 60926 9月 20 15:11 CDH-5.11.1-1.cdh5.11.1.p0.4-el7.parcel.torrent
-rw-r--r-- 1 root root 4807 3月 14 11:02 manifest.json
-rw-r--r-- 1 root root 72302 6月 18 2017 manifest.json.bak
-rw-r--r-- 1 root root 177185276 3月 14 09:28 SPARK2-2.1.0.cloudera1-1.cdh5.7.0.p0.120904-el7.parcel
-rw-r--r-- 1 root root 41 3月 14 09:13 SPARK2-2.1.0.cloudera1-1.cdh5.7.0.p0.120904-el7.parcel.sha
5.如果刚刚没有停掉CM和集群,现在将他们停掉,然后运行命令。
[root@server parcel-repo]# service cloudera-scm-server restart
Restarting cloudera-scm-server (via systemctl):
[ 确定 ]
[root@server parcel-repo]#
或执行以下命令来停止服务和启动服务
/opt/cm-5.16.2/etc/init.d/cloudera-scm-server stop
/opt/cm-5.16.2/etc/init.d/cloudera-scm-agent stop
/opt/cm-5.16.2/etc/init.d/cloudera-scm-server start
/opt/cm-5.16.2/etc/init.d/cloudera-scm-agent start
[root@wisdomTeach120 parcel-repo]# /opt/cm-5.16.2/etc/init.d/cloudera-scm-server stop
Stopping cloudera-scm-server: [ OK ]
[root@wisdomTeach120 parcel-repo]# /opt/cm-5.16.2/etc/init.d/cloudera-scm-agent stop
Stopping cloudera-scm-agent: [ OK ]
[root@wisdomTeach120 parcel-repo]# /opt/cm-5.16.2/etc/init.d/cloudera-scm-server start
Starting cloudera-scm-server: [ OK ]
[root@wisdomTeach120 parcel-repo]# /opt/cm-5.16.2/etc/init.d/cloudera-scm-agent start
Starting cloudera-scm-agent: [ OK ]
6.把CM和集群启动起来。然后点击主机->Parcel页面,看是否多了个spark2的选项。如下图,你这里此时应该是分配按钮,点击,等待操作完成后,点击激活按钮。
左侧可以查看到我们的SPARK2
此时我们的准备工作就做完了
进入到进群页面集群->操作->添加服务
找到spark2
剩下的就是按照正常配置就行
在cloudera manager中能看到spark2安装成功,启动spark2服务就成功了。
运行Spark2:
[root@namenode1 ~]# spark2-shell
Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).
18/03/14 13:38:37 WARN spark.SparkContext: Support for Java 7 is deprecated as of Spark 2.0.0
18/03/14 13:38:39 WARN util.Utils: Service 'SparkUI' could not bind on port 4040. Attempting port 4041.
Spark context Web UI available at http://192.168.101.225:4041
Spark context available as 'sc' (master = yarn, app id = application_1520998888517_0002).
Spark session available as 'spark'.
Welcome to
____ __
/ __/__ ___ _____/ /__
_\ \/ _ \/ _ `/ __/ '_/
/___/ .__/\_,_/_/ /_/\_\ version 2.1.0.cloudera1
/_/
Using Scala version 2.11.8 (Java HotSpot(TM) 64-Bit Server VM, Java 1.7.0_67)
Type in expressions to have them evaluated.
Type :help for more information.
scala>
scala>