當我使用快速設定 (AWS Systems Manager 的一項功能) 修補 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體時,發生錯誤。
簡短說明
當您使用「快速設定」建立修補政策來更新 Amazon EC2 執行個體時,您可能會收到下列錯誤訊息之一。
Linux 執行個體:
「無法從 S3 下載檔案:s3://aws-quicksetup-patchpolicy-5433xxxxx141-xxxxx/baseline_overrides.json。
botocore.exceptions.ClientError: 呼叫 HeadObject 作業時發生錯誤 (403): 禁止
執行個體上找不到 IMDS 憑證。無法執行命令:結束狀態 156」
Windows 執行個體,在修補任務的錯誤區段中:
「Invoke-PatchBaselineOperation: 使用者:arn:aws:sts::5433xxxxx141:assumed-role/<IAM-Role>/i-xxxxxxxxxxxxxxxxxx 無權對資源:
"arn:aws:s3:::aws-quicksetup-patchpolicy-5433xxxxx141-xxxxx/baseline_overrides.json" 執行:s3:GetObjec,並在資源型政策中明確拒絕」
當 Amazon EC2 執行個體因權限問題而無法從檔案下載基準覆寫時,就會出現此問題。當您在 AWS Systems Manager 中建立修補政策時,「快速設定」會自動建立 Amazon Simple Storage Service (Amazon S3) 儲存貯體。「快速設定」也會在儲存貯體內產生修補基準檔案,例如 aws-quicksetup-patchpolicy-123456789012-abcde。
Systems Manager 會使用該檔案來決定要套用哪些修補程式,以及如何管理跨 EC2 執行個體的修補作業。
解決方法
確認存取 S3 儲存貯體的權限
若要套用修補政策任務,您必須在執行個體上新增存取 Amazon S3 儲存貯體所需的權限。
若要提供權限,請執行下列其中一項動作:
查看 QuickSetup 在您的執行個體上套用的關聯
確認您在執行個體上套用了正確的關聯。
在 AWS Systems Manager 主控台上,檢查您是否套用了下列 State Manager (Systems Manager 的功能) 關聯:
- 對於 Amazon EC2 執行個體: AWS-QuickSetup-PatchPolicy-AttachIAMToEc2Instance-[quick-setup-configuration-id]
- 對於混合執行個體: AWS-QuickSetup-PatchPolicy-AttachIAMToHybridInstance-[quick-setup-configuration-id]
請完成下列步驟:
- 開啟 Systems Manager 主控台。
- 在導覽窗格中,選擇 State Manager。
- 在 State Manager 頁面上,選擇您的關聯。
- 在 Association details (關聯詳細資訊) 頁面的 Execution history (執行歷史記錄) 下,選擇最近的執行 ID。
- 檢查關聯執行目標,以確認關聯是否在執行個體上執行。如果關聯執行未執行,則必須使用立即套用關聯功能手動將關聯套用至執行個體。
- 若要重試修補政策執行,請執行 AWS-QuickSetup-PatchPolicy-ScanForPatches-[quick-setup-configuration-id] State Manager 關聯。如果執行不成功,請查看輸出以確定失敗的原因。然後,對 Patch Manager 進行疑難排解。
相關資訊
問題: 「Invoke-PatchBaselineOperation: baseline_overrides.json 出現「拒絕存取」錯誤或「無法從 S3 下載檔案」錯誤
建立修補原則