gpt4 book ai didi

hadoop - 如何将 Flink 作业提交到远程 YARN 集群?

转载 作者:可可西里 更新时间:2023-11-01 16:43:05 24 4
gpt4 key购买 nike

我使用 Apache Ambari 在 4 节点上安装了 Apache Hadoop。我用 Apache Flink 写了一个简单的作业。我想将此作业提交到我的 YARN 集群。但是 Flink 需要在本地机器上 YARN 配置文件(core-site.xml、yarn-site.xml 等)。所以如果我没有误解的话,有两种手动方式

  1. 在 ResourceManager 节点上启动 flink 作业(以查找配置文件)
  2. 从 ResourceManager 下载配置文件到本地。

我觉得,这两种方式都不是很好。如何将作业提交到远程 YARN 集群。有合适的方法吗?

最佳答案

在 Hadoop/YARN 世界中,您始终需要客户端计算机上的配置文件。因此,您需要在本地获取它们。但是,您通常需要其中一些而不是全部。在大多数情况下,hdfs-site.xml、core-site.xml 和 yarn-site.xml 就足够了——如果我没记错的话。为了安全起见,将它们全部复制到本地目录中。

然后在机器上的 flink-conf.yaml 文件中配置以下参数,它将扮演客户端的角色,也就是。你将从开始你的工作。

fs.hdfs.hadoopconf: path_to_hadoop_conf_dir

然后您应该能够通过告诉 flink 工具使用 yarn-master 作为作业管理器来启动 YARN 作业。

flink run -m yarn-cluster -yn <num_task_managers> -yjm <job_manager_memory> -ytm <task_manager_memory -c <main_class> <jar>

如果您在 flink-conf.yaml 中配置了上述内存参数,则应该可以通过省略所有这些冗长的参数来使用默认值启 Action 业

flink run -m yarn-cluster -n <num_task_managers> -c <main_class> <jar>

作为快速测试,您可以尝试在 YARN 上启动 Scala shell。

start-scala-shell.sh yarn -n <num_task_managers> -nm test_job

关于hadoop - 如何将 Flink 作业提交到远程 YARN 集群?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38943103/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com