返回介绍

Spark on Yarn 模式

发布于 2025-03-08 13:02:48 字数 988 浏览 0 评论 0 收藏 0

上面配置的实际是 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文