hadoop-yarn - 无法在亚马逊 emr 中使用 apache flink

标签 hadoop-yarn emr amazon-emr apache-flink

我无法在 Amazon EMR 中启动 Apache Flink 的 yarn session 。我收到的错误消息是

$ tar xvfj flink-0.9.0-bin-hadoop26.tgz
$ cd flink-0.9.0
$ ./bin/yarn-session.sh -n 4 -jm 1024 -tm 4096
...
Diagnostics: File file:/home/hadoop/.flink/application_1439466798234_0008/flink-conf.yaml does not exist
java.io.FileNotFoundException: File file:/home/hadoop/.flink/application_1439466798234_0008/flink-conf.yaml does not exist
...

我使用的是 Flink 版本 0.9 和 Amazons Hadoop 版本 4.0.0。有什么想法或提示吗?

完整日志可以在这里找到:https://gist.github.com/headmyshoulder/48279f06c1850c62c28c

最佳答案

来自日志:

The file system scheme is 'file'. This indicates that the specified Hadoop configuration path is wrong and the sytem is using the default Hadoop configuration values.The Flink YARN client needs to store its files in a distributed file system

Flink 读取 Hadoop 配置文件失败。它们可以从环境变量中获取,例如HADOOP_HOME,或者您可以在执行 YARN 命令之前在 flink-conf.yaml 中设置配置目录。

Flink 需要读取 Hadoop 配置来知道如何将 Flink jar 上传到集群文件系统,以便新创建的 YARN 集群可以访问它。如果Flink无法解析Hadoop配置,它会使用本地文件系统上传jar。这意味着该 jar 将被放置在您启动集群的机器上。因此,无法从 Flink YARN 集群访问它。

请参阅Flink configuration page了解更多信息。

编辑:在 Amazong EMR 上,导出 HADOOP_CONF_DIR=/etc/hadoop/conf 让 Flink 发现 Hadoop 配置目录。

关于hadoop-yarn - 无法在亚马逊 emr 中使用 apache flink,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31991934/

相关文章:

java - EMR - 在 Hadoop(和 YARN)中使用自定义日志记录附加程序

amazon-s3 - 将目录作为压缩文件从 Elastic MapReduce 上传到 S3

hadoop - 除了 hadoop 集群中设置的时间之外,如何为长时间运行的应用程序更新委托(delegate) token

apache-spark - 我应该为 Spark 选择哪种集群类型?

amazon-web-services - s3n ://处的主机名 URI 无效

pyspark - Spark 应用程序在 1 小时后在 EMR 中突然被 KILLED 并且 livy session 过期。原因和解决方案是什么?

java - 如何在java代码中使用S3DistCp

java - Hadoop 截断/不一致的计数器名称

hadoop - 无法让日志聚合在 Amazon-Hadoop 集群上工作

hadoop - 如何将 Amazon Glacier/S3 与 hadoop map reduce/spark 结合使用?