引言
应用容器化后的日志采集该选择何种方式?该如何权衡?不同的服务质量QoS对Node的稳定性影响是怎么样的,本文就捋一捋这个。主要内容有:
- 日志采集三种方式
- 日志采集方式权衡
- Pod服务质量QoS
一、日志采集三种方式
K8s日志采集方式主要有原生方式、DaemonSet采集方式、Sidecar采集方式。
原生方式,日志写入标准输出和标准错误流,可通过 kubectl logs 命令查看输出,如下图。
通过日志轮替工具logrotate实现日志分割、压缩、删除、以及创建新的日志文件。
DaemonSet采集方式,在k8s的node节点上运行日志代理,由日志代理将日志采集到后端服务。
SideCar采集方式,在一个POD中运行一个单独的日志采集代理容器,用于采集容器的日志。
官方也说明了SideCar会带来更多的资源损耗,日志没有被kubelet接管,不能使用kubectl logs访问日志。
小结:基于官方提供的采集方式&