Spark1.6 on YARN 部署

原创
2016/04/11 10:36
阅读数 143

#标题:Spark1.6 on YARN 部署

#1.说明:

  1. 首先要部署好Hadoop集群包括HDFS和YARN,这里不再赘述.
  2. Spark on YARN模式,不需要启动spark的master和worker,master的工作由YARN完成.
  3. 相关路径根据实际情况修改.
  4. 1.4和1.6版本部署过程类似.

#2.部署

##下载 从官网(http://spark.apache.org/)下载对应Hadoop版本的包,如spark-1.6.1-bin-hadoop2.4.tgz. 解压至某个目录,如"/usr/local/hadoop/spark-1.6.1-bin-hadoop2.4". 解压后得到如下文件

##配置

配置文件在conf目录中.

###配置环境变量 cp spark-env.sh.template spark-env.sh

在spark-env.sh中添加如下: export HADOOP_HOME=/usr/local/hadoop/hadoop-2.4.1 export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop/

###配置spark选项 cp spark-defaults.conf.template spark-defaults.conf 添加如下: spark.master yarn #指定使用yarn spark.driver.memory 1g #指定driver使用的内存 spark.executor.memory 512m #指定executor使用的内存

选填: spark.executor.extraClassPath /data/hadoop/hadoop/hadoop2.4.1/share/hadoop/common/lib/hadoop-lzo-0.4.20.jar spark.driver.extraClassPath /data/hadoop/hadoop/hadoop2.4.1/share/hadoop/common/lib/* spark.kryoserializer.buffer.max 256m

另外也可以设置一下Spark的log4j配置文件,使得屏幕中不打印额外的INFO信息: cp log4j.properties.template log4j.properties 修改一行 log4j.rootCategory=WARN, console

##启动一个spark应用 执行 ./bin/spark-shell

输出将包括如下所示

浏览器访问当前机器的8088端口,将可以看到当前启动的driver的web界面,如下:

点击'Environment'标签,将可以看到相关环境变量和属性的值.

浏览器访问YARN的管理页面,可以看到有一个SPARK应用正在运行(如下),至此spark就可以跑在YARN上了.

#3.运行模式 Spark on YARN有两种运行模式cluster和client,spark-shell和spark-sql交互式的应用只支持client模式. 两种模式区别如下:

从广义上讲,yarn-cluster适用于生产环境;而yarn-client适用于交互和调试,也就是希望快速地看到application的输出。

可以参kao这篇博客:Spark:Yarn-cluster和Yarn-client区别与联系(http://www.iteblog.com/archives/1223).

#4.参kao文献: Running Spark on YARN http://spark.apache.org/docs/latest/running-on-yarn.html

原文链接:http://liam8.ml/2016/03/29/spark-on-yarn/

展开阅读全文
打赏
1
1 收藏
分享
加载中
Liam8博主
OSC敏感词检测功能是谁实现的,敢不敢站出来38
2016/04/11 10:49
回复
举报
更多评论
打赏
1 评论
1 收藏
1
分享
返回顶部
顶部