spark伪分布standalone搭建
来源:互联网 发布:js radio 美化样式 编辑:程序博客网 时间:2024/06/05 16:56
一.环境准备
jdk 1.8.0
hadoop2.7.3 伪分布式部署
scala 2.11.8 支持spark2.0.1及以上版本
spark2.1.1
二.Spark安装模式(本文伪分布式)
spark有以下几种安装模式,每种安装模式都有自己不同的优点和长处。
local(本地模式):
常用于本地开发测试,本地还分为local单线程和local-cluster多线程;
standalone(集群模式):
典型的Mater/slave模式,Master可能有单点故障的;Spark支持ZooKeeper来实现 HA。
on yarn(集群模式):
运行在 yarn 资源管理器框架之上,由 yarn 负责资源管理,Spark 负责任务调度和计算。
on mesos(集群模式):
运行在 mesos 资源管理器框架之上,由 mesos 负责资源管理,Spark 负责任务调度和计算。
on cloud(集群模式):
比如 AWS 的 EC2,使用这个模式能很方便的访问 Amazon的 S3;Spark 支持多种分布式存储系统:HDFS 和 S3。
目前Apache Spark支持三种分布式部署方式,分别是standalone、Spark on mesos和 spark on YARN,其中,第一种类似于MapReduce 1.0所采用的模式,内部实现了容错性和资源管理,后两种则是未来发展的趋势,部分容错性和资源管理交由统一的资源管理系统完成:让Spark运行在一个通用的资源管理系统之上,这样可以与其他计算框架,比如MapReduce,公用一个集群资源,最大的好处是降低运维成本和提高资源利用率(资源按需分配)。
三.安装scala
1.上传scala包,解压缩
2.配置环境变量SCALA_HOME
3.source /etc/profile使得生效
4.验证scala安装情况
scala -version
及上scala 安装完成
四.伪分布式Spark安装部署
1 解压spark安装包spark-2.1.1-bin-hadoop2.7.tgz,并配置SPARK_HOME环境变量,最后用 source使之生效。
export SCALA_HOME=/opt/hadoop/scala-2.11.8
export PATH=$PATH:$SCALA_HOME/bin
export SPARK_HOME=/opt/hadoop/spark-2.1.1-bin-hadoop2.7
export PATH=$PATH:SPARK_HOME/bin
注意:$SPARK_HOME/sbin中的启动spark指令与hadoop相同,因此本例中PATH只配置了$SPARK_HOME/bin目录
2 更改配置 在/usr/local/spark-2.0.1/conf 下
(1)cp slaves.template slaves
localhost(或者主机名)
(2)cp spark-env.sh.template spark-env.sh
vim spark-env.sh
进行以下配置
export JAVA_HOME=/opt/Java/jdk1.8.0_151
export SCALA_HOME=/opt/hadoop/scala-2.11.8
export SPARK_WORKER_MEMORY=1G
export HADOOP_HOME=/opt/hadoop/hadoop-2.7.3
export HADOOP_CONF_DIR=/opt/hadoop/hadoop-2.7.3/etc/hadoop
export SPARK_MASTER_IP=hadoop
(3)spark-defaults.conf文件用于设定一些默认的Spark环境变量,本次设定了master的地址,和spark shuffer文件的保存路径。
spark.master spark://hadoop:7077
3 启动spark
(1)先启动hadoop 环境
/usr/local/hadoop/sbin# start-all.sh
注意:启动之后要执行命令 hadoop dfsadmin -safemode leave,否则报错Cannot create directory /tmp/hive/hadoop/ee766399-e2f4-4edd-b977-4658fe14f9e3. Name node is in safe mode.
(2)启动spark环境
/usr/local/spark-2.0.1/sbin# ./start-all.sh
[注] 如果使用start-all.sh时候会重复启动hadoop配置,需要./在当前工作目录下执行脚本文件。
jps 观察进程 多出 worker 和 mater 两个进程
查看spark的web控制页面
http://hadoop:8080/
显示spark的端口是7070
4.运行示例
scala>val rdd=sc.textFile("/user/hadoop/testdata/core-site.xml")
scala>rdd.cache()
scala>val wordcount=rdd.flatMap(_.split(" ")).map(x=>(x,1)).reduceByKey(_+_)
scala>wordcount.take(10)
- spark伪分布standalone搭建
- Spark本地模式与Spark Standalone伪分布模式
- Spark Standalone完全分布模式
- spark集群搭建,standalone
- Spark Standalone模式搭建
- Spark 伪分布安装
- SPARK伪分布安装
- Spark 1.X DatandaLone伪分布环境搭建
- Spark Standalone Mode 搭建过程
- spark+hadoop Standalone模式 搭建
- spark的standalone集群搭建
- spark standalone模式 环境搭建
- spark standalone 集群环境搭建
- spark环境搭建--Standalone模式
- spark standalone集群模式搭建
- hadoop 伪分布 搭建
- HBASE伪分布搭建
- Hadoo伪分布搭建
- 在学习C语言时遇到的一些细节方面的问题
- svn提交时不显示文件的问题
- 谷歌浏览器跨域问题解决
- Revit 二次开发 PickObjects完成按钮的触发
- 基于AFNetworking3.X的二次封装及拓展
- spark伪分布standalone搭建
- Spring定时任务——注解@Scheduled实现定时任务
- 深度学习中的卷积与反卷积
- 线程
- Xml的schema约束
- CentOS重启ssh服务命令
- JVM GC时堆内存中新生代的复制算法
- Java注解(Annotation)详解(一)——概述及JDK自带注解
- Ajax提交form表单(包括文件上传)