我不能在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
答案 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