gpt4 book ai didi

hadoop - Storm 纱 : Application container fails to launch

转载 作者:可可西里 更新时间:2023-11-01 16:13:36 28 4
gpt4 key购买 nike

我正在运行一个 Storm (三叉戟)拓扑,它从 kafka 读取 avro 并将记录写入 hbase。拓扑在 Localcluster 模式下按预期运行,但在使用 Stormsubmitter 时我遇到了以下问题。

  • 在分布式 Hadoop 模式下,我在启动 YARN 应用程序时收到以下错误 [1]。
  • 在 Hadoop 中(本地模式,只有 1 个盒子)Yarn 正在生成 nimbus 服务器和 storm-ui。但是没有主管运行拓扑中的 spout/bolt。我猜原因可能是内存不足(4G 来运行拓扑 + hbase、hdfs、kafka、zookeeper 等...)。

你能帮我理解这个容器失败的原因吗?应用程序日志中没有错误/信息。

[1] YARN 容器启动失败,运行时出现以下错误。storm-yarn launch/homeext/storm-yarn.yml --queue default -appname storm-yarn-demo --stormZip/tmp/storm-0.9.zip

Application application_1415038356032_0304 failed 2 times due to AM Container for appattempt_1415038356032_0304_000002 exited with exitCode: 127 due to: Exception from container-launch: org.apache.hadoop.util.Shell$ExitCodeException:
org.apache.hadoop.util.Shell$ExitCodeException:
at org.apache.hadoop.util.Shell.runCommand(Shell.java:505)
at org.apache.hadoop.util.Shell.run(Shell.java:418)
at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:650)
at org.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor.launchContainer(DefaultContainerExecutor.java:195)
at org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.call(ContainerLaunch.java:283)
at org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.call(ContainerLaunch.java:79)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Container exited with a non-zero exit code 127
.Failing this attempt.. Failing the application.

最佳答案

此日志不足以诊断。它只是说容器未能启动。您应该查看容器输出。检查节点上的 ${yarn.nodemanager.log-dirs},将有一个应用程序文件夹 (application_1415038356032_0304),每次尝试都会有一个容器文件夹 (...1415038356032_0304_000002)包含此尝试的标准错误、标准输出和系统日志。阅读这些内容,您可能会找出问题所在。

如果这些不存在,请查看 ${yarn.nodemanager.local-dirs} 您会找到容器启动脚本(我认为称为 container-launch.sh ) 用于此应用程序/容器尝试。其中将是启动容器的实际命令。尝试从 shell 提示符下运行它,看看会得到什么。

关于hadoop - Storm 纱 : Application container fails to launch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26778735/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com