Spark安装

Spark集群至少需要有JDK、Hadoop、Scala、Spark

依赖组件

  • java8
  • hadoop2.7
  • scala2.11
  • spark-2.3.3(待安装)

安装

目标:hadoop1、2、3、4四台机器上安装分布式spark集群。
参考:https://blog.youkuaiyun.com/sjmz30071360/article/details/82561867
安装java及hadoop略hadoop安装

1.安装scala

下载地址:https://www.scala-lang.org/download/2.11.12.html

# 解压
tar -zxvf scala-2.11.12.tgz -C /tools/
# 软链
ln -s /tools/scala-2.11.12 /tools/scala-current

环境变量(hadoop组件的环境变量在hadoop目录.bash_profile配置,公共工具配在/etc/profile

# vim /etc/profile
export SCALA_HOME=/tools/scala-current
export PATH=$PATH:$SCALA_HOME/bin
# source /etc/profile

上述所有节点机器同等。

# 分发至各机器
scp -r /tools/scala-2.11.12 hadoop4:/tools/
# 其他各机器执行
ln -s /tools/scala-2.11.12 /tools/scala-current
# 其他机器环境变量的配置(略)
source /etc/profile
2.安装spark

下载saprk参见官网 http://spark.apache.org/downloads.html
解压、软链

tar -zxvf spark-2.3.3-bin-hadoop2.7.tgz
[hadoop@hadoop1 ~]$ ln -s bigdata/spark-2.3.3-bin-hadoop2.7 spark-current

环境变量

# vim ~/.bash_profile
export SPARK_HOME=/home/hadoop/spark-current
export PATH=$PATH:$SPARK_HOME/bin
# 因为$SPARK_HOME/sbin目录下一些文件名和$HADOOP_HOME/bin目录下一些文件名相同,为了避免文件名冲突,这里不添加$SPARK_HOME/sbin目录                                                                                                                                                                     
# source ~/.bash_profile

3.配置conf目录下文件
[hadoop@hadoop1 conf]$ pwd
/home/hadoop/spark-current/conf
[hadoop@hadoop1 conf]$ cp spark-env.sh.template spark-env.sh
[hadoop@hadoop1 conf]$ cp slaves.template slaves

spark-env.sh

# vim spark-env.sh
JAVA_HOME=/home/hadoop/java-current
HADOOP_HOME=/home/hadoop/hadoop-current
HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
SCALA_HOME=/tools/scala-current
SPARK_HOME=/home/hadoop/spark-current
SPARK_MASTER_IP=hadoop1
SPARK_EXECUTOR_MEMORY=2G

slaves

# vim slaves
hadoop1
hadoop2
hadoop3

分发:将spark安装文件夹复制到其他机器并设环境变量。

# 以分发到hadoop2为例,3、4同理
[hadoop@hadoop1 bigdata]$ scp -r spark-2.3.3-bin-hadoop2.7 hadoop@hadoop2:~/bigdata/
[hadoop@hadoop2 ~]$ ln -s ~/bigdata/spark-2.3.3-bin-hadoop2.7 ~/spark-current
# 环境变量(同上)vim .bash_profile

4.启动spark集群

因为Spark是依赖于Hadoop提供的分布式文件系统的,所以在启动Spark之前,先确保Hadoop在正常运行。hadoop安装启动
在Hadoop正常运行的情况下,在master(Hadoop的NameNode,即Spark的master节点)上
$SPARK_HOME/sbin目录下执行:
(前面必须有 ./,否则会执行$HADOOP_HOME/bin下的start-all.sh脚本)

[hadoop@hadoop1 ~]$ cd $SPARK_HOME
[hadoop@hadoop1 spark-current]$ ./sbin/start-all.sh

查看进程发现hadoop1机器有master进程,2、3、4机器有worker

[hadoop@hadoop1 spark-current]$ jps -l
5074 sun.tools.jps.Jps
3301 org.apache.hadoop.hdfs.server.namenode.NameNode
3736 org.apache.hadoop.yarn.server.resourcemanager.ResourceManager
4808 org.apache.spark.deploy.master.Master

[hadoop@hadoop2 ~]$ jps
12676 QuorumPeerMain
27397 Worker
11526 DataNode
18558 HRegionServer
11695 NodeManager
27583 Jps

验证:
http://hadoop1:8080/

其他测试参考:https://blog.youkuaiyun.com/sjmz30071360/article/details/82561867

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值