由于使用 systemd 作为 cgroup 驱动程序而导致日志泛滥

在 kubelet 和 docker 中使用 systemd cgroups 驱动程序时,将出现消息泛滥。

症状

原因

https://github.com/opencontainers/runc/blob/master/libcontainer/cgroups/systemd/apply_systemd.go#L123

解决问题

由于此问题不影响容器指标,因此仅需配置 rsyslog 来忽略此类泛滥的日志。

rsyslog 的配置文件位于 /etc/rsyslog.conf/etc/rsyslog.d/*.conf 文件中。

要忽略先前的错误消息:

应该在消息收集命令之前添加 :rawmsg, contains, "libcontainer" ~

,例如,

*.info;mail.none;authpriv.none;cron.none /var/log/messages

然后,重新启动 rsyslog 服务,可以忽略此消息泛滥问题。