文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
Spark on Yarn 模式
上面配置的实际是 Spark 自带的 standalone 集群模式,并非 on Yarn 模式。这几天看别人写的博客才发现自己之前理解错误了。官方文档这方面没有说的太详细,我之前也看了几篇别人写的博客(半吊子文章,害人不浅),搞得我理解有误
上面启动的 master 和 worker 进程实际是 standalone 模式下的,
如果启动 Spark 的 master 和 worker 服务,这是 Spark 的 standalone 运行模式,不是 Spark on YARN 运行模式,请不要混淆
Spark on Yarn 是把 spark 作业提交到 yarn 集群上运行,所以只要在一台可以连接到 hdfs 和 yarn 的节点上提交 spark 作业即可,该节点就是客户端,所以在配置一个节点上配置 spark 即可。不同于上面 standalone 的配置区别如下:
配置文件的区别如下:
- 不需要配置 conf/slaves 文件
- 只需要配置 conf/spark-env.sh 文件
# 指定 java、hadoop 及 hadoop-conf 所在目录
export JAVA_HOME=/opt/jdk1.8.0_201
export HADOOP_HOME=/home/hadoop/hadoop-2.6.0-cdh5.12.1
# 下面这个的作用是告诉 spark 程序 yarn 在哪里,可以使用 HADOOP_CONF_DIR 或者 YARN_CONF_DIR
export HADOOP_CONF_DIR=/home/hadoop/hadoop-2.6.0-cdh5.12.1/etc/hadoop
集群启动区别:
- 启动 hdfs(如果是需要从 hdfs 上读取文件的话)
- 启动 yarn
- 不需要启动 spark 集群(就是 master 和 worker 进程)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论