ACK叢集與阿里雲Log ServiceSLS深入整合,通過提供日誌採集組件來簡化容器日誌的收集和管理。本文介紹如何安裝日誌採集組件並完成日誌採集配置,包括日誌的自動採集、查詢和分析,以提升營運效率,降低管理成本。
情境指引
日誌採集組件可通過以下兩種方式來採集容器日誌。
DaemonSet:適用於日誌分類明確、功能較單一的叢集。可參見本文瞭解。
Sidecar:適用於大型、混合型叢集。詳情請參見通過Sidecar方式採集Kubernetes容器文本日誌。
索引
操作步驟 | 操作鏈結接 |
步驟一:安裝日誌採集組件 | 在以下兩個日誌採集組件中選擇一個進行安裝。
|
步驟二:建立採集配置 | 根據採集需求選擇文本日誌或標準輸出。 |
步驟三:查詢分析日誌 | 通過控制台進行日誌查詢與分析。 |
步驟一:安裝日誌採集組件
安裝LoongCollector(推薦)
LoongCollector(原Logtail):Logtail是Log Service提供的日誌採集Agent,用於採集阿里雲ECS、自建IDC或其他雲廠商等伺服器上的日誌。Logtail基於記錄檔採集,無需修改應用程式代碼,且採集日誌不會影響應用程式運行。LoongCollector是Log Service推出的新一代採集Agent,是Logtail的升級版,相容Logtail的同時效能更佳。
已有的ACK叢集中安裝loongcollector組件
登入Container Service管理主控台,在左側導覽列選擇叢集列表。
在叢集列表頁面,單擊目的地組群名稱,然後在左側導覽列,選擇營運管理 > 組件管理。
在日誌與監控頁簽中,找到 loongcollector,然後單擊安裝。
說明LoongCollector組件和logtail-ds組件不能同時存在。如果叢集之前已經安裝logtail-ds組件,升級方案請參見Logtail升級到LoongCollector。
安裝完成後,Log Service會自動產生名為k8s-log-${your_k8s_cluster_id}的Project,並在該Project下產生如下資源,您可登入Log Service控制台查看。
資源類型 | 資源名稱 | 作用 | 樣本 |
機器組 | k8s-group- | loongcollector-ds的機器組,主要用於日誌採集情境。 | k8s-group-my-cluster-123 |
k8s-group- | loongcollector-cluster的機器組,主要用於指標採集情境。 | k8s-group-my-cluster-123-cluster | |
k8s-group- | 單一實例機器組,主要用於部分單一實例採集配置。 | k8s-group-my-cluster-123-singleton | |
Logstore | config-operation-log | 用於採集和儲存loongcollector-operator組件日誌。 重要 請勿刪除名為 | config-operation-log |
安裝Logtail
Logtail採集:Logtail是Log Service提供的日誌採集Agent,用於採集阿里雲ECS、自建IDC或其他雲廠商等伺服器上的日誌。Logtail基於記錄檔,無侵入式採集日誌。您無需修改應用程式代碼,且採集日誌不會影響您的應用程式運行。
已有的ACK叢集中安裝Logtail組件
登入Container Service管理主控台,在左側導覽列選擇叢集列表。
在叢集列表頁面,單擊目的地組群名稱,然後在左側導覽列,單擊組件管理。
在日誌與監控頁簽中,找到logtail-ds,然後單擊安裝。如未找到logtail-ds組件,請安裝LoongCollector組件。
LoongCollector組件為logtail-ds組件的升級版,兩個組件不能同時存在,推薦使用LoongCollector組件。
建立ACK叢集時安裝Logtail組件
登入Container Service管理主控台,在左側導覽列選擇叢集列表。
單擊建立叢集,在組件配置頁面,選中使用Log Service。
本文只描述Log Service相關配置,關於更多配置項說明,請參見建立ACK託管叢集。
當選中使用Log Service後,會出現建立專案(Project)的提示。
使用已有Project
可選擇一個已有的Project來管理採集到的容器日誌。

建立新Project
Log Service自動建立一個Project來管理採集到的容器日誌。其中
ClusterID為建立的Kubernetes叢集的唯一標識。
在組件配置頁中,預設開啟控制面組件日誌,開啟此配置會在Project中自動設定並採集叢集控制面組件日誌並遵循隨用隨付,因此請根據自身情況選擇是否需要開啟,相關資訊請參考管理控制面組件日誌。
安裝完成後,自動產生名為k8s-log-<YOUR_CLUSTER_ID>的Project,並在該Project下產生如下資源,可登入Log Service控制台查看資源。
資源類型 | 資源名稱 | 作用 | 樣本 |
機器組 | k8s-group- | logtail-daemonset的機器組,主要用於日誌採集情境。 | k8s-group-my-cluster-123 |
k8s-group- | logtail-statefulset的機器組,主要用於指標採集情境。 | k8s-group-my-cluster-123-statefulset | |
k8s-group- | 單一實例機器組,主要用於部分單一實例採集配置。 | k8s-group-my-cluster-123-singleton | |
Logstore | config-operation-log | 用於儲存Logtail組件中的alibaba-log-controller日誌。建議不要在此Logstore下建立採集配置。該Logstore可以刪除,刪除後不會再採集alibaba-log-controller的作業記錄。該Logstore的收費標準和普通的Logstore收費標準是一致的,具體請參見按寫入資料量計費模式計費項目。 | 無 |
步驟二:建立採集配置
步驟三:查詢分析日誌
在Project列表中,單擊目標Project,進入對應的Project詳情頁面。

在對應的日誌庫右側的
表徵圖,選擇查詢分析,查看Kubernetes叢集輸出的日誌。
日誌預設欄位
文本日誌
K8s每條容器文本日誌預設包含的欄位如下表所示。
欄位名稱 | 說明 |
__tag__:__hostname__ | 容器宿主機的名稱。 |
__tag__:__path__ | 容器內記錄檔的路徑。 |
__tag__:_container_ip_ | 容器的IP地址。 |
__tag__:_image_name_ | 容器使用的鏡像名稱。 說明 若存在多個相同Hash但名稱或Tag不同的鏡像,採集配置將根據Hash選擇其中一個名稱進行採集,無法確保所選名稱與YAML檔案中定義的一致。 |
__tag__:_pod_name_ | Pod的名稱。 |
__tag__:_namespace_ | Pod所屬的命名空間。 |
__tag__:_pod_uid_ | Pod的唯一識別碼(UID)。 |
標準輸出
Kubernetes叢集的每條日誌預設上傳的欄位如下所示。
欄位名稱 | 說明 |
_time_ | 日誌採集時間。 |
_source_ | 日誌源類型,stdout或stderr。 |
_image_name_ | 鏡像名 |
_container_name_ | 容器名 |
_pod_name_ | Pod名 |
_namespace_ | Pod所在的命名空間 |
_pod_uid_ | Pod的唯一標識 |
相關文檔
當完成日誌內容的採集後,可在Log Service中使用查詢與分析功能,來協助瞭解日誌情況,請參考查詢與分析快速指引。
當完成日誌內容的採集後,可在Log Service中使用可視化功能, 來協助直觀地統計與瞭解日誌情況,請參考快速建立儀錶盤。
當完成日誌內容的採集後,可在Log Service中使用警示功能, 來自動提醒日誌中的異常情況,請參考快速設定日誌警示。
Log Service僅採集增量日誌,歷史記錄檔採集請參見匯入歷史記錄檔。
容器採集異常排查思路:
查看控制台是否有報錯資訊,具體操作,請參見如何查看Logtail採集錯誤資訊。
如果控制台無報錯資訊,排查機器組心跳、Logtail採集配置等內容。具體操作,請參見如何排查容器日誌採集異常。

添加到應用機器組,單擊下一步。










