详细的部署错误代码 - Amazon IoT Greengrass
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

详细的部署错误代码

使用 Greengrass nucleus 版本 2.8.0 或更高版本时,使用这些部分中的错误代码和解决方案来帮助解决组件部署问题。

Greengrass 核心以从最不具体到最具体的可用代码的层次结构报告部署错误。您可以使用此层次结构来帮助查明部署错误的原因。例如,以下是一个可能的错误层次结构:

  • 部署_失败

    • ARTIFACT_下载_错误

      • IO_ERROR

        • DISK_SPACE_CR

错误代码按类型分类。每种类型代表一类可能发生的错误。Amazon IoT Greengrass在控制台、API 中报告这些错误类型Amazon CLI. 可能有多种错误类型,具体取决于错误层次结构中报告的错误。对于上述示例,返回的错误类型为DEVICE_ERROR.

类型是:

  • 权限_错误— 访问需要许可的操作被拒绝。

  • 请求_错误— 由于部署文档中的问题,发生了错误。

  • COMPONENT_RECIPE_ERROR— 由于组件配方中的问题而发生错误。

  • AWS_COMPONENT_ERROR— 启动或删除时出错Amazon提供的组件。

  • USER_COMPONENT_ERROR— 启动或删除用户组件时出错。

  • COMPONENT_ERROR— 启动或移除组件时出现错误,但 Greengrass 原子核无法确定该组件是否为Amazon提供的组件或用户组件。

  • 设备错误— 本地 I/O 出现错误或其他设备错误。

  • DEPENDENCY_ERRO— 部署无法从 Amazon S3 下载构件或从 ECR 注册表提取映像。

  • HTTP_ERR— HTTP 请求出现错误。

  • 网络_错误— 设备网络出现错误。

  • NUCLEUS_ERROR— Greengrass 原子核找不到成分或找不到活性原子核版本。

  • 服务器_错误— 服务器在响应请求时返回了 500 错误。

  • CLOUD_SERVICE_— 出现错误Amazon IoT Greengrass云服务。

  • UNKNOWN_ERROR— 该组件引发了未经检查的异常。

本节中的许多错误都报告了其他信息Amazon IoT Greengrass核心日志。这些日志存储在核心设备的本地文件系统上。有日志Amazon IoT Greengrass核心软件和每个单独的组件。有关访问日志的信息,请参阅访问文件系统日志日志日志.

权限错误

访问_拒绝

当出现以下情况时,你可能会收到这个错误Amazon由于权限设置不正确,服务操作返回 403 错误。有关详细信息,请查看更具体的错误代码。

GET_DEPLOYMENT_配置_访问_拒绝

你可能会在以下情况下得到这个错误Amazon IoT政策不允许调用GetDeploymentConfiguration操作。添加greengrass::GetDeploymentConfiguration核心设备策略的权限。

GET_COMPONENT_VERSION_ARTIFACT_ACCESS_

当核心设备出现时,你可能会遇到这个错误Amazon IoT政策不允许greengrass:GetComponentVersionArtifact权限。将权限添加到核心设备的策略中。

RESOLVE_COMPONENT_CANDIDATES_ACCESS_已拒绝

当核心设备出现时,你可能会遇到这个错误Amazon IoT政策不允许greengrass:ResolveComponentCandidates权限。将权限添加到核心设备的策略中。

GET_ECR_CREDENTIAL_ERROR

当部署无法使用 ECR 中的私有注册表进行身份验证时,您可能会遇到此错误。检查日志中是否存在特定错误,然后重试部署。

USER_NOT_AUTHORIZED_FOR_DOCKER

当 Greengrass 用户无权使用 Docker 时,你可能会得到这个错误。确保你以 root 身份运行 Greengrass 或者将用户添加到dockergroup。然后再次尝试部署。

S3_ACCESS_DENIED

当 Amazon S3 操作返回 403 错误时,您可能会收到此错误。有关详细信息,请查看任何其他错误代码或日志。

S3_HEAD_OBJECT_ACCESS_DENIED

如果设备的代币交换角色不允许Amazon IoT Greengrass核心软件,用于从您在组件配方中指定的 S3 对象 URL 下载组件构件,或者组件构件不可用。检查代币交换角色是否允许s3:GetObject获取工件可用且工件存在的 S3 对象 URL。

S3_GET_BUCKET_LOCATION_ACCESS_已拒绝

当设备的代币交换角色不允许时,你可能会收到这个错误s3:GetBucketLocation构件的 Simple Amazon S3)存储了构件的 Simple。检查设备是否允许该权限,然后重试部署。

S3_GET_OBJECT_ACCESS_DENIED

如果设备的代币交换角色不允许Amazon IoT Greengrass核心软件,用于从您在组件配方中指定的 S3 对象 URL 下载组件构件,或者组件构件不可用。检查代币交换角色是否允许s3:GetObject获取工件可用且工件存在的 S3 对象 URL。

请求错误

NUCLEUS_MISSING_REQUIRED_能力

当部署中的 nucleus 版本无法执行请求的操作(例如下载大型配置或设置 Linux 资源限制)时,您可能会遇到此错误。使用支持操作的 nucleus 版本重试部署。

COMPONENT_CIRCULAR_依赖_错误

当部署中的两个组件相互依赖时,您可能会遇到此错误。修改组件设置,使部署中的组件不相互依赖。

未授权_NUCLEUS_MINOR_VERSION_UPDATE

如果部署中的某个组件需要 nucleus 次要版本更新,但部署中未指定该版本,则可能会出现此错误。这有助于减少依赖不同版本的组件的意外次要版本更新。在部署中加入新的次要核版本。

MISSING_DOCKER_应用程序_经理

在未部署 Docker 应用程序管理器的情况下部署 Docker 组件时,可能会出现此错误。确保您的部署包含 Docker 应用程序管理器。

缺少_TOKEN_EXCHANGE_SERVICE

当部署想要在不部署令牌交换服务的情况下从私有 ECR 注册表下载 Docker 镜像构件时,可能会出现此错误。确保您的部署包含令牌交换服务。

组件_VERSION_REQUIREMENTS_NOT_MET

当存在版本约束冲突或组件版本不存在时,可能会出现此错误。有关更多信息,请参阅 Error: com.aws.greengrass.componentmanager.exceptions.NoAvailableComponentVersionException: Failed to negotiate component <name> version with cloud and no local applicable version satisfying requirement <requirements>

THROTTLING_ERROR

当出现以下情况时,你可能会收到这个错误Amazon服务操作超过了速率配额。重试部署。

冲突_REQUEST

当出现以下情况时,你可能会收到这个错误Amazon服务操作返回 409 错误,因为您的部署正在尝试一次执行多个操作。重试部署。

资源_NOT_FOUND

当出现以下情况时,你可能会收到这个错误Amazon由于找不到资源,服务操作返回 404 错误。检查日志中是否有缺少资源。

RUN_WITH_CONFIG_NOT_VALID

你可能会在以下情况下得到这个错误posixUser,posixGroup,或windowsUser为运行该组件而指定的信息无效。检查用户是否有效,然后重试部署。

UNSUPPORTED_REGION

如果不支持为部署指定的区域,则可能会出现此错误Amazon IoT Greengrass. 检查该区域,然后再次尝试部署。

IOT_CRED_ENDPOINT_NOT_VALID

你可能会在以下情况下得到这个错误Amazon IoT配置中指定的证书终端节点无效。检查终端节点,然后重试您的请求。

IOT_DATA_ENDPOINT_NOT_VALID

你可能会在以下情况下得到这个错误Amazon IoT配置中指定的数据端点无效。检查终端节点,然后重试您的请求。

S3_HEAD_OBJECT_RESOURCE_NOT_FOUND

当组件构件在组件配方中指定的 S3 对象 URL 中不可用时,可能会出现此错误。检查您是否已将项目上传到 S3 存储桶,以及项目 URI 是否与存储桶中项目的 S3 对象 URL 相匹配。

S3_GET_BUCKET_LOCATION_RESOURCE_NOT_FOU

当未找到 Amazon S3)存储Amazon S3)存储Amazon S3)存储 检查存储桶是否存在,然后重试部署。

S3_GET_OBJECT_RESOURCE_NOT_FOUND

当组件构件在组件配方中指定的 S3 对象 URL 中不可用时,可能会出现此错误。检查您是否已将项目上传到 S3 存储桶,以及项目 URI 是否与存储桶中项目的 S3 对象 URL 相匹配。

IO_MAPPING_ERROR

在解析部署文档或配方时出现 I/O 错误时,您可能会遇到此错误。有关详细信息,请查看任何其他错误代码或日志。

组件配方

RECIPE_PARSE_ERROR

由于配方结构存在错误而无法解析部署配方时,您可能会遇到此错误。检查配方格式是否正确,然后重试部署。

RECIPE_METADATA_PARSE_ERROR

当无法解析从云端下载的部署配方元数据时,您可能会遇到此错误。联系 Amazon Web Services Support。

ARTIFACT_URI_NOT_VALID

当配方中的工件 URI 格式不正确时,你可能会得到这个错误。检查日志中是否有无效的 URI,更新配方中的 URI,然后重试部署。

S3_ARTIFACT_URI_NOT_VALID

当配方中某个工件的 Amazon S3 URI 无效时,您可能会收到此错误。检查日志中是否有无效的 URI,更新配方中的 URI,然后重试部署。

DOCKER_ARTIFACT_URI_NOT_VALID

当配方中神器的 Docker URI 无效时,你可能会得到这个错误。检查日志中是否有无效的 URI,更新配方中的 URI,然后重试部署。

EMPTY_ARTIFACT_URI

如果配方中未指定工件的 URI,则可能会出现此错误。检查缺少 URI 的工件的日志,更新配方中的 URI,然后重试部署。

EMPTY_ARTIFACT_SCHEME

如果没有为构件定义 URI 架构,则可能会出现此错误。检查日志中是否有无效的 URI,更新配方中的 URI,然后重试部署。

不支持_ARTIFACT_SCHEME

如果正在运行的 nucleus 版本不支持 URI 架构,则可能会出现此错误。要么是 URI 无效,要么你需要更新 nucleus 版本。如果 URI 无效,请在日志中查看无效的 URI,更新配方中的 URI,然后重试部署。

RECIPE_MISSING_MISSING

如果配方中未包含清单部分,则可能会出现此错误。将清单添加到配方中,然后再次尝试部署。

RECIPE_MISSING_ARTIFACT_HASH_算法

如果在没有哈希算法的配方中指定了非本地构件,则可能会出现此错误。将算法添加到构件中,然后重试请求。

ARTIFACT_CHECKSUM_不匹配

当下载的构件的摘要与配方中指定的摘要不同时,您可能会遇到此错误。确保配方包含正确的摘要,然后再次尝试部署。有关更多信息,请参阅Error: com.aws.greengrass.componentmanager.exceptions.ArtifactChecksumMismatchException: Integrity check for downloaded artifact failed. Probably due to file corruption..

COMPONENT_DEPENDENCY_NOT_VALID

当部署配方中指定的依赖关系类型无效时,您可能会收到此错误。检查食谱,然后重试您的请求。

CONFIG_INTERPOLATE_ERROR

插值配方变量时可能会出现此错误。有关详细信息,请参阅日志。

IO_MAPPING_ERROR

在解析部署文档或配方时出现 I/O 错误时,您可能会遇到此错误。有关详细信息,请查看任何其他错误代码或日志。

Amazon组件错误、用户组件错误、组件错误

当组件出现问题时,将返回以下错误代码。报告的实际错误类型取决于引发错误的特定组件。如果 Greengrass 原子核将该成分识别为由提供的组分Amazon IoT Greengrass,它会返回AWS_COMPONENT_ERROR. 如果该组件被识别为用户组件,Greengrass 核心将返回USER_COMPONENT_ERROR. 如果 Greengrass 原子核分不出来,它就会返回COMPONENT_ERROR.

COMPONENT_UPDATE_ERROR

如果组件在部署期间未更新,则可能会出现此错误。检查任何其他错误代码或查看日志以查看导致错误的原因。

组件_坏了

在部署期间组件损坏时,您可能会遇到此错误。检查组件日志以获取错误详细信息,然后重试部署。

REMOVE_COMPONENT_ERROR

如果在部署期间核心无法移除组件,则可能会出现此错误。检查日志以获取错误详细信息,然后重试部署。

组件_BOOTSTRAP_TIMEOUT

当组件的引导任务花费的时间超过配置的超时时间时,您可能会遇到此错误。延长引导任务的超时时间或缩短执行时间,然后重试部署。

COMPONENT_BOOTSTRAP_ERROR

当组件的引导任务出现错误时,你可能会得到这个错误。查看日志以了解错误详情,然后重试部署。

组件_配置_NOT_VALID

当 nucleus 无法验证组件的已部署配置时,你可能会遇到此错误。查看日志以了解错误详情,然后重试部署。

设备错误

IO_WRITE_ERROR

写入文件时可能会出现此错误。有关详细信息,请参阅日志。

IO_READ_ERROR

读取文件时可能会出现此错误。有关详细信息,请参阅日志。

DISK_SPACE_CR

当磁盘空间不足以完成部署请求时,您可能会遇到此错误。你必须有至少 20 Mb 的可用空间,或者足以容纳更大的神器。请释放一些磁盘空间并重试部署。

IO_FILE_ATTRIBUTE_ERROR

当无法从文件系统中检索现有文件大小时,可能会出现此错误。有关详细信息,请参阅日志。

设置_权限_错误

当无法在下载的构件或构件目录上设置权限时,可能会出现此错误。有关详细信息,请参阅日志。

IO_UNZIP_ERROR

如果无法解压缩工件,则可能会出现此错误。有关详细信息,请参阅日志。

LOCAL_RECIPE_NOT_FOUND

找不到配方文件的本地副本时,你可能会遇到此错误。再次尝试部署。

LOCAL_RECIPE_已损坏

如果配方的本地副本自下载后发生了变化,则可能会出现此错误。删除配方的现有副本,然后再次尝试部署。

LOCAL_RECIPE_METADATA_NOT_FOUND

找不到配方元数据文件的本地副本时,可能会出现此错误。再次尝试部署。

LAUNCH_DIRECTORY_已损坏

当用来启动 Greengrass 核的目录时,你可能会遇到这个错误 (/greengrass/v2/alts/current)自上次启动原子核以来已被修改。重启核心,然后重试部署。

HASHING_ALGORITHM_不可用

当设备的 Java 发行版不支持所需的哈希算法或组件配方中指定的哈希算法无效时,您可能会遇到此错误。

DEVICE_CONFIG_NOT_VALID_FOR_ARTIFACT_下载

当设备配置中存在错误导致部署无法从 Amazon S3 或 Greengrass 云下载构件时,您可能会遇到此错误。检查日志中是否存在特定的配置错误,然后重试部署。

依赖性错误

DOCKER_ERROR

在拉取 Docker 镜像时可能会出现此错误。有关详细信息,请查看任何其他错误代码或日志。

DOCKER_SERVICE_不可用

当 Greengrass 无法登录 Docker 注册表时,你可能会遇到这个错误。检查日志中是否存在特定错误,然后重试部署。

DOCKER_LOGIN_ERROR

登录 Docker 时出现意外错误时,您可能会收到此错误。检查日志中是否存在特定错误,然后重试部署。

DOCKER_PULL_ERROR

当从注册表中提取 Docker 镜像时发生意外错误时,您可能会遇到此错误。检查日志中是否存在特定错误,然后重试部署。

DOCKER_IMAGE_NOT_VALID

当请求的 Docker 镜像不存在时,你可能会得到这个错误。检查日志中是否存在特定错误,然后重试部署。

S3_ERROR

在下载 Amazon S3 工件时,您可能会遇到此错误。有关详细信息,请查看任何其他错误代码或日志。

S3_RESOURCE_NOT_FOUND

当 Amazon S3 操作返回 404 错误时,您可能会收到此错误。有关详细信息,请查看任何其他错误代码或日志。

S3_BAD_REQUEST

当 Amazon S3 操作返回 400 错误时,您可能会收到此错误。检查日志中是否存在特定错误,然后重试请求。

HTTP 错误

HTTP_REQUEST_错误

在发出 HTTP 请求时出现错误时,您可能会收到此错误。检查日志中是否有特定错误。

下载_部署_DOCUMENT_DOCUMENT_错误

下载部署文档时出现 HTTP 错误时,您可能会收到此错误。检查日志中是否存在特定的 HTTP 错误。

GET_GREENGRASS_ARTIFACT_SIZE_错误

在获取公共组件构件的大小时发生 HTTP 错误时,您可能会收到此错误。检查日志中是否存在特定的 HTTP 错误。

下载_GREENGRASS_ARTIFACT_ERROR

在下载公共组件构件时发生 HTTP 错误时,您可能会收到此错误。检查日志中是否存在特定的 HTTP 错误。

网络错误

网络_错误

在部署期间出现连接问题时,您可能会收到此错误。检查设备与 Internet 的连接,然后重试部署。

Nuleus

BAD_REQUEST

当出现以下情况时,你可能会收到这个错误Amazon云操作返回 400 错误。查看日志以查看哪个 API 导致了错误,然后查看 nucleus 软件更新页面,看看问题是否已在更高版本的 nucleus 中得到纠正,或者联系Amazon Web Services Support.

NUCLEUS_VERSION_NOT_FOU

当核心设备找不到活动核的版本时,你可能会遇到这个错误。查看日志以查看导致错误的原因,然后查看 nucleus 软件更新页面,看看问题是否已在更高版本的 nucleus 中得到纠正,或者联系Amazon Web Services Support.

NUCLEUS_RESTART_FAILE

在任何需要重启核的部署过程中,如果核心未重新启动,则可能会出现此错误。查看加载器日志以查看导致错误的原因,然后查看 nucleus 软件更新页面以查看问题是否已在更高版本的 nucleus 中得到纠正,或者联系Amazon Web Services Support.

INSTALLED_COMPONENT_NOT_FOUND

当 nucleus 找不到已安装的组件时,你可能会遇到这个错误。查看日志以查看导致错误的原因,然后查看 nucleus 软件更新页面,看看问题是否已在更高版本的 nucleus 中得到纠正,或者联系Amazon Web Services Support.

DEPLOYMENT_DOCUMENT_NOT_

当设备收到无效的部署文档时,您可能会收到此错误。检查任何其他错误代码或查看日志以查看导致错误的原因。

空_DEPLOYMENT_REQUEST

当设备收到空的部署请求时,您可能会收到此错误。查看日志以查看导致错误的原因,然后查看 nucleus 软件更新页面,看看问题是否已在更高版本的 nucleus 中得到纠正,或者联系Amazon Web Services Support.

部署_DOCUMENT_PARSE_ERROR

当部署请求格式与预期格式不匹配时,您可能会收到此错误。查看日志以查看导致错误的原因,然后查看 nucleus 软件更新页面,看看问题是否已在更高版本的 nucleus 中得到纠正,或者联系Amazon Web Services Support.

组件_METADATA_NOT_VALID_IN_DEPLOYMENT

当部署请求包含无效的组件元数据时,您可能会收到此错误。查看日志以查看导致错误的原因,然后查看 nucleus 软件更新页面,看看问题是否已在更高版本的 nucleus 中得到纠正,或者联系Amazon Web Services Support.

服务器错误

服务器_错误

当出现以下情况时,你可能会收到这个错误Amazon服务操作返回 500 错误,因为该服务现在无法处理请求。请稍后重试部署。

S3_SERVER_ERROR

当 Amazon S3 操作返回 500 错误时,您可能会收到此错误。有关详细信息,请查看任何其他错误代码或日志。

云服务错误

RESOLVE_COMPONENT_CANDITES_BAD_RESPONSE

当 Greengrass 云服务向 Greengrass 云服务发送不兼容的响应时,你可能会得到这个错误ResolveComponentCandidates操作。查看日志以查看导致错误的原因,然后查看 nucleus 软件更新页面,看看问题是否已在更高版本的 nucleus 中得到纠正,或者联系Amazon Web Services Support.

MULTIPLE_NUCLEUS_RESOLVED_错误

当部署尝试部署多个核心组件时,您可能会遇到此错误。查看日志以查看导致错误的原因,然后查看 nucleus 软件更新页面,看看问题是否已在更高版本的 nucleus 中得到纠正,或者联系Amazon Web Services Support.

部署_文档_大小_超过

当请求的部署文档超过最大大小配额时,您可能会遇到此错误。减小部署文档的大小,然后重试部署。

GREENGRASS_ARTIFACT_SIZE_NOT_F

当 Greengrass 无法获得公共组件构件的大小时,你可能会遇到这个错误。查看日志以查看导致错误的原因,然后查看 nucleus 软件更新页面,看看问题是否已在更高版本的 nucleus 中得到纠正,或者联系Amazon Web Services Support.

DEPLOYMENT_DOCUMENT_NOT_

当设备收到无效的部署文档时,您可能会收到此错误。检查任何其他错误代码或查看日志以查看导致错误的原因。

空_DEPLOYMENT_REQUEST

当设备收到空的部署请求时,您可能会收到此错误。查看日志以查看导致错误的原因,然后查看 nucleus 软件更新页面,看看问题是否已在更高版本的 nucleus 中得到纠正,或者联系Amazon Web Services Support.

部署_DOCUMENT_PARSE_ERROR

当部署请求格式与预期格式不匹配时,您可能会收到此错误。查看日志以查看导致错误的原因,然后查看 nucleus 软件更新页面,看看问题是否已在更高版本的 nucleus 中得到纠正,或者联系Amazon Web Services Support.

组件_METADATA_NOT_VALID_IN_DEPLOYMENT

当部署请求包含无效的组件元数据时,您可能会收到此错误。查看日志以查看导致错误的原因,然后查看 nucleus 软件更新页面,看看问题是否已在更高版本的 nucleus 中得到纠正,或者联系Amazon Web Services Support.

通用错误

这些通用错误没有相关的错误类型。

部署_已中断

如果由于核心关闭或其他外部事件而无法完成部署,则可能会出现此错误。有关详细信息,请查看任何其他错误代码或日志。

ARTIFACT_下载_错误

下载构件时出现问题时,您可能会遇到此错误。有关详细信息,请查看任何其他错误代码或日志。

NO_AVAILABLE_COMPONENT_版本

如果云端或本地不存在组件版本,或者存在依赖关系解析冲突,则可能会出现此错误。有关详细信息,请查看任何其他错误代码或日志。

COMPONENT_PACKAGE_LOADING_ERROR

在处理下载的构件时出现错误时,您可能会遇到此错误。有关详细信息,请查看任何其他错误代码或日志。

CLOUD_API_ERROR

当调用时出现错误时,你可能会得到这个错误Amazon服务 API。有关详细信息,请查看任何其他错误代码或日志。

IO_ERROR

在部署期间发生 I/O 错误时,您可能会遇到此错误。有关详细信息,请查看任何其他错误代码或日志。

COMPONENT_UPDATE_ERROR

如果组件在部署期间未更新,则可能会出现此错误。检查任何其他错误代码或查看日志以查看导致错误的原因。

未知错误

部署_失败

当部署失败时,您可能会遇到此错误,因为引发了未经检查的异常。查看日志以查看导致错误的原因,然后查看 nucleus 软件更新页面,看看问题是否已在更高版本的 nucleus 中得到纠正,或者联系Amazon Web Services Support.

部署_类型_NOT_VALID

当部署类型无效时,你可能会收到此错误。查看日志以查看导致错误的原因,然后查看 nucleus 软件更新页面,看看问题是否已在更高版本的 nucleus 中得到纠正,或者联系Amazon Web Services Support.