我最近无法将任何jars上传到我的Flink集群,该集群在AWS EMR上的YARN下运行。已经有一个长期运行的流应用程序运行了26天。看来temp目录已被删除,但是我真的不认为我删除了它。
从jobmanager.log
:
2019-02-12 22:02:05,156 WARN org.apache.flink.runtime.webmonitor.handlers.JarListHandler - Jar upload dir /tmp/flink-web-94fee1e8-35b9-409f-be97-d86c0f021459/flink-web-upload does not exist, or had been deleted externally. Previously uploaded jars are no longer available.
该实例有足够的空间来存储jar。
以下是YARN应用的状态:
Application-Id : application_1547758510009_0001
Application-Name : Flink session cluster
Application-Type : Apache Flink
User : hadoop
Queue : default
Application Priority : 0
Start-Time : 1547758629234
Finish-Time : 0
Progress : 100%
State : RUNNING
Final-State : UNDEFINED
Tracking-URL : http://ip-cp1.ec2.internal:39975
RPC Port : 39975
AM Host : ip-cp1.ec2.internal
Aggregate Resource Allocation : 43765538005 MB-seconds, 4500338 vcore-seconds
Aggregate Resource Preempted : 0 MB-seconds, 0 vcore-seconds
Log Aggregation Status : NOT_START
Diagnostics :
Unmanaged Application : false
Application Node Label Expression : <Not set>
AM container Node Label Expression : <DEFAULT_PARTITION>
我尚未设置jobmanager.web.upload.dir
或jobmanager.web.tmpdir
。重新创建该目录后,我可以通过cURL将其上传到其中(并确认文件已到达),但随后列出这些jar却什么也没显示。
以前有人看过吗?而且,如何现在可以正确地重新创建必要的上载目录?
答案 0 :(得分:0)
某些Linux发行版会定期清理temp目录(/tmp
),即不仅在重新启动时清理。
您应该将Flink配置为使用非临时目录来存储JAR。