阿里云容器服務 Edge 版集成了日志服務,您可以在創建ACK Edge集群時啟用日志服務,快速采集ACK Edge集群的容器日志,包括容器的標準輸出以及容器內的文本文件。本文介紹如何使用日志服務采集邊緣容器的日志信息。
步驟一:啟用日志服務組件Logtail
您可以在創建ACK Edge集群時選中使用日志服務,啟用Logtail組件;也可以為已有ACK Edge集群啟用Logtail組件。
創建集群時啟用Logtail
登錄容器服務管理控制臺。
在控制臺左側導航欄,單擊集群。
在集群列表頁面中,單擊頁面右上角的創建集群。
以下僅介紹開啟日志服務的關鍵步驟。關于創建集群的具體操作,請參見創建邊緣托管版集群。
在組件配置配置向導中,選中使用日志服務,表示在新建的集群中安裝日志插件。
當選中使用日志服務后,會出現創建項目(Project)的提示。關于日志服務管理日志的組織結構,請參見項目(Project))。有以下兩種創建Project方式。
單擊使用已有Project,選擇一個現有的Project來管理采集的日志。
單擊創建新Project,自動創建一個新的Project來管理采集的日志,Project會自動命名為
k8s-log-{ClusterID}
,ClusterID是您新建的ACK Edge集群的唯一標識。
配置完成后,單擊右下角創建集群,在彈出的窗口中單擊確定,完成創建。
完成創建后,您可在集群列表頁面看到開啟了Logtail的ACK Edge集群。
為已有集群啟用Logtail
登錄容器服務管理控制臺。
在控制臺左側導航欄,單擊集群。
在集群列表頁面,單擊目標集群名稱或者目標集群右側操作列下的詳情。
在集群管理頁左側導航欄中,選擇 ,并在日志與監控區域找到日志logtail-ds。
說明在邊緣托管集群高于1.18.8-aliyunedge.1的版本中,日志組件統一合并為logtail-ds。
在邊緣托管集群小于或等于1.18.8-aliyunedge.1版本中,日志組件包含兩個:alibaba-log-controller和logtail-ds-docker。
在logtail-ds組件右側,單擊安裝,并在安裝組件對話框中單擊確定。
如果您已安裝舊版本的日志服務組件,可以在相關組件右側,單擊升級。
步驟二:創建應用時配置日志服務
您可以在創建應用的同時配置日志服務,從而對ACK Edge集群的日志進行采集。
登錄容器服務管理控制臺,在左側導航欄選擇集群。
在集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇 。
在無狀態頁面上方的命名空間下拉框中設置命名空間,然后單擊頁面右上角的使用鏡像創建。
在應用基本信息頁簽,設置應用名稱、副本數量和類型,單擊下一步,進入容器配置頁面。
以下僅介紹日志服務相關的配置。關于其他的應用配置,請參見創建無狀態工作負載Deployment。
在日志配置區域,配置日志相關信息。
設置采集配置。
重要日志采集配置完成后,不支持修改。如果需要修改,請通過DaemonSet-CRD方式采集容器日志。
單擊+圖標創建新的采集配置,每個采集配置由日志庫和容器內日志路徑兩項構成。
日志庫:配置Logstore名稱,用于指定所采集的日志存儲于該Logstore。如果該Logstore不存在,ACK將會自動為您在集群關聯的日志服務Project下創建相應的Logstore。
說明新創建的Logstore中的日志默認保存時間為180天。
容器內日志路徑:指定希望采集的日志所在的路徑,例如使用/usr/local/tomcat/logs/catalina.*.log來采集Tomcat的文本日志。
說明指定為stdout時,表示采集容器的標準輸出和標準錯誤輸出。
每一項采集配置都會被自動創建為對應Logstore的一個采集配置,默認采用極簡模式(按行)進行采集。如果您需要使用多行模式及更豐富的采集方式,請參見通過DaemonSet-控制臺方式采集容器文本日志、通過DaemonSet-控制臺方式采集容器標準輸出。
設置自定義Tag。
單擊+圖標創建新的自定義Tag,每一個自定義Tag都是一個鍵值對,會拼接到所采集到的日志中,您可以使用它來為容器的日志數據進行標記,例如版本號。
當完成所有配置后,可單擊右上角的下一步進入后續流程。
后續操作,可參見創建無狀態工作負載Deployment。
步驟三:查看日志
本例中查看通過控制臺向導創建的tomcat應用的日志。完成配置后,tomcat應用的日志已被采集并存儲到日志服務中,您可以在日志服務控制臺查看容器日志。操作步驟如下:
安裝成功后,進入日志服務控制臺。
在進入控制臺后,在Project列表區域選擇Kubernetes集群對應的Project(默認為k8s-log-{Kubernetes集群ID}),進入日志庫列表頁簽。
在列表中找到相應的Logstore(采集配置中指定),將鼠標懸浮在相應的Logstore名稱的右側,單擊圖標,并單擊查詢分析。
本例中,在日志查詢頁面,您可以查看Tomcat應用的標準輸出日志和容器內文本日志,并可以發現自定義tag附加到日志字段中。
更多信息
通過日志服務采集Kubernetes容器日志,您可以在日志服務控制臺查看容器服務ACK的全部日志信息。
默認情況下,日志服務會使用極簡模式來采集您的數據(按行采集、不解析)。如果您需要更復雜的配置,可以參見以下日志服務文檔并前往日志服務控制臺進行配置修改。
除了通過控制臺配置采集以外,您還可以直接通過CRD配置來對Kubernetes集群進行日志采集,具體可參見通過DaemonSet-CRD方式采集容器日志。
關于如何進行異常排查,請參見Logtail采集日志失敗的排查思路。
如需了解如何變更日志保存天數、如何關閉日志采集等信息,請參見Logstore相關問題。