如果机器资源有限,可以使用单机伪分布式
本次部署是在centos 7.1上部署的,ip地址是192.168.1.91,主机名称是hadoop03,已经做好了ssh免登录。Spark各依赖组件的版本分别如下:
- JDK 1.8.0_71
- Scala 2.11.8
- Hadoop 2.6.0
一、scala下载安装
1、下载
https://www.scala-lang.org/download/2.11.8.html
# 下载
wget http://mirrors.cnnic.cn/apache/spark/spark-2.0.1/spark-2.0.1-bin-hadoop2.6.tgz
# 解压安装
我这里本地有,所以我直接用WinCP上传到指定目录下
2、安装
在/opt/modules/app目录下将spark-2.2.1-bin-hadoop2.7.tgz解压重命名为spark
tar -zxvf spark-2.0.1-bin-hadoop2.6.tgz
3、Spark目录结构介绍
bin:提交运行Spark程序的脚本
conf:配置文件所在的目录
data:测试数据
examples:样例程序和源码
jars:jar lib的目录
LICENSE:顾名思义,license文件
licenses:依赖的第三方组件的licenses
logs:默认的日志目录
NOTICE
python:Python相关的脚本、文档和lib
R:R语言相关的文档、lib
README.md:readme文件,对于初学者很有用
RELEASE:发行版本介绍
sbin:启动和停止脚本目录
yarn:spark-yarn-shuffer.jar目录
二、scala部署
1、配置环境变量
# vi /etc/profile
输入以下配置项,在profile的尾部,并保存退出。
# Spark Eenvironment Variables
export SPARK_HOME=/opt/spark-2.0.1-bin-hadoop2.6
export PATH=$SPARK_HOME/bin:$PATH
export PATH=$SPARK_HOME/sbin:$PATH
使配置生效
source /etc/profile
2、配置conf下的spark-env.sh
将spark-env.sh.template复制重命名为spark-env.sh
cp spark-env.sh.template spark-env.sh
修改spark-env.sh
vi spark-env.sh
将以下内容写在最后一行
# 指定JDK路径
export JAVA_HOME=/opt/modules/jdk1.8
# 设置Master的地址,主机名
SPARK_MASTER_HOST=hadoop03
3、配置conf下的spark-defaults.conf
将spark-defaults.conf.template复制重命名为spark-defaults.conf
cp spark-defaults.conf.template spark-defaults.conf
修改spark-defaults.conf
vi spark-defaults.conf
将以下内容写在最后一行
指定主机名hadoop3
spark.master spark://hadoop03:7077
spark.local.dir /opt/data/spark_shuffle
4、配置conf下的slaves
将slaves.template复制重命名为slaves
slaves文件用于配置集群拥有的Worker。编辑slaves文件,输入主机名
hadoop03
5、修改sbin目录下的目录命令
将start-all.sh和stop-all.sh修改为spark-start-all.sh和spark-stop-all.sh
mv start-all.sh spark-start-all.sh
mv stop-all.sh spark-stop-all.sh
6、启动spark
spark-start-all.sh
使用jps查看一下当前进程,出现以下内容就成功启动了
[root@hadoop3 conf]# jps
2134 Worker
2072 Master
2697 Jps
使用spark进行计算
run-example SparkPi
可以再网页hadoop:8080上面看见已经有工作内容了
使用spark启动scala
spark-shell
网友评论