不能在amazon emr中使用apache flink

时间:2015-08-13 15:02:51

标签: yarn emr amazon-emr apache-flink

我不能在Amazons EMR中开始Apache Flink的纱线会议。我得到的错误信息是

$ 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 verision 0.9和Amazons Hadoop 4.0.0版。有什么想法或提示吗?

可在此处找到完整日志:https://gist.github.com/headmyshoulder/48279f06c1850c62c28c

2 个答案:

答案 0 :(得分:8)

来自日志:

  

文件系统方案是' file'。这表明指定的Hadoop配置路径错误,系统使用默认的Hadoop配置值.Flink YARN客户端需要将其文件存储在分布式文件系统中

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

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

有关详细信息,请参阅Flink configuration page

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

答案 1 :(得分:0)

如果我是你,我会尝试这个:

  

./ bin / yarn-session.sh -n 1 -jm 768 -tm 768