基于CDH本安装原生Spark.docx

上传人:b****5 文档编号:30312385 上传时间:2023-08-13 格式:DOCX 页数:12 大小:512.80KB
下载 相关 举报
基于CDH本安装原生Spark.docx_第1页
第1页 / 共12页
基于CDH本安装原生Spark.docx_第2页
第2页 / 共12页
基于CDH本安装原生Spark.docx_第3页
第3页 / 共12页
基于CDH本安装原生Spark.docx_第4页
第4页 / 共12页
基于CDH本安装原生Spark.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

基于CDH本安装原生Spark.docx

《基于CDH本安装原生Spark.docx》由会员分享,可在线阅读,更多相关《基于CDH本安装原生Spark.docx(12页珍藏版)》请在冰豆网上搜索。

基于CDH本安装原生Spark.docx

基于CDH本安装原生Spark

基于CDH版本安装原生Spark

 

 

————————————————————————————————作者:

————————————————————————————————日期:

 

基于CDH版本5.13.3实现Spark集群

1.安装背景

由于部门及已上项目使用的是CDH版本大数据平台,为了充分更好使用Spark集群Spark引擎运算,解决基于CDH版本下可支持3种大数据运算分析方式HiveonMR、HiveonSpark和SparkSql。

2.安装环境

2.1.硬件规划

CPU

物理内存

磁盘存储

节点

1核X2颗IntelCoreProcessor2295MHZ(Haswell,noTSX)

8GB

80G

192.17.10.136

1核X2颗IntelCoreProcessor2295MHZ(Haswell,noTSX)

8GB

80G

192.17.10.138

1核X2颗IntelCoreProcessor2295MHZ(Haswell,noTSX)

8GB

80G

192.17.10.139

2.2.软件规划

类别

软件清单

备注

操作系统

CentOSLinuxrelease77.2.1511

大数据平台

CDH5.13.1

Hadoop2.6.0

Spark1.6.0

Java1.7.0.9

MySql5.7.21

Hive:

1.1.0

Scala2.10.5

HBase

HDFS

2.3.目录规划

●原生Spark安装目录:

/opt/cdh5/spark-1.6.0

●CDH相关安装目录:

/opt/cloudera/parcels/CDH

●MySql安装目录:

/usr/bin/mysql

/usr/lib64/mysql

/usr/share/mysql

/usr/share/man/man1/mysql.1.gz

3.安装步骤

3.1.环境配置

由于本次是基于已有CDH环境下,增加安装原生版本Spark安装,所以操作所需要的:

免密配置、防火墙、主机名配置、主机与IP静态绑定、修改vm.swappiness参数、OracleJDK1.7和Mysql安装配置等都已完成了,所以本次安装只需安装配置原生Spark即可。

3.2.介质准备

●Spark1.6.0介质提供有源码和预编译好的两种,本次我选择的是用后者。

下载地址链接:

http:

//archive.apache.org/dist/spark/spark-1.6.0/spark-1.6.0-bin-hadoop2.6.tgz

●如果选择是源码编译方式,则需要下载Maven3.3.3以上版本以及需要保证编译节点服务器可联公网。

下载Maven链接:

http:

//archive.apache.org/dist/maven/maven-3/3.3.3/binaries/apache-maven-3.3.3-bin.tar.gz

注:

统一下载在/opt目录

3.3.Spark安装

1、创建目录

mkdir-p/opt/cdh5

mkdir–p/opt/service/maven3.3.3

2、解压介质

sudotar-zxvfspark-1.6.0-bin-hadoop2.6.tgz

mvspark-1.6.0-bin-hadoop2.6/opt/cdh5/spark-1.6.0

sudochown-Rroot:

rootspark-1.6.0

sudotar-zxvfapache-maven-3.3.3-bin.tar.gz

mvapache-maven-3.3.3/opt/service/maven3.3.3/

sudochown-Rroot:

rootapache-maven-3.3.3

sudotar-zxvfscala-2.10.7.tgz

mvscala-2.10.7/opt/

sudochown-Rroot:

rootscala-2.10.7

3、配置环境变量

1)、vi/etc/profile添加如下内容

#MAVEN

exportMAVEN_HOME=/opt/service/maven-3.3.3/apache-maven-3.3.3

exportPATH=$MAVEN_HOME/bin:

$PATH

#scala

exportSCALA_HOME=/opt/scala-2.10.7

exportPATH=$SCALA_HOME/bin:

$PATH

2)、vi/opt/cdh5/spark-1.6.0/conf/spark-env.sh文件

因原生版本spark下配置文件安装后没有spark-env.sh文件,需要从模板文件复制一个出来,即:

cpspark-env.sh.templatespark-env.sh

添加如下内容:

exportJAVA_HOME=/usr/java/jdk1.7.0_79

exportSCALA_HOME=/opt/scala-2.10.7

exportHADOOP_CONF_DIR=/etc/hadoop/conf

exportHADOOP_HOME=/opt/cloudera/parcels/CDH-5.13.3-1.cdh5.13.3.p0.2/lib/hadoop

exportSPARK_HOME=/opt/cdh5/spark-1.6.0

exportHIVE_HOME=/opt/cloudera/parcels/CDH-5.13.3-1.cdh5.13.3.p0.2/lib/hive

exportHBASE_HOME=/opt/cloudera/parcels/CDH-5.13.3-1.cdh5.13.3.p0.2/lib/hbase

exportZOOKEEPER_HOME=/opt/cloudera/parcels/CDH-5.13.3-1.cdh5.13.3.p0.2/lib/zookeeper

exportSPARK_MASTER_IP=192.17.10.136

exportSPARK_MASTER_PORT=7099

exportSPARK_MASTER_WEBUI_PORT=8099

exportSPARK_WORKER_CORES=2

exportSPARK_WORKER_MEMORY=2g

#exportSPARK_EXECUTOR_MEMORY=128M

#exportSPARK_DRIVER_MEMORY=4096M

exportSPARK_WORKER_PORT=7098

exportSPARK_WORKER_WEBUI_PORT=8091

exportSPARK_WORKER_INSTANCES=2

exportSPARK_WORKER_DIR=/opt/cdh5/spark-1.6.0/data/tmp

exportLD_LIBRARY_PATH=$HADOOP_HOME/lib/native

exportJRE_HOME=$JAVA_HOME/jre

exportCLASSPATH=$CLASSPATH:

$JAVA_HOME/lib:

$JAVA_LIBRARY_PATH/lib:

$HADOOP_HOME/lib:

$HBASE_HOME/lib:

$HIVE_HOME/lib:

$SCALA_HOME/lib:

$SPARK_HOME/lib:

$ZOOKEEPER_HOME/lib:

$SCALA_HOME/lib:

$SPARK_HOME/lib:

$JRE_HOME/lib

注意端口,需重新定义标红部分项的默认端口,确保与已存在CDH的spark所用端口不冲突。

3)、配置spark-defaults.conf文件:

不配置此选项运行spark服务还是在local模式下运行。

因原生版本spark下配置文件安装后没有spark-defaults.conf文件,需要从模板文件复制一个出来,即:

cpspark-defaults.conf.templatespark-defaults.conf

添加spark.masterspark:

//192.17.10.136:

7099

注意:

此端口需要和spark-env.sh中参数项SPARK_MASTER_PORT=7099一致。

4)、编辑slaves文件,添加slaves节点

cct-bigdata-2

cct-bigdata-3

此处可用主机名或IP地址都可。

4、相关文件配置

因需要访问hive,所以需要把hive-site.xml文件复制到spark安装目录下使用。

即:

scp-r/opt/cloudera/parcels/CDH/lib/hive/conf/hive-site.xmlroot@cct-bigdata-1:

/opt/cdh5/spark-1.6.0/conf

此处还需添加,如配置为空或不添加会导致hive的程序使用了NULL而非空字符串做密码,但我们的登录hive元数据库设置了密码。

javax.jdo.option.ConnectionPassword

Ccs123!

@#

passwordtouseagainstmetastoredatabase

同理还需复制访问Mysql的驱动jar包,否则访问时会异常。

即找到已下载好的jar包:

scp/opt/mysql/mysql-connector-java-5.1.45-bin.jarroot@cct-bigdata-1:

/opt/cdh5/spark-1.6.0/lib

5、同步到其它节点

scp-r/opt/cdh5/spark-1.6.0/root@cct-bigdata-2:

/opt/cdh5/

scp-r/opt/cdh5/spark-1.6.0/root@cct-bigdata-3:

/opt/cdh5/

6、启动&关闭Spark集群

启动服务

sbin/start-master.sh

sbin/start-slaves.sh

或sbin/start-all.sh

启动正常日志会显示为:

登录到web页面查看:

关闭服务

sbin/stop-all.sh

7、重启Hive

登录到CM下,找到hive服务,点击重启即可。

如hive未重启,则会在执行spark-shell或spark-sql报

3.4.启动验证

●启动./bin/Spark-shell,正常情况下应该是类似如下截图:

在scala语言验证可否正常连接hive仓库:

scala>sqlContext.sql("usedefault")

scala>sqlContext.sql("showtables").take(10)

scala>sqlContext.sql("showtables").collect().foreach(println)

scala>sqlContext.sql("select*fromword").collect().foreach(println)

18/06/2816:

58:

29INFOscheduler.TaskSchedulerImpl:

RemovedTaskSet0.0,whosetaskshaveallcompleted,frompool

[1,word100]

[2,word200]

[9,word900]

[10,word1000]

[11,word1100]

[11,word1100]

[11,word1100-mr]

[11,word1100-2]

[11,word1100-spa1]

[11,word1100-sp3]

[3,word300]

[3,word300]

[3,word300]

[4,word400]

[5,word500]

[6,word600]

[7,word700]

[8,word800]

●启动./bin/Spark-sql,正常情况下应该是类似如下截图:

在spark-sqlCL可否正常连接hive仓库:

spark-sql>select*fromword;

18/06/2817:

03:

57INFOscheduler.TaskSchedulerImpl:

RemovedTaskSet0.0,whosetaskshaveallcompleted,frompool

1word100

2word200

9word900

10word1000

11word1100

11word1100

11word1100-mr

11word1100-2

11word1100-spa1

11word1100-sp3

3word300

3word300

3word300

4word400

5word500

6word600

7word700

8word800

18/06/2817:

03:

57INFOCliDriver:

Timetaken:

5.527seconds,Fetched18row(s)

spark-sql>selectcount(*)fromword;

4.处理问题

安装过程中需注意下面几个问题:

1)、内存配置

原因是:

上述三项内存配置不对所致,后来经过多次尝试修正,最终改正为:

2)、不能访问hivemetastore

此类问题后来经过分析排查,发现由于下面服务、配置有异常、hive-site.xml和访问mysql驱动包cp到spark下的lib目录,就会导致spark-shell或spark-sql启动失败。

注意检查:

spark里面hive-site.xml配置hive.metastore.uris有没有,如截图:

hive的metastore服务开启没有;

hive的thrift服务;

在CDH版本下,spark全部配置部署完成后,务必需要重启hive服务。

这样确保spark下相关hive配置生效。

5.性能验证

5.1.测验报告

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 教学研究 > 教学案例设计

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1