詳細的部署錯誤代碼 - AWS IoT Greengrass

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

詳細的部署錯誤代碼

使用這些章節中的錯誤代碼和解決方案,以協助解決使用 Greengrass 核心 2.8.0 版或更新版本時的元件部署問題。

Greengrass 核心會將部署錯誤報告為最不特定於可用程式碼的階層。您可以使用此階層來協助找出部署錯誤的原因。例如,以下是一個可能的錯誤層次結構:

  • 部署失敗 (_R)

    • 人工件下載錯誤

      • IO_ 錯誤

        • 磁碟空間關鍵

錯誤代碼被組織為類型。每種類型都代表可能發生的錯誤類別。AWS IoT Greengrass在主控台、API 和中報告這些錯誤類型AWS CLI。根據錯誤階層中報告的錯誤,可能會有多個錯誤類型。對於上述範例,傳回的錯誤類型為DEVICE_ERROR

類型有:

  • 權限錯誤 (_V)— 拒絕存取需要權限的作業。

  • 請求錯誤— 由於部署文件中的問題而發生錯誤。

  • 元件接收錯誤— 由於元件配方中的問題而發生錯誤。

  • AW_ 元件錯誤— 啟動或移除時發生錯誤AWS提供的組件。

  • 使用者元件錯誤— 啟動或移除使用者元件時發生錯誤。

  • 元件錯誤— 啟動或移除元件時發生錯誤,但 Greengrass 核無法判斷元件是否為AWS提供的組件或用戶組件。

  • 設備錯誤— 本機 I/O 發生錯誤或發生其他裝置錯誤。

  • 依賴錯誤— 部署無法從 Amazon S3 下載成品或從 ECR 登錄提取映像。

  • 錯誤— HTTP 要求發生錯誤。

  • 網路錯誤— 裝置網路發生錯誤。

  • 核錯誤— Greengrass 核無法找到組件或找不到活性細胞核版本.

  • 伺服器錯誤— 伺服器回應要求時傳回 500 錯誤。

  • 雲服務錯誤— 發生錯誤AWS IoT Greengrass雲端服務。

  • 未知錯誤— 元件擲回未核取的例外狀況。

本節中的許多錯誤報告了AWS IoT Greengrass核心記錄檔。這些記錄會儲存在核心裝置的本機檔案系統上。有日誌AWS IoT Greengrass核心核心軟件和每個單獨的組件。如需存取記錄檔的資訊,請參閱存取檔案系統記錄

許可錯誤

存取 (_拒絕)

你可能會得到這個錯誤AWS服務作業會傳回 403 錯誤,因為權限設定不正確。檢查更具體的錯誤代碼以獲取詳細信息。

獲取部署 _ 配置 _ 訪問 _ 拒絕

你可能會得到這個錯誤AWS IoT原則不允許呼叫GetDeploymentConfiguration操作。添加greengrass::GetDeploymentConfiguration核心裝置原則的權限。

獲取組件版本文件訪問被拒絕

核心設備時,您可能會收到此錯誤AWS IoT政策不允許greengrass:GetComponentVersionArtifact權限。將權限新增至核心裝置的原則。

解析組件候選人訪問被拒絕

核心設備時,您可能會收到此錯誤AWS IoT政策不允許greengrass:ResolveComponentCandidates權限。將權限新增至核心裝置的原則。

獲取 _ 電腦認證錯誤

當部署無法使用 ECR 中的私人登錄進行驗證時,您可能會收到此錯誤。檢查記錄檔是否有特定錯誤,然後再次嘗試部署。

用戶不授權用戶泊塢窗

當 Greengrass 使用者未獲授權使用 Docker 時,您可能會收到此錯誤。請確定您以 root 身分執行 Greengrass,或是將使用者新增至docker群組。然後再次嘗試部署。

拒絕訪問

當 Amazon S3 作業傳回 403 錯誤時,您可能會收到此錯誤。檢查任何其他錯誤代碼或日誌以獲取詳細信息。

S3_HEAD_對象存取_拒絕

當設備的令牌交換角色不允許AWS IoT Greengrass核心軟體,可從您在元件方案中指定的 S3 物件 URL 下載元件成品,或無法使用元件成品。檢查令牌交換角色是否允許s3:GetObject適用於成品可用且存在成品的 S3 物件 URL。

S3_GET_BUCKET_ 位置 _ 訪問被拒絕

當設備的令牌交換角色不允許s3:GetBucketLocation可取得成品之 Amazon S3 儲存貯體的許可。檢查設備是否允許該權限,然後再次嘗試部署。

S3_GET_ 對象 _ 訪問被拒絕

當設備的令牌交換角色不允許AWS IoT Greengrass核心軟體,可從您在元件方案中指定的 S3 物件 URL 下載元件成品,或無法使用元件成品。檢查令牌交換角色是否允許s3:GetObject適用於成品可用且存在成品的 S3 物件 URL。

請求錯誤

核缺少 _ 所需的能力

當部署中的核心版本無法執行要求的作業 (例如下載大型設定或設定 Linux 資源限制) 時,您可能會收到此錯誤。使用支援此作業的核心版本重試部署。

多重核 _ 解析錯誤 _

當部署嘗試部署多個核心元件時,您可能會收到此錯誤。檢查記錄檔以瞭解造成錯誤的原因,然後檢查核心軟體更新頁面,以查看問題是否已在較新版本的核心中修正,或是聯絡AWS Support。

元件循環相依性錯誤

當部署中的兩個元件彼此相依時,您可能會收到此錯誤。修訂元件設定,讓部署中的元件彼此不相依。

未授權的核心最小版本更新

當部署中的元件需要核心次要版本更新,但部署中未指定該版本時,您可能會收到此錯誤。這有助於減少依賴於不同版本的元件的意外次要版本更新。在部署中包含新的次要核心版本。

遺失碼頭 _ 應用程式管理員

當您部署 Docker 元件而不部署 Docker 應用程式管理員時,可能會收到此錯誤。請確定您的部署包含 Docker 應用程式管理員。

缺少令牌 _ 交換 _ 服務

當部署想要從私有 ECR 登錄下載 Docker 映像成品而不部署 Token 交換服務時,您可能會收到此錯誤。確保您的部署包括令牌交換服務。

元件版本需求不符合

當發生版本條件約束衝突或元件版本不存在時,您可能會收到此錯誤。如需詳細資訊,請參閱Error: com.aws.greengrass.componentmanager.exceptions.NoAvailableComponentVersionException: Failed to negotiate component <name> version with cloud and no local applicable version satisfying requirement <requirements>

節流錯誤

你可能會得到這個錯誤AWS服務操作超過費率配額。重新嘗試部署。

衝突 (_R) 請求

你可能會得到這個錯誤AWS服務作業會傳回 409 錯誤,因為您的部署嘗試一次執行多項作業。重新嘗試部署。

未找到資源

你可能會得到這個錯誤AWS服務作業會傳回 404 錯誤,因為找不到資源。檢查記錄檔中是否有遺失的資源。

配置沒有有效

你可能會得到這個錯誤posixUser,posixGroup,或windowsUser指定執行元件的資訊無效。檢查使用者是否有效,然後重試部署。

不支援的區域 (_I)

當針對部署指定的區域不受支援時,您可能會收到此錯誤AWS IoT Greengrass。檢查「區域」,然後再次嘗試部署。

物聯網信用 _ 端點 _ 不有效

你可能會得到這個錯誤AWS IoT設定中指定的認證端點無效。請檢查端點,然後再試一次您的要求。

物聯網資料終點不有效

你可能會得到這個錯誤AWS IoT組態中指定的資料端點無效。請檢查端點,然後再試一次您的要求。

S3_头对象 _ 资源 _ 找不到

當元件成品在元件方案中指定的 S3 物件 URL 中無法使用時,您可能會收到此錯誤。檢查您已將成品上傳到 S3 儲存貯體,以及成品 URI 是否與儲存貯體中成品的 S3 物件 URL 相符。

S3_GET 儲存區位置 _ 資源 _ 找不到

找不到 Amazon S3 儲存貯體時,您可能會收到此錯誤。檢查值區是否存在,然後再次嘗試部署。

沒有找到 S3_ 獲取對象資源

當元件成品在元件方案中指定的 S3 物件 URL 中無法使用時,您可能會收到此錯誤。檢查您已將成品上傳到 S3 儲存貯體,以及成品 URI 是否與儲存貯體中成品的 S3 物件 URL 相符。

IO 映射錯誤

剖析部署文件或方案時發生 I/O 錯誤時,您可能會收到這個錯誤。檢查任何其他錯誤代碼或日誌以獲取詳細信息。

元件配方錯誤

接收剖析錯誤

無法剖析部署方案時,您可能會收到這個錯誤,因為方案的結構有錯誤。檢查方案格式是否正確,然後再次嘗試部署。

偏好元數據 _ 剖析錯誤

無法剖析從雲端下載的部署配方中繼資料時,您可能會收到此錯誤。請聯絡 AWS Support。

人工件無效 _ 無效

當配方中的成品 URI 格式不正確時,您可能會收到此錯誤。檢查記錄檔中是否有無效的 URI,更新方案中的 URI,然後再次嘗試部署。

S3_ 人工件 _ 不是有效的

當配方中的成品的 Amazon S3 URI 無效時,您可能會收到此錯誤。檢查記錄檔中是否有無效的 URI,更新方案中的 URI,然後再次嘗試部署。

碼頭工件沒有有效

當配方中的工件的 Docker URI 無效時,您可能會收到此錯誤。檢查記錄檔中是否有無效的 URI,更新方案中的 URI,然後再次嘗試部署。

空白人工件

當方案中未指定成品的 URI 時,您可能會收到此錯誤。檢查日誌中缺少 URI 的成品,更新方案中的 URI,然後再次嘗試部署。

空人工件方案

當未針對成品定義 URI 配置時,您可能會收到此錯誤。檢查記錄檔中是否有無效的 URI,更新方案中的 URI,然後再次嘗試部署。

不支援的人工件方案

當正在執行的核心版本不支援 URI 配置時,您可能會收到此錯誤。URI 無效,或者您需要更新核子核版本。如果 URI 無效,請檢查記錄檔中無效的 URI,更新方案中的 URI,然後再次嘗試部署。

接收遺失資訊清單

當清單部分未包含在配方中時,您可能會收到此錯誤。將資訊清單新增至方案,然後再次嘗試部署。

接收遺失 _ 人工雜湊演算法

如果在沒有雜湊演算法的配方內指定不是本機的成品,您可能會收到這個錯誤。將演算法新增至成品,然後再次嘗試要求。

人工因素 _ 檢查和不相符

當下載的成品摘要與方案中指定的摘要不同時,您可能會收到此錯誤。請確定方案包含正確的摘要,然後再次嘗試部署。如需詳細資訊,請參閱 Error: com.aws.greengrass.componentmanager.exceptions.ArtifactChecksumMismatchException: Integrity check for downloaded artifact failed. Probably due to file corruption.

組件依賴關係無效

當部署方案中指定的相依性類型無效時,您可能會收到這個錯誤。請檢查食譜,然後再試一次。

配置插值錯誤

插值 recipe 變數時,您可能會看到這個錯誤。檢查日誌以獲取詳細信息。

IO 映射錯誤

剖析部署文件或方案時發生 I/O 錯誤時,您可能會收到這個錯誤。檢查任何其他錯誤代碼或日誌以獲取詳細信息。

AWS元件錯誤、使用者元件錯誤、元件錯誤

當元件發生問題時,會傳回下列錯誤碼。報告的實際錯誤類型取決於引發錯誤的特定組件。如果 Greengrass 核標識該組件作為一個提供AWS IoT Greengrass,它返回AWS_COMPONENT_ERROR。如果該組件被標識為一個用戶組件,Greengrass 核返回USER_COMPONENT_ERROR。如果格林格拉斯核無法分辨,它返回COMPONENT_ERROR

組件更新錯誤

當元件在部署期間未更新時,您可能會收到此錯誤。檢查任何其他錯誤代碼或檢查日誌以查看導致錯誤的原因。

元件已損壞

當元件在部署期間中斷時,您可能會收到此錯誤。檢查元件記錄檔以取得錯誤詳細資料,然後再次嘗試部署。

移除元件錯誤

當核心無法在部署期間移除元件時,您可能會收到此錯誤。請檢查記錄檔中的錯誤詳細資料,然後再次嘗試部署。

組件引導程序超時

當元件的啟動程序工作花費的時間超過設定的逾時時間時,您可能會收到此錯誤。增加逾時或減少啟動程序工作的執行時間,然後再次嘗試部署。

組件引導程序錯誤

當元件的啟動程序工作發生錯誤時,您可能會收到此錯誤。檢查記錄檔以取得錯誤詳細資料,然後再次嘗試部署。

零組件組態無效

當核心無法驗證元件的已部署組態時,您可能會收到此錯誤。檢查記錄檔以取得錯誤詳細資料,然後再次嘗試部署。

裝置錯誤

IO_ 寫入錯誤

寫入檔案時可能會出現此錯誤。檢查日誌以獲取詳細信息。

讀取錯誤

從檔案讀取時,您可能會收到此錯誤。檢查日誌以獲取詳細信息。

磁碟空間關鍵

當沒有足夠的磁碟空間無法完成部署要求時,您可能會收到這個錯誤。您必須至少有 20 Mb 的可用空間,或足以容納較大的成品。請釋放一些磁碟空間,然後重試部署。

IO_ 文件屬性錯誤

當無法從檔案系統擷取現有檔案大小時,您可能會收到此錯誤。檢查日誌以獲取詳細信息。

設置權限錯誤

當無法在下載的成品或成品目錄上設定權限時,您可能會收到此錯誤。檢查日誌以獲取詳細信息。

解壓縮錯誤

無法解壓縮成品時,您可能會收到此錯誤。檢查日誌以獲取詳細信息。

本地接收 _ 找不到

當找不到 recipe 檔案的本機副本時,您可能會收到此錯誤。請再次嘗試部署。

本地 (_R) 已損毀

當食譜的本地副本自下載以來發生變化時,您可能會收到此錯誤。刪除方案的現有副本,然後再次嘗試部署。

找不到本地信息中繼資料

找不到 recipe 中繼資料檔案的本機副本時,您可能會收到此錯誤訊息。請再次嘗試部署。

啟動目錄已損壞

當用於啟動 Greengrass 核的目錄時,您可能會遇到此錯誤(/greengrass/v2/alts/current) 自上次啟動原子核以來已被修改。重新啟動核心,然後重試部署。

哈希演算法不可用

當設備的 Java 發行版不支持所需的哈希算法或組件配方中指定的哈希算法無效時,您可能會遇到此錯誤。

設備配置沒有可用的文件下載

當裝置組態中出現錯誤,導致部署無法從 Amazon S3 或 Greengrass 雲端下載成品時,您可能會收到此錯誤。檢查記錄檔是否有特定組態錯誤,然後重試部署。

相依性錯誤

碼頭錯誤

在提取 Docker 圖像時,您可能會遇到此錯誤。檢查任何其他錯誤代碼或日誌以獲取詳細信息。

碼頭服務 _ 不可用

當 Greengrass 無法登錄到 Docker 註冊表時,您可能會收到此錯誤。檢查記錄檔是否有特定錯誤,然後再次嘗試部署。

碼頭登錄錯誤

登入 Docker 時發生未預期的錯誤時,您可能會收到此錯誤。檢查記錄檔是否有特定錯誤,然後再次嘗試部署。

碼頭拉錯誤

當從註冊表中提取 Docker 映像時發生意外錯誤時,您可能會收到此錯誤。檢查記錄檔是否有特定錯誤,然後再次嘗試部署。

碼頭圖像無效

當請求的 Docker 映像不存在時,您可能會收到此錯誤。檢查記錄檔是否有特定錯誤,然後再次嘗試部署。

碼頭圖像查詢錯誤

當查詢 Docker 尋找可用映像檔時,發生未預期的失敗時,您可能會收到此錯誤。檢查記錄檔中是否有特定錯誤,然後再次嘗試部署。

錯誤

下載 Amazon S3 成品時,您可能會收到此錯誤訊息。檢查任何其他錯誤代碼或日誌以獲取詳細信息。

沒有找到 S3 資源

當 Amazon S3 作業傳回 404 錯誤時,您可能會收到此錯誤。檢查任何其他錯誤代碼或日誌以獲取詳細信息。

請求

當 Amazon S3 作業傳回 400 錯誤時,您可能會收到這個錯誤。檢查記錄檔是否有特定錯誤,然後再試一次要求。

錯誤

請求錯誤

發出 HTTP 請求時發生錯誤時,您可能會收到此錯誤。檢查日誌中的特定錯誤。

下載 _ 部署 _ 文件 _ 錯誤

下載部署文件時發生 HTTP 錯誤時,您可能會收到這個錯誤。檢查日誌中是否有特定的 HTTP 錯誤。

獲取 _ 格蘭文件 _ 大小 _ 錯誤

當取得公用元件加工品的大小時,發生 HTTP 錯誤時,您可能會收到這個錯誤。檢查日誌中是否有特定的 HTTP 錯誤。

下載 _ 格蘭文件 _ 錯誤

下載公用元件加工品時,發生 HTTP 錯誤時,您可能會收到這個錯誤。檢查日誌中是否有特定的 HTTP 錯誤。

網路錯誤

網路錯誤

部署期間發生連線問題時,您可能會收到此錯誤。檢查裝置與網際網路的連線,然後再次嘗試部署。

核誤差

壞請求

你可能會得到這個錯誤AWS雲操作返回一個 400 錯誤。檢查日誌以查看哪個 API 導致錯誤,然後檢查核心軟件更新頁面,以查看問題是否已在較新版本的核心中更正,或聯繫AWS Support。

核心版本 _ 未找到

當核心設備找不到活動核心的版本時,您可能會收到此錯誤。檢查記錄檔以瞭解造成錯誤的原因,然後檢查核心軟體更新頁面,以查看問題是否已在較新版本的核心中修正,或是聯絡AWS Support。

核重新啟動失敗

在任何需要核心重新啟動的部署期間,如果核心未重新啟動,則可能會收到此錯誤。檢查載入程式記錄檔以瞭解造成錯誤的原因,然後檢查核心軟體更新頁面,看看問題是否已在較新版本的核心中得到修正,或是聯絡AWS Support。

未找到已安裝元件

當核心找不到已安裝的元件時,您可能會收到此錯誤。檢查記錄檔以瞭解造成錯誤的原因,然後檢查核心軟體更新頁面,以查看問題是否已在較新版本的核心中修正,或是聯絡AWS Support。

部署 _ 文件 _ 無效

當設備收到無效的部署文檔時,您可能會收到此錯誤。檢查任何其他錯誤代碼或檢查日誌以查看導致錯誤的原因。

空白部署請求

當設備收到空的部署請求時,您可能會收到此錯誤。檢查記錄檔以瞭解造成錯誤的原因,然後檢查核心軟體更新頁面,以查看問題是否已在較新版本的核心中修正,或是聯絡AWS Support。

部署 _ 文件 _ 剖析錯誤

當部署要求格式不符合預期的格式時,您可能會收到這個錯誤。檢查記錄檔以瞭解造成錯誤的原因,然後檢查核心軟體更新頁面,以查看問題是否已在較新版本的核心中修正,或是聯絡AWS Support。

部署元件中繼資料不是有效的

當部署要求包含無效的元件中繼資料時,您可能會收到這個錯誤。檢查記錄檔以瞭解造成錯誤的原因,然後檢查核心軟體更新頁面,以查看問題是否已在較新版本的核心中修正,或是聯絡AWS Support。

啟動目錄已損壞

當您將 Greengrass 裝置從一個物件群組移至另一個物件群組,然後回到具有需要 Greengrass 重新啟動部署的原始群組時,可能會收到此錯誤。若要解決此錯誤,請在裝置上重新建立 Greengrass 的啟動目錄。

如需詳細資訊,請參閱Error: com.aws.greengrass.deployment.exceptions.DeploymentException: Unable to process deployment. Greengrass launch directory is not set up or Greengrass is not set up as a system service

伺服器錯誤

伺服器錯誤

你可能會得到這個錯誤AWS服務作業會傳回 500 錯誤,因為服務目前無法處理要求。稍後重試部署。

S3_ 伺服器錯誤

當 Amazon S3 作業傳回 500 錯誤時,您可能會收到這個錯誤。檢查任何其他錯誤代碼或日誌以獲取詳細信息。

雲端服務錯誤

解析組件候選人問題

當 Greengrass 雲端服務傳送不相容的回應給ResolveComponentCandidates操作。檢查記錄檔以瞭解造成錯誤的原因,然後檢查核心軟體更新頁面,以查看問題是否已在較新版本的核心中修正,或是聯絡AWS Support。

超過部署 _ 文件大小 _

當要求的部署文件超過大小配額上限時,您可能會收到這個錯誤。減少部署文件的大小,然後再次嘗試部署。

找不到大小 _ 文件 _ 大小 _

當 Greengrass 無法獲取公共組件成品的大小時,您可能會收到此錯誤。檢查記錄檔以瞭解造成錯誤的原因,然後檢查核心軟體更新頁面,以查看問題是否已在較新版本的核心中修正,或是聯絡AWS Support。

部署 _ 文件 _ 無效

當設備收到無效的部署文檔時,您可能會收到此錯誤。檢查任何其他錯誤代碼或檢查日誌以查看導致錯誤的原因。

空白部署請求

當設備收到空的部署請求時,您可能會收到此錯誤。檢查記錄檔以瞭解造成錯誤的原因,然後檢查核心軟體更新頁面,以查看問題是否已在較新版本的核心中修正,或是聯絡AWS Support。

部署 _ 文件 _ 剖析錯誤

當部署要求格式不符合預期的格式時,您可能會收到這個錯誤。檢查記錄檔以瞭解造成錯誤的原因,然後檢查核心軟體更新頁面,以查看問題是否已在較新版本的核心中修正,或是聯絡AWS Support。

部署元件中繼資料不是有效的

當部署要求包含無效的元件中繼資料時,您可能會收到這個錯誤。檢查記錄檔以瞭解造成錯誤的原因,然後檢查核心軟體更新頁面,以查看問題是否已在較新版本的核心中修正,或是聯絡AWS Support。

一般錯誤

這些一般錯誤沒有關聯的錯誤類型。

部署中斷 (_C)

因為核心關閉或其他外部事件而無法完成部署時,您可能會收到這個錯誤。檢查任何其他錯誤代碼或日誌以獲取詳細信息。

人工件下載錯誤

下載成品時發生問題時,您可能會收到此錯誤。檢查任何其他錯誤代碼或日誌以獲取詳細信息。

沒有可用的元件版本 (_R)

當元件版本不存在於雲端或本機時,或者發生相依性解決衝突時,您可能會收到這個錯誤。檢查任何其他錯誤代碼或日誌以獲取詳細信息。

元件封裝載入錯誤

當處理下載的成品時發生錯誤,您可能會收到此錯誤。檢查任何其他錯誤代碼或日誌以獲取詳細信息。

雲錯誤

當發生錯誤調用時,您可能會收到此錯誤AWS服務 API。檢查任何其他錯誤代碼或日誌以獲取詳細信息。

IO_ 錯誤

部署期間發生 I/O 錯誤時,您可能會收到此錯誤。檢查任何其他錯誤代碼或日誌以獲取詳細信息。

組件更新錯誤

當元件在部署期間未更新時,您可能會收到此錯誤。檢查任何其他錯誤代碼或檢查日誌以查看導致錯誤的原因。

未知的錯誤

部署失敗 (_R)

當部署失敗時,您可能會收到這個錯誤,因為未經核取的例外狀況擲回。檢查記錄檔以瞭解造成錯誤的原因,然後檢查核心軟體更新頁面,以查看問題是否已在較新版本的核心中修正,或是聯絡AWS Support。

部署 _ 類型 _ 無效

當部署類型無效時,您可能會收到此錯誤。檢查記錄檔以瞭解造成錯誤的原因,然後檢查核心軟體更新頁面,以查看問題是否已在較新版本的核心中修正,或是聯絡AWS Support。