您好,欢迎来到爱go旅游网。
搜索
您的当前位置:首页SPARK集群部署

SPARK集群部署

来源:爱go旅游网
概述本文是对spark1.6.0分布式集群的安装的一个详细说明,旨在帮助实施人员按照本说明能够快速搭建并使用spark集群。

软件版本Scala2.10.6。

Spark-1.6.0-bin-hadoop2.6.tgz。Javajre1.7。

注:spark依赖jre和scala。行为计算的spark集群依赖hadoop集群,所以请先部署hadoop集群。

安装前准备在每台机添加hosts(root用户)修改文件/etc/hosts,添加各节点IP和主机名映射。

安装jre。1.安装jre。2.配置环境变量。

3.验证安装是否成功,执行命令java-version查看java版本。

安装scala1.安装Scala。2.配置环境变量:

12配置SCALA_HOME,值为安装后的scalahome目录。配置PATH,添加上$SCALA_HOME/bin。

3.验证安装是否成功,执行命令scala-version,查看scala版本。

配置SSH免密码登录集群各个节点之间最好配置免密码登录。

集群的master节点到zookeeper集群节点配置免密码登录。

SPARK安装1.解压安装包到安装目录。2.配置环境变量。

12配置SPARK_HOME,值为安装后的sparkhome目录。配置PATH,添加上$SPARK_HOME/bin。

SPARK配置配置文件所在目录:sparkhome目录下conf目录下。

配置运行时环境

1.基于spark-env.sh.template复制出一份新文件spark-env.sh。2.修改spark-env.sh添加如下环境变量:exportSPARK_DAEMON_JAVA_OPTS=\"-Dspark.deploy.recoveryMode=ZOOKEEPER-Dspark.deploy.zookeeper.url=master:2181-Dspark.deploy.zookeeper.dir=/spark\"exportJAVA_HOME=/data/jdk7exportSCALA_HOME=/data/scala

exportHADOOP_CONF_DIR=/data/hadoop-2.5.2/etc/hadoopexportSPARK_LOCAL_DIRS=/data/spark/tempdatas/spark_local_dirsexportSPARK_PID_DIR=/data/spark/tempdatas/spark_local_dirs/pid各个参数变量的含义见下表,请按实际值修改:SPARK_DAEMON_JAVA_OPTS

spark.deploy.zookeeper.url

口号

zookeeper主机名和端

SPARK_DAEMON_JAVA_OPTS

SPARK_DAEMON_JAVA_OPTS

JAVA_HOMESCALA_HOMEHADOOP_CONF_DIR

SPARK_LOCAL_DIRS

SPARK_PID_DIR

DIR

spark.deploy.zookeeper.dir

java.io.tmpdir

zookeeper中存储spark元数据的目录

临时io文件目录

JAVA_HOMESCALA_HOMEHADOOP_CONF_

Java安装目录Scala安装目录Hadoop配置文件目录

SPARK_LOCAL_DIRS

SPARK_PID_DIR

位置目录

Spark运行时临时数据

Pid信息存储文件存放

功能参数配置

1.基于spark-defaults.conf.template复制出一份新的文件spark-defaults.conf2.修改spark-defaults.conf添加参数变量配置:spark.eventLog.enabledspark.eventLog.dirspark.history.fs.logDirectoryspark.deploy.retainedApplications15spark.worker.cleanup.enabledspark.worker.cleanup.intervalspark.executor.memory112gspark.driver.memory

5g

true3600true

hdfs://master:9000/spark/logshdfs://master:9000/spark/logs

spark.driver.maxResultSize4g

spark.serializerorg.apache.spark.serializer.KryoSerializerspark.executor.cores32

spark.worker.timeoutspark.network.timeoutspark.logConf

spark.eventLog.compress

300300truetrue

spark.shuffle.service.enabledtruespark.rpc.numRetries

6

spark.cleaner.ttl86400spark.executor.extraClassPath

/data/spark/hbaselib/sdk_hbase_dependency-jar-with-dependencies.jar

spark.driver.extraClassPath

/data/spark/hbaselib/sdk_hbase_dependency-jar-with-dependencies.jar

各个功能参数描述见下表,:spark.master

spark.eventLog.enabledspark.eventLog.dir

集群master所在节点名和端口号Job运行日志记录开关Job运行日志目录,

与spark.history.fs.logDirectory配置位置一致

spark.history.fs.logDirectoryspark.deploy.retainedApplicationsspark.worker.cleanup.enabledspark.worker.cleanup.intervalspark.executor.memoryspark.driver.memoryspark.driver.maxResultSize

阈值

spark.serializer

发送到网络的数据对象或者缓存的数据对象的序列化方式。

spark.executor.coresspark.worker.timeout

单个executor占用核心数Worker通信超时时间历史日志目录

WEBUI中展示的完成job数。Worker端临时文件清理开关Worker端临时文件清理间隔时间单个executor的内存占用大小Driver端内存占用大小

Driver端存储RDD的内存最大值

spark.akka.timeoutspark.network.timeoutspark.rpc.lookupTimeoutspark.rpc.askTimeoutspark.logConf

spark.eventLog.compressspark.shuffle.service.enabledspark.rpc.numRetriesspark.cleaner.ttl

间。

spark.executor.extraClassPathspark.driver.extraClassPath

Akka通信超时时间

各个节点之间网络通信超时时间Rpc通信过程查找操作超时时间Rpc通信过程请求操作超时时间自定义日志配置开关Job日志压缩开关

额外Shuffle过程守护线程开关Rpc超时后重试次数

Job元数据保留时间、RDD过期时

Executor运行时,使用的外部类库Driver运行时,使用的外部类库

slave节点配置

1.基于slaves.template复制一份新文件slaves

2.将所有计算节点(非master节点)的主机名配置到slaves文件中示例截图:

至此,单机配置完成,将spark整个目录复制到其他主机。

启动集群修改附件中start-dfs.sh、start-standbymaster.sh、stop-dfs.sh、deleteClusterMet.sh,配置正确的hostname.

将脚本文件start-dfs.sh、start-standbymaster.sh、stop-dfs.sh,复制到master节点的spark安装目录下的sbin目录下。

启动集群命令:$SPARK_HOME/sbin/start-dfs.sh。

停止集群命令:$SPARK_HOME/sbin/stop-dfs.sh。

启动日志服务:$SPARK_HOME/sbin/start-history-server.sh。启动集群验证:

WEBUI验证,通过master节点的http8080端口查看集群节点状态:主masterWEBUI截图示例:

Master备机WEBUI截图示例:

日志服务WEBUI截图示例:

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- igat.cn 版权所有

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务