View a markdown version of this page

ECS-EC2 Bottlerocket 的執行期涵蓋範圍和疑難排解 - Amazon GuardDuty

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

ECS-EC2 Bottlerocket 的執行期涵蓋範圍和疑難排解

對於 Amazon ECS 叢集中的 Bottlerocket Amazon EC2 執行個體,GuardDuty 會在執行個體層級評估執行時間涵蓋範圍。GuardDuty 安全代理程式會以 Bottlerocket 上的主機容器執行,而非安裝的 RPM 或 Debian 套件。

Bottlerocket Amazon EC2 執行個體會出現在 EC2 執行個體執行期涵蓋範圍索引標籤下。若要檢閱 Bottlerocket 執行個體的涵蓋範圍統計資料,請開啟 GuardDuty 主控台,在導覽窗格中選擇執行期監控,然後選擇執行期涵蓋範圍索引標籤。在 EC2 執行個體執行期涵蓋範圍內,您可以檢視每個執行個體的涵蓋範圍狀態,並根據帳戶 ID、代理程式版本或涵蓋範圍狀態進行篩選。如需詳細資訊,請參閱檢閱涵蓋範圍統計資料。

對 Bottlerocket ECS-EC2 執行期涵蓋範圍問題進行故障診斷

如果 Bottlerocket Amazon EC2 執行個體的涵蓋範圍狀態為狀況不良,您可以在問題欄下檢視原因。

下表列出問題類型和對應的故障診斷步驟。

問題類型 問題訊息 疑難排解步驟

無客服人員報告

等待 SSM 通知

接收 SSM 通知可能需要幾分鐘的時間。

請確定您的 Bottlerocket 執行個體受 SSM 管理。根據預設,SSM 代理程式會在 Bottlerocket 控制容器中執行。確認執行個體描述檔包含 AmazonSSMManagedInstanceCore和 AmazonEC2ContainerRegistryReadOnly受管政策。

無客服人員報告

不適用

確認代理程式主機容器已啟用並正在執行:

  1. 使用 SSM Session Manager 連線至您的執行個體。

  2. 輸入管理員容器:enter-admin-container。

  3. 驗證設定:apiclient get settings.host-containers.amazon-guardduty-agent。確認 enabled是 true,而 superpowered是 true。

  4. 檢查代理程式程序是否正在執行:sheltie ps aux | grep guardduty。

  5. 使用下列其中一項檢查客服人員日誌:

    • sheltie journalctl -u host-containers@amazon-guardduty-agent

    • 從庇護所工作階段 (sudo sheltie):ls /var/log/amzn-guardduty-agent/。

無客服人員報告

不適用

驗證執行個體是否具有 Amazon ECR 端點和 GuardDuty VPC 端點的網路連線能力。如果您的執行個體在私有子網路中執行,請確定您已為 Amazon ECR 和 GuardDuty 設定 VPC 端點。

無客服人員報告

不適用

如果您的組織有服務控制政策 (SCP),請確認許可界限允許 guardduty:SendSecurityTelemetry許可。

SSM 關聯建立失敗

GuardDuty SSM 關聯已存在於您的帳戶中。

  1. 手動刪除現有的關聯。如需詳細資訊,請參閱AWS Systems Manager 《 使用者指南》中的刪除關聯。

  2. 刪除關聯後,請停用並重新啟用 Amazon EC2 的 GuardDuty 自動代理程式組態。

SSM 關聯建立失敗

您的帳戶有太多 SSM 關聯。

選擇下列兩個選項之一:

  • 刪除任何未使用的 SSM 關聯。如需詳細資訊,請參閱AWS Systems Manager 《 使用者指南》中的刪除關聯。

  • 檢查您的帳戶是否符合提高配額的資格。如需詳細資訊,請參閱《》中的 Systems Manager Service 配額AWS 一般參考。

SSM 關聯更新失敗

GuardDuty SSM 關聯不存在於您的帳戶中。

您的帳戶中不存在 GuardDuty SSM 關聯。停用再重新啟用執行期監控。

SSM 關聯刪除失敗

GuardDuty SSM 關聯不存在於您的帳戶中。

您的帳戶中不存在 SSM 關聯。如果刻意刪除 SSM 關聯,則不需要採取任何動作。

SSM 執行個體關聯執行失敗

不符合架構需求或其他先決條件。

如需已驗證需求的相關資訊,請參閱 ECS-EC2 Bottlerocket 支援的先決條件。

如果您仍然遇到此問題,請檢查 SSM State Manager 執行歷史記錄:

  1. 在 https://https://console.aws.amazon.com/systems-manager/ 開啟 AWS Systems Manager 主控台。

  2. 在導覽窗格中的節點管理下,選取狀態管理員。

  3. 依文件名稱屬性篩選,然後輸入 AmazonGuardDuty-ConfigureRuntimeMonitoringSsmPlugin。

  4. 選取對應的關聯 ID 並檢視其執行歷史記錄。

  5. 使用執行歷史記錄,檢視失敗、識別潛在的根本原因,並嘗試解決它。

客服人員中斷連線

不適用

  • 從管理員容器檢查客服人員日誌:

    enter-admin-container sheltie journalctl -u host-containers@amazon-guardduty-agent
  • 檢查主機容器設定中的 source 欄位是否指向有效的 Amazon ECR URI,以確認已成功提取代理程式容器映像。

  • 確定執行個體描述檔具有 Amazon ECR 提取許可。如需詳細資訊,請參閱讓 EC2 執行個體 SSM 受管並設定執行個體許可。

未佈建代理程式

具有排除標籤的執行個體會從執行期監控中排除。

GuardDuty 不會從使用排除標籤 GuardDutyManaged: 啟動的 Amazon EC2 執行個體接收執行期事件false。

若要從此執行個體接收執行期事件,請移除排除標籤。

未佈建代理程式

核心版本低於支援的版本。

針對自動化代理程式組態,更新至最新的 Bottlerocket ECS-2 或 ECS-3 最佳化 AMI v1.62.1或更新版本。

ECR 映像提取失敗

無法從 Amazon ECR 提取代理程式容器映像。

  • 驗證執行個體描述檔包含AmazonEC2ContainerRegistryReadOnly受管政策或所需的個別 Amazon ECR 許可。

  • 確認您區域中 Amazon ECR 端點的網路連線。

  • 如果使用私有子網路,請確定已設定 VPC 端點。如需詳細資訊,請參閱網路連線需求。