Spark on YARN搭建指南

举报
William Wang 发表于 2019/12/25 14:15:44 2019/12/25
【摘要】 Spark on YARN安装配置方法

1577253179969833.png



预安装环境

Spark on YARN需事先配置集群中Java环境和Hadoop集群,可参考《Hadoop集群配置》


安装Spark

下载

下载镜像文件,进入Spark官方下载页面,选择需要下载的版本,此教程以spark-2.4.4-bin-without-hadoop.tgz为例进行配置。


解压

$> sudo mkdir /usr/local/spark
$> sudo chown hadoop:hadoop -R /usr/local/spark    // 设置所有人为用户“hadoop”
$> cd /usr/local/spark
$> tar -zxvf spark-2.4.4-bin-without-hadoop.tgz
$> ln -s spark-2.4.4-bin-without-hadoop spark


配置

$> cd spark/conf
$> cp spark-env.sh.template spark-env.sh    // 从模板中复制一个配置文件

配置spark-env.sh

$> vim spark-env.sh

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64
export HADOOP_HOME=/usr/local/hadoop/hadoop
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export SPARK_DIST_CLASSPATH=$(hadoop classpath)    // 下载的是without-hadoop版本,必须加入这一行
SPARK_MASTER_HOST=master                           // master的hostname
SPARK_LOCAL_DIRS=/usr/local/spark/spark-2.4.4
SPARK_DRIVER_MEMORY=1G

将此spark程序文件和配置文件分发给所有的spark slaves

master$> scp -r /usr/local/spark slave-xxx:/usr/local
master$> ssh slave-xxx
slave-xxx$> sudo chown hadoop:hadoop -R spark     // 在slave机器上配置spark文件夹所有人


启动Spark

两种启动方式,一种是全部启动:

master$> spark/sbin/start-all.sh

另一种是分开启动指定slave:

master$> spark/sbin/start-master.sh
slave-xxx$> spark/sbin/start-slave.sh master:7077      // 启动slave需指定master的host和port


验证

验证启动结果

分别在master和slave上执行

$> jps

在master上可以观察到Master进程,在slave上可以观察到Worker进程


Spark on YARN测试

运行

$> spark/bin/spark-submit --class org.apache.spark.examples.SparkPi \
   --master yarn \
   --deploy-mode cluste \
   --driver-memory 4g \
   --executor-memory 2g \
   --executor-cores 1 \
   --queue thequeue \
   spark/examples/jars/spark-examples_2.12-2.4.4.jar 1000


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。