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 控制容器中執行。確認執行個體描述檔包含 AmazonSSMManagedInstanceCoreAmazonEC2ContainerRegistryReadOnly受管政策。

無客服人員報告

不適用

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

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

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

  3. 驗證設定:apiclient get settings.host-containers.amazon-guardduty-agent。確認 enabledtrue,而 superpoweredtrue

  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 v1.62.1或 ECS-3 最佳化 AMI 或更新版本。

ECR 映像提取失敗

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

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

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

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