Kubernetes日志收集要覆盖容器标准输出、节点系统日志、控制面组件日志、Kubernetes 事件和审计日志,并统一进入检索、告警、留存和分析平台。生产环境不能依赖临时进入 Pod 查看日志,因为 Pod 可能随时重建或被删除。

Kubernetes里有哪些日志
Kubernetes 日志可以分为几类:
| 日志类型 | 来源 | 主要用途 |
|---|---|---|
| 容器日志 | 应用标准输出和标准错误 | 排查业务异常 |
| 节点日志 | 操作系统、kubelet、运行时 | 排查节点和运行时问题 |
| 控制面日志 | API Server、Scheduler、Controller | 排查集群管理问题 |
| 事件 | Kubernetes资源事件 | 排查调度、镜像、探针问题 |
| 审计日志 | API访问记录 | 安全审计和操作追溯 |
不同日志解决不同问题,不能只收集应用容器日志。
容器日志应该怎么写
云原生应用推荐把日志输出到标准输出和标准错误,由节点上的采集器统一收集。应用不应长期依赖容器内本地文件保存日志,因为容器重建后文件可能丢失。
建议日志包含:
- 时间
- 日志级别
- 请求 ID 或 trace ID
- 服务名和版本
- 错误码和异常栈
- 关键业务字段
结构化日志更利于检索和分析。
常见采集架构
常见方式是在每个节点运行日志采集 Agent,例如 Fluent Bit、Fluentd、Vector 或 Filebeat,采集容器日志后发送到 Elasticsearch、Loki、ClickHouse 或其他日志平台。

采集架构要关注性能开销、丢日志风险、缓冲能力、字段解析、租户隔离和存储成本。
审计日志为什么重要
审计日志记录谁在什么时候对 Kubernetes API 做了什么操作。对于生产环境和合规场景,审计日志非常关键,可以用于追踪误删除、权限滥用、异常访问和自动化脚本行为。
企业应重点关注:
- 高权限操作
- Secret 访问
- 删除资源
- 创建特权容器
- 修改 RBAC
- 异常来源 IP 或账号
日志检索和留存怎么设计
日志平台不是无限存储。企业需要按日志价值设置留存策略:
- 生产错误日志保留更久
- 调试级日志缩短留存
- 审计日志按合规要求保留
- 高频低价值日志做采样或降噪
- 按团队、命名空间、应用设置访问权限
日志成本很容易失控,必须从采集、过滤、索引和留存阶段治理。
常见误区
只在Pod里看日志
这适合临时调试,不适合生产运维。Pod 删除后日志可能丢失。
所有日志都全量长期保存
成本会迅速上升。应按业务价值、合规要求和排障需求分级保存。
忽略审计日志
没有审计日志,安全事件和误操作追溯会非常困难。
日志体系要同时服务排障、安全和审计
Kubernetes 日志收集不能只把容器 stdout 统一采集到日志平台。企业还需要区分应用日志、平台组件日志、节点日志、Ingress 访问日志和审计日志。不同日志服务的目标不同:应用日志用于排障,访问日志用于分析入口流量,审计日志用于追踪谁在什么时候做了什么操作。
建议日志体系至少覆盖:
- 容器标准输出日志:业务排障最常用入口。
- Kubernetes事件:定位调度失败、镜像拉取失败、探针失败。
- 控制面组件日志:用于排查 API Server、Scheduler、Controller 异常。
- Ingress和网关日志:分析 4xx、5xx、延迟和来源 IP。
- 审计日志:追踪敏感操作、权限变更和异常访问。
日志收集的目标不是“有日志”,而是故障和安全事件发生时能按时间线还原现场。
日志成本和保留周期要提前设计
容器环境日志量增长很快,如果没有采样、过滤、索引规划和保留周期,日志平台成本会失控。生产环境通常要按日志类型设置不同保留策略:核心业务和审计日志保留更久,调试日志保留更短,低价值噪音日志应在采集前过滤。
日志字段也要标准化,例如应用名、命名空间、Pod、环境、版本、请求 ID 和 trace ID。字段不统一会导致检索困难,影响故障定位效率。
结语
Kubernetes日志体系要覆盖应用、节点、控制面、事件和审计多个层面。企业建设时,不仅要解决采集问题,还要解决结构化、检索、权限、告警、留存和成本治理问题。
FAQ
Kubernetes容器日志默认保存在哪里?
通常由容器运行时写到节点上的容器日志路径,再由 kubelet 和日志采集器读取。具体路径会因运行时和系统配置不同而变化。
Pod删除后还能查日志吗?
如果没有集中采集,可能查不到。生产环境必须把日志发送到集中日志平台。
审计日志一定要开启吗?
生产和合规环境建议开启。审计日志对权限追踪、误操作定位和安全分析非常重要。
日志量太大怎么办?
可以通过日志级别治理、采样、字段过滤、冷热分层、索引优化和留存策略控制成本。
转载请注明出处:https://www.cloudnative-tech.com/p/7283/