spark on yarn安装

网上关于spark的安装说明很多了,这里就以spark  pre-build with user provided hadoop 安装包为例讲解,

下载spark  pre-build with user provided hadoop,这里版本为2.1.0

假设集群节点为

192.168.1.12(slave1)

192.168.1.13(slave2)

192.168.1.14(master)

假设这三个节点均实现ssh免密码登陆。

在master节点上,解压安装包,然后进入目录

cd spark-2.1.0/conf

复制两个文件

cp spark-env.sh.template spark-env.sh
cp slaves.template slaves

salves文件中添加如下两行

slave1
slave2

spark-env.sh文件添加如下

export JAVA_HOME=/usr/java/default
export SCALA_HOME=/usr/local/scala-2.12.2
export SPARK_MASTER_IP=192.168.1.14
export HADOOP_HOME=/root/hadoop-2.8.0
export HADOOP_CONF_DIR=/root/hadoop-2.8.0/etc/hadoop
SPARK_DIST_CLASSPATH=$(/root/hadoop-2.8.0/bin/hadoop classpath)
export SPARK_DIST_CLASSPATH=$SPARK_DIST_CLASSPATH:/root/hadoop-2.8.0/share/hadoop/tools/lib/*

注意,最后两行的设置是因为这里使用的是user provided hadoop,所有需要指定classpath,否则运行spark报错,参见 这里

将spark-2.1.0文件夹复制到slave1和slave2上相同的目录下

设置/etc/hosts

192.168.1.12 slave1
192.168.1.13 slave2
192.168.1.14 master

如果不设置hosts文件,而在conf/slaves中使用节点IP,那么运行 ./sbin/start-all.sh时,将看不到worker节点,而需要手动将slave(worker)连接master,具体操作为:

如果spark集群web管理页面无法显示worker,则可以分别在每个worker节点上执行

[root@slave2 home]# spark/sbin/start-slave.sh spark://<master ip>:7077

设置/etc/profile

export JAVA_HOME=/..
export SCALA_HOME=/..
export SPARK_HOME=/..
PATH=$PATH:$SCALA_HOME/bin:$SPARK_HOME/bin
export PATH

设置完毕,启动spark

./sbin/start-all.sh
原文地址:https://www.cnblogs.com/sjjsxl/p/6769627.html