目前,容器服务Windows Kubernetes支持将业务容器产生的stdout输出、日志文件同步到阿里云日志服务(SLS)进行统一管理。node
在Windows Kubernetes集群安装界面勾选使用日志服务
,集群会安装支持日志收集的必要组件logtail
。shell
集群安装完毕后,能够在日志服务控制台 查看到按k8s-sls-{Kubernetes 集群 ID}
形式命名的工程。收集到的业务容器日志都会放在该工程下。windows
YAML 模板的语法同 Kubernetes 语法,可是为了给容器指定采集配置,须要使用 env 来为 container 增长采集配置和自定义 Tag,并根据采集配置,建立对应的 volumeMounts 和 volumns。如下是一个简单的 Deployment 示例:api
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
其中有三部分须要根据您的需求进行配置,通常按照顺序进行配置。app
aliyun_logs_
做为前缀。- name: aliyun_logs_{Logstore 名称} value: {日志采集路径}
示例中建立了两个采集配置,其中 aliyun_logs_log-stdout 这个 env 表示建立一个 Logstore 名字为 log-stdout,日志采集路径为 stdout 的配置,从而将容器的标准输出采集到 log-stdout 这个 Logstore 中。ide
说明 Logstore 名称中不能包含下划线(_),能够使用 - 来代替。阿里云
- name: aliyun_logs_{任意不包含'_'的名称}_tags value: {Tag 名}={Tag 值}
配置 Tag 后,当采集到该容器的日志时,会自动附加对应的字段到日志服务。url
本例部署的应用会向data.log文件中写入日志。能够按如下步骤查看日志:spa
原文连接
本文为云栖社区原创内容,未经容许不得转载。3d