容器服務Windows Kubernetes使用阿里雲日誌服務來收集容器日誌
阿新 • • 發佈:2019-06-20
目前,容器服務Windows Kubernetes支援將業務容器產生的stdout輸出、日誌檔案同步到阿里雲日誌服務(SLS)進行統一管理。
支撐元件安裝
在Windows Kubernetes叢集安裝介面勾選使用日誌服務
,叢集會安裝支援日誌收集的必要元件logtail
。
叢集安裝完畢後,可以在日誌服務控制檯 檢視到按k8s-sls-{Kubernetes 叢集 ID}
形式命名的工程。收集到的業務容器日誌都會放在該工程下。
使用YAML模版部署業務容器
YAML 模板的語法同 Kubernetes 語法,但是為了給容器指定採集配置,需要使用 env 來為 container 增加採集配置和自定義 Tag,並根據採集配置,建立對應的 volumeMounts 和 volumns。以下是一個簡單的 Deployment 示例:
apiVersion: extensions/v1beta1 kind: Deployment metadata: labels: app: logtail-test name: logtail-test spec: replicas: 1 template: metadata: labels: app: logtail-test name: logtail-test spec: containers: - name: logtail image: registry-vpc.cn-hangzhou.aliyuncs.com/acs/windows-logtail:1809-1.0.0.4 command: ["powershell.exe"] args: [cmd /k "ping -t 127.0.0.1 -w 10000 > C:\log\data.log"] env: ######### 配置 環境變數 ########### - name: aliyun_logs_log-stdout value: stdout - name: aliyun_logs_log-varlog value: C:\log\*.log - name: aliyun_logs_log_tags value: tag1=v1 ################################# ######### 配置vulume mount ####### volumeMounts: - name: volumn-sls-win mountPath: c:\log volumes: - name: volumn-sls-win emptyDir: {} ############################### nodeSelector: beta.kubernetes.io/os: windows
其中有三部分需要根據您的需求進行配置,一般按照順序進行配置。
- 第一部分通過環境變數來建立您的採集配置和自定義 Tag,所有與配置相關的環境變數都採用
aliyun_logs_
作為字首。
建立採集配置的規則如下:
- name: aliyun_logs_{Logstore 名稱}
value: {日誌採集路徑}
示例中建立了兩個採集配置,其中 aliyun_logs_log-stdout 這個 env 表示建立一個 Logstore 名字為 log-stdout,日誌採集路徑為 stdout 的配置,從而將容器的標準輸出採集到 log-stdout 這個 Logstore 中。
說明 Logstore 名稱中不能包含下劃線(_),可以使用 - 來代替。
- 建立自定義 Tag 的規則如下:
- name: aliyun_logs_{任意不包含'_'的名稱}_tags
value: {Tag 名}={Tag 值}
配置 Tag 後,當採集到該容器的日誌時,會自動附加對應的欄位到日誌服務。
- 如果您的採集配置中指定了非 stdout 的採集路徑,需要在此部分建立相應的 volumnMounts。
示例中採集配置添加了對c:log*.log 的採集,因此相應地添加了c:log的 volumeMounts。
檢視日誌
本例部署的應用會向data.log檔案中寫入日誌。可以按以下步驟檢視日誌:
- 安裝成功後,進入日誌服務控制檯。
- 在進入控制檯後,選擇 Kubernetes 叢集對應的 Project(預設為 k8s-log-{Kubernetes 叢集 ID}),進入 Logstore 列表頁面。
- 在列表中找到相應的 Logstore(採集配置中指定),單擊查詢。
- 本例中,在日誌查詢頁面,您可檢視容器內文字日誌,並可發現自定義tag附加到日誌欄位中。
作者:柏理
原文連結
本文為雲棲社群原創內容,未經