容器內部Action Trail功能可以方便您審計組織內成員或應用程式進入容器後執行的命令操作。本文介紹如何使用容器內部Action Trail功能,以及如何通過Log Service收集分析審計日誌,並根據需求為審計日誌設定自訂的警示規則。
計費說明
容器內部Action Trail功能可以免費使用。開通容器內部Action Trail功能後,使用Log ServiceSLS的相關功能,會產生相關費用。Log Service相關計費資訊,請參見計費概述。
使用限制
叢集類型:僅支援ACK託管叢集Pro版、ACK託管叢集基礎版、ACK專有叢集。
叢集版本及作業系統限制:僅支援核心版本大於4.19的Alibaba Cloud Linux、Ubuntu、ContainerOS作業系統。
Alibaba Cloud Linux:叢集版本為1.18及以上。
ContainerOS:叢集版本為1.24及以上。
Ubuntu:
叢集版本為1.30及以上。如需升級叢集,請參見手動升級叢集。
節點初始化時,會關閉作業系統自動升級。
目前不支援CPFS儲存卷、鏡像加速外掛程式、安全強化等功能。
步驟一:啟用容器內部Action Trail功能
若您需要使用容器內部Action Trail功能,請提交工單申請。
您可以通過以下步驟開啟容器內部Action Trail功能。啟用此功能後,將安裝以下兩個組件。
日誌採集組件:將審計日誌收集到Log Service並建立預設的審計報表。
ack-advanced-audit組件:實現容器內Action Trail。
預設將在日誌採集組件使用的日誌Project中建立一個名為advaudit-${cluster_id}的日誌庫,用於儲存審計日誌。該日誌庫資料的儲存時間為180天。如需修改日誌儲存時間,請參見管理Logstore。
登入Container Service管理主控台,在左側導覽列選擇叢集列表。
在叢集列表頁面,單擊目的地組群名稱,然後在左側導覽列,選擇。
在審計頁面單擊容器審計頁簽,然後單擊開始安裝。
步驟二:查看審計報表
在審計頁面單擊容器審計頁簽,然後單擊容器內審計概覽頁簽,查看審計報表內容。
查看進入Pod容器的次數以及相關Pod資訊。

執行操作的Kubernetes操作帳號資訊、進入容器後執行的命令列表以及常見的高危列表。



步驟三:查看詳細日誌記錄
您可以通過以下兩種方式查看詳細的日誌記錄。
在審計報表頁面查看:適用於查看最近的單個事件的日誌記錄。
在日誌庫頁面通過查詢語句查看:適用於複雜情境,查看更多的歷史資訊以及歷史事件。
在審計報表頁面查看
在容器內審計概覽報表頁面,通過單擊風險程式巨集指令清單地區的traceId和eventId表格列的連結,查看對應審計日誌的詳細資料。
單擊traceId表格列的連結,可以查看單次進入容器後執行的所有操作命令的審計日誌。
單擊eventId表格列的連結,可以查看執行的單個命令的詳細資料。
在日誌庫頁面通過查詢語句查看
在容器內審計日誌查詢頁面,通過查詢語句查看詳細的審計日誌記錄。
登入Container Service管理主控台,在左側導覽列選擇叢集列表。
在叢集列表頁面,單擊目的地組群名稱,然後在左側導覽列,選擇。
在審計頁面單擊容器審計頁簽,然後單擊容器內審計日誌查詢頁簽。
在輸入框中輸入查詢和分析語句。
查詢進入某個Pod的容器後執行的命令Action Trail日誌:輸入* and k8s.pod.namespace: <namespace> and k8s.pod.name: <pod_name>,將<namespace>替換為Pod所在的命名空間,<pod_name>替換為Pod的名稱。
查詢執行指定程式的Action Trail日誌:輸入* and process.name: <name>,將<name>替換為待尋找的程式名稱。
更多查詢統計方式,請參見Log Service查詢分析方法。
設定查詢分析的時間範圍,然後單擊查詢/分析,查看分析結果。
(可選)步驟四:配置Action Trail警示
通過Log Service的警示功能,您可以配置容器內部Action Trail的即時警示,便於監控容器內關鍵的操作事件。警示方式支援DingTalk機器人、自訂Webhook和通知中樞。更多警示配置方式,請參見警示。
關閉容器內部Action Trail功能
您可以通過卸載ack-advanced-audit組件關閉容器內部Action Trail功能。
關閉容器內部Action Trail功能,不會刪除自動建立的advaudit-${cluster_id}日誌庫,您需要登入Log Service控制台手動刪除該日誌庫,請參見刪除Logstore。
登入Container Service管理主控台,在左側導覽列選擇叢集列表。
在叢集列表頁面,單擊目的地組群名稱,然後在左側導覽列,單擊組件管理。
在組件管理頁面,搜尋ack-advanced-audit組件,單擊組件右下方的卸載,按照頁面提示完成卸載。
相關文檔
關於ack-advanced-audit的發布記錄及說明,請參見ack-advanced-audit。
API Server審計日誌功能能夠協助叢集管理員排查“什麼人在什麼時間對什麼資源做了什麼操作”,請參見使用叢集API Server審計功能。