Gui*_*ume 5 hadoop oozie hadoop-yarn
我有一个 Oozie 工作流,其中一个步骤是 java 步骤,运行存储在本地文件系统上的 jar(该 jar 存在于所有节点上)。
最初,jar 是通过 RPM 安装的,因此它们都具有相同的时间戳。
在试验时,我在这个 jar 上手动复制了一个新版本,现在我收到了消息:
org.apache.oozie.action.ActionExecutorException: JA009: org.apache.hadoop.yarn.exceptions.YarnException: Failed to submit application_1516602562532_15451 to YARN : Application application_1516602562532_15451 failed 2 times due to AM Container for appattempt_1516602562532_15451_000002 exited with exitCode: -1000
For more detailed output, check the application tracking page: http://ip-10-0-0-239.eu-west-1.compute.internal:8088/cluster/app/application_1516602562532_15451 Then click on links to logs of each attempt.
Diagnostics: java.io.IOException: Resource file:/opt/tst/tst.jar changed on src filesystem (expected 1516886392000, was 1516891496000
Failing this attempt. Failing the application.
Run Code Online (Sandbox Code Playgroud)
主线是:
资源文件:/opt/tst/tst.jar 在 src 文件系统上更改(预期为 1516886392000,为 151689149600)。
这 2 个数字是时间戳,expected一个确实是旧 jar 的 TS,在所有服务器上都相同,wasTS 是数据节点之一上新 jar 的时间戳(因为它们scp在循环中被'ed不同的)。
我的问题是:我如何告诉纱线停止抱怨并使用新的?
一些注意事项:
yarn.sharedcache.enabled是false(默认值)所以yarn scmadmin -runCleanerTask在这里不相关,yarn,我在 hdfs 上的 yarn 用户目录中找不到我的 jar 的任何副本(也不在 oozie 目录下),这是我的两分钱,你可以自己构建yarn相关的jar并将其添加到你当前的工作环境中。
这可能是跳过这种“烦人的”条件检查的解决方法。
一般步骤如下:
1、获取你使用的yarn的源代码。您可以从 Hadoop 官方网站下载它。changed on file system2、像Hadoop源代码一样搜索错误日志。3、注释掉 4、重新构建 Yarn 相关 jar 5、放到你的工作环境中。
您可以参考如何修复 src 文件系统问题上的资源更改以获取更多详细信息。
| 归档时间: |
|
| 查看次数: |
2053 次 |
| 最近记录: |