我的 Amazon EMR 集群无法启动,并且收到错误“引导操作返回非零返回代码”

上次更新日期:2020 年 10 月 7 日

我为 Amazon EMR 集群创建了一个自定义引导操作。该集群无法启动,并且引导操作返回类似于以下内容的错误:“引导操作 1 返回非零返回代码”。

简短描述

引导操作在 Amazon EMR 在集群中预置 Amazon Elastic Compute Cloud (Amazon EC2) 实例后运行。当引导操作失败时,Amazon EMR 将终止该实例。有关更多信息,请参阅了解集群生命周期

如果引导操作由于引导脚本中的错误而失败,集群将无法启动。有关更多信息,请参阅引导操作基础知识

解决方法

要确定引导操作失败的原因,请查看引导操作的 stderr 日志。这些日志位于类似于以下内容的 Amazon Simple Storage Service (Amazon S3) 路径中:

s3://doc-example-bucket/cluster-id/node/instance-id/bootstrap-actions/

如果在查看 stderr 日志后无法确定脚本失败的原因,请修改脚本以提供其他调试信息。例如,在 bash 脚本中设置 -ex 参数。这允许您在引导操作日志文件中查看 bash 脚本流。

注意:如果失败的引导操作不是您创建的引导操作(例如,如果您创建了六个引导操作,而错误消息是“引导操作 7 失败,显示非零退出代码”),则表示 Amazon EMR 无法安装应用程序或启动服务。这种问题很少见。若要解决此问题,请尝试再次启动集群。


这篇文章对您有帮助吗?


您是否需要账单或技术支持?