基础环境准备

Spark local模式

上传编译完成的spark安装程序到服务器上,并解压到指定目录

[root@hadoop01 soft]# tar zxvf spark-2.2.-bin-2.6.-cdh5.14.0.tgz -C /usr/local/
[root@hadoop01 soft]# cd /usr/local/
[root@hadoop01 local]# mv spark-2.2.-bin-2.6.-cdh5.14.0/ spark
[root@hadoop01 local]# cd spark/conf/

修啊改配置文件spark-env.sh.template为spark-env.sh

[root@hadoop01 conf]# mv spark-env.sh.template spark-env.sh

启动验证spark程序

[root@hadoop01 conf]# cd ../
[root@hadoop01 spark]# ./bin/spark-shell
[root@hadoop01 conf]# cd ../
[root@hadoop01 spark]# ./bin/spark-shell

退出spark命令行

scala> :quit

执行jar计算圆周率

bin/spark-submit \
--class org.apache.spark.examples.SparkPi \
--master local[] \
--executor-memory 1G \
--total-executor-cores \
/usr/local/spark/examples/jars/spark-examples_2.-2.2..jar \

spark的standAlone模式

修改配置文件spark-env.sh,添加下列内容

[root@hadoop01 conf]# vim spark-env.sh
export JAVA_HOME=/usr/local/java/jdk1..0_201
export SPARK_MASTER_HOST=node01
export SPARK_MASTER_PORT=
export SPARK_HISTORY_OPTS="-Dspark.history.ui.port=4000 -Dspark.history.retainedApplications=3 -Dspark.history.fs.logDirectory=hdfs://node01:9000/spark_log"

修改slaves文件,添加下列内容

[root@hadoop01 conf]# mv slaves.template slaves
[root@hadoop01 conf]# vim slaves
node01
node02
node03

修改配置文件spark-default.conf,添加下列内容

[root@hadoop01 conf]# mv spark-defaults.conf.template spark-defaults.conf
[root@hadoop01 conf]# vim spark-defaults.conf
spark.eventLog.enabled true
spark.eventLog.dir hdfs://node01:9000/spark_log
spark.eventLog.compress true

并在Hadoop的hdfs中创建spark日志目录spark_log

[root@hadoop01 conf]# hdfs dfs -ls /

分发配置好的spark程序到其它两台服务器上

[root@hadoop01 conf]# cd ../../
[root@hadoop01 conf]# scp -r spark root@node02:$PWD
[root@hadoop01 conf]# scp -r spark root@node03:$PWD

启动spark程序

[root@hadoop01 conf]# cd spark
[root@hadoop01 conf]# sbin/start-all.sh
[root@hadoop01 conf]# sbin/start-history-server.sh

spark的standAlone模式验证

[root@hadoop01 spark]# bin/spark-submit \
--class org.apache.spark.examples.SparkPi \
--master spark://node01:7077 \
--executor-memory 1G \
--total-executor-cores \
/usr/local/spark/examples/jars/spark-examples_2.-2.2..jar \

spark的HA高可用模式

停止启动的spark程序

[root@hadoop01 spark]# sbin/stop-all.sh
[root@hadoop01 spark]# sbin/stop-history-server.sh

解压spark程序到指定目录,并重命名为spark-HA

[root@hadoop01 soft]# tar zxvf spark-2.2.-bin-2.6.-cdh5.14.0.tgz -C /usr/local/
[root@hadoop01 soft]# cd /usr/local/
[root@hadoop01 local]# mv spark-2.2.-bin-2.6.-cdh5.14.0/ spark-HA

修改spark配置文件spark-env.sh

[root@hadoop01 local]# cd spark-HA/conf/
[root@hadoop01 conf]# mv spark-env.sh.template spark-env.sh
[root@hadoop01 conf]# vim spark-env.sh
export JAVA_HOME=/usr/local/java/jdk1..0_201
export SPARK_MASTER_PORT=
export SPARK_HISTORY_OPTS="-Dspark.history.ui.port=4000 -Dspark.history.retainedApplications=3 -Dspark.history.fs.logDirectory=hdfs://node01:9000/spark_log"
export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=node01:2181,node02:2181,node03:2181 -Dspark.deploy.zookeeper.dir=/spark"

修改配置文件slave

[root@hadoop01 conf]# mv slaves.template slaves
[root@hadoop01 conf]# vim slaves
node01
node02
node03

修改配置文件spark-defaults.conf

[root@hadoop01 conf]# mv spark-defaults.conf.template spark-defaults.conf
[root@hadoop01 conf]# vim spark-defaults.conf
spark.eventLog.enabled true
spark.eventLog.dir hdfs://node01:9000/spark_log
spark.eventLog.compress true

在hadoop的hdfs上常见spark日志目录

[root@hadoop01 conf]# hdfs dfs -mkdir -p /spark_log

分发spark-HA程序到其他两台服务器上

启动spark高可用集群

[root@hadoop01 conf]# cd /usr/local/spark-HA/
[root@hadoop01 spark-HA]# sbin/start-all.sh
[root@hadoop01 spark-HA]# sbin/start-history-server.sh

node02服务器启动master节点

[root@hadoop01 spark-HA]# cd /usr/local/spark-HA/
[root@hadoop01 spark-HA]# sbin/start-master.sh

验证spark高可用集群

spark的HA模式下的spark的命令行

[root@hadoop01 spark-HA]# bin/spark-shell --master spark://node01:7077,node02:7077

运行jar包进行验证测试

[root@hadoop01 spark-HA]# bin/spark-submit \
--class org.apache.spark.examples.SparkPi \
--master spark://node01:7077,node02:7077 \
--executor-memory 1G \
--total-executor-cores \
/usr/local/spark-HA/examples/jars/spark-examples_2.-2.2..jar \

spark的on yarn模式

小提示:如果yarn集群资源不够,我们可以在yarn-site.xml当中添加以下两个配置,然后重启yarn集群,跳过yarn集群资源的检查

[root@hadoop01 conf]# scp -r spark-HA root@node02:$PWD
[root@hadoop01 conf]# scp -r spark-HA root@node03:$PWD
<property>

<name> yarn.nodemanager.pmem-check-enabled</name

<value>false</value>

</property>

<property>

<name> yarn.nodemanager.vmem-check-enabled</name

<value>false</value>

</property>

修改配置文件spark-env.sh

HADOOP_CONF_DIR=/usr/local/hadoop-HA/etc/hadoop
YARN_CONF_DIR=/usr/local/hadoop-HA/etc/hadoop

提交任务到yarn集群上进行验证

[root@hadoop01 spark-HA]# bin/spark-submit \
--class org.apache.spark.examples.SparkPi \
--master yarn \
--deploy-mode client \
/usr/local/spark-HA/examples/jars/spark-examples_2.-2.2..jar \

spark搭建部署的更多相关文章

  1. Spark集群基于Zookeeper的HA搭建部署笔记(转)

    原文链接:Spark集群基于Zookeeper的HA搭建部署笔记 1.环境介绍 (1)操作系统RHEL6.2-64 (2)两个节点:spark1(192.168.232.147),spark2(192 ...

  2. spark1.6.1 on yarn搭建部署

    注:本文是建立在hadoop已经搭建完成的基础上进行的. Apache Spark是一个分布式计算框架,旨在简化运行于计算机集群上的并行程序的编写.该框架对资源调度,任务的提交.执行和跟踪,节点间的通 ...

  3. 伪分布式Spark + Hive on Spark搭建

    Spark大数据平台有使用一段时间了,但大部分都是用于实验而搭建起来用的,搭建过Spark完全分布式,也搭建过用于测试的伪分布式.现在是写一遍随笔,记录一下曾经搭建过的环境,免得以后自己忘记了.也给和 ...

  4. Spark 安装部署与快速上手

    Spark 介绍 核心概念 Spark 是 UC Berkeley AMP lab 开发的一个集群计算的框架,类似于 Hadoop,但有很多的区别. 最大的优化是让计算任务的中间结果可以存储在内存中, ...

  5. Spark启动时的master参数以及Spark的部署方式

    我们在初始化SparkConf时,或者提交Spark任务时,都会有master参数需要设置,如下: conf = SparkConf().setAppName(appName).setMaster(m ...

  6. 【待补充】Spark 集群模式 && Spark Job 部署模式

    0. 说明 Spark 集群模式 && Spark Job 部署模式 1. Spark 集群模式 [ Local ] 使用一个 JVM 模拟 Spark 集群 [ Standalone ...

  7. 云服务器+tomcat+mysql+web项目搭建部署

    云服务器+tomcat+mysql+web项目搭建部署 1.老样子,开头墨迹两句. 作为我的第二篇文章,有很多感慨,第一篇人气好低啊,有点小丧气,不过相信我还是经验少,分享的都是浅显的,所以大家可能不 ...

  8. Ubuntu14.04下Ambari安装搭建部署大数据集群(图文分五大步详解)(博主强烈推荐)

    不多说,直接上干货! 写在前面的话 (1) 最近一段时间,因担任我团队实验室的大数据环境集群真实物理机器工作,至此,本人秉持负责.认真和细心的态度,先分别在虚拟机上模拟搭建ambari(基于CentO ...

  9. Ubuntu14.04下Cloudera安装搭建部署大数据集群(图文分五大步详解)(博主强烈推荐)(在线或离线)

    第一步: Cloudera Manager安装之Cloudera Manager安装前准备(Ubuntu14.04)(一) 第二步: Cloudera Manager安装之时间服务器和时间客户端(Ub ...

随机推荐

  1. vs2015 活动解决方案或项目由选择的源代码管理插件以外的插件管理

    1.vs2015切换源代码管理插件,svn无法切换到git,点击是将关闭项目 解决方案: 找到项目中.sln 文件,使用编辑器打开,将Svn-Managed = true 设置为false

  2. python 3.x 爬虫基础---正则表达式

    python 3.x 爬虫基础 python 3.x 爬虫基础---http headers详解 python 3.x 爬虫基础---Urllib详解 python 3.x 爬虫基础---Requer ...

  3. why go

    取自:http://www.weixinyidu.com/n_3502636 Go的核心贡献者 Go主要有静态语言.天生并发.内置GC.安全性高.语法简单.交叉编译和编译快速这几个方面的特性.这些特性 ...

  4. SpringMVC中文件上传

    在SpringMVC中上传文件是比较方便的.主要分为以下几个步骤: 1)在applicationContext.xml中增加相应类的引用 <bean id="multipartReso ...

  5. 手把手教你写一个java的orm(四)

    开始准备生成sql 在上一篇里,我们已经取到了我们在生成sql语句中所需要的信息,这一篇里我们开始根据class来生成我们需要的sql.在这之前我们先确认几件事情 sql里的参数我们使用占位符的形式. ...

  6. slf4j和log4j源代码解析以及详解

    备注:下面所有代码以log4j为例 包结构 slf4j-api.jar对外提供api slf4j.log4j12.jar提供适配器 log4j.jar是log4j的jar slf4j初始化 获取ILo ...

  7. Redis与Memcached简单对比(转)

    很多开发者都认为Redis不可能比Memcached快,Memcached完全基于内存,而Redis具有持久化保存特性,即使是异步的,Redis也不可能比Memcached快.但是测试结果基本是Red ...

  8. Hive Metastore 连接报错

    背景 项目中需要通过一些自定义的组件来操控hive的元数据,于是使用了remote方式来存储hive元数据,使用一个服务后台作为gateway,由它来控制hive元数据. 现象 在windows上连接 ...

  9. SQL Server 修改表结构被阻止 解决办法

    在我们的程序开发中,有时候会由于需求的变化而要修改数据库中的表结构.可能是增减列,也可能是修改数据类型,或者修改列名等等.但修改表结构是个危险操作,默认情况下,当你修改表结构时,会弹出如下提示框 上图 ...

  10. AI在网管中的运用