容器服务Windows Kubernetes使用阿里云日志服务来收集容器日志
目前,容器服務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-testname: logtail-test spec:replicas: 1template:metadata:labels:app: logtail-testname: logtail-testspec:containers:- name: logtailimage: registry-vpc.cn-hangzhou.aliyuncs.com/acs/windows-logtail:1809-1.0.0.4command: ["powershell.exe"]args: [cmd /k "ping -t 127.0.0.1 -w 10000 > C:\log\data.log"]env:######### 配置 環境變量 ###########- name: aliyun_logs_log-stdoutvalue: stdout- name: aliyun_logs_log-varlogvalue: C:\log\*.log- name: aliyun_logs_log_tagsvalue: tag1=v1########################################## 配置vulume mount #######volumeMounts:- name: volumn-sls-winmountPath: c:\logvolumes:- name: volumn-sls-winemptyDir: {}###############################nodeSelector:beta.kubernetes.io/os: windows其中有三部分需要根據您的需求進行配置,一般按照順序進行配置。
- 第一部分通過環境變量來創建您的采集配置和自定義 Tag,所有與配置相關的環境變量都采用aliyun_logs_作為前綴。
創建采集配置的規則如下:
示例中創建了兩個采集配置,其中 aliyun_logs_log-stdout 這個 env 表示創建一個 Logstore 名字為 log-stdout,日志采集路徑為 stdout 的配置,從而將容器的標準輸出采集到 log-stdout 這個 Logstore 中。
說明 Logstore 名稱中不能包含下劃線(_),可以使用 - 來代替。
- 創建自定義 Tag 的規則如下:
配置 Tag 后,當采集到該容器的日志時,會自動附加對應的字段到日志服務。
- 如果您的采集配置中指定了非 stdout 的采集路徑,需要在此部分創建相應的 volumnMounts。
示例中采集配置添加了對c:log*.log 的采集,因此相應地添加了c:log的 volumeMounts。
查看日志
本例部署的應用會向data.log文件中寫入日志。可以按以下步驟查看日志:
原文鏈接
本文為云棲社區原創內容,未經允許不得轉載。
總結
以上是生活随笔為你收集整理的容器服务Windows Kubernetes使用阿里云日志服务来收集容器日志的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 云原生时代|分布式系统设计知识图谱(内含
- 下一篇: 业务系统 Over 阿里云性能压测的最佳