容器优化 OS 系统日志位置?

Container-Optimized OS syslog location?

Container-Optimized OS 的系统日志文件位于何处?我正在寻找类似 /var/log/syslog 的内容。我需要它的原因之一是解决 ssh 登录失败问题。

Container-Optimized OS 的系统日志文件位于何处?

容器 OS 的日志文件未存储在容器中。相反,日志会发送到 Stackdriver。容器旨在被销毁和重建。将日志文件存储在容器上意味着丢失它们。

要查看临时存在的日志,如最新日志,可以使用程序journalctl查看。

这里有一篇 link 到介绍 journalctl 以及如何使用基本功能的文章:

Use journalctl to View Your System's Logs

Where is Container-Optimized OS’s syslog file located?

Container-Optimized OS 使用 systemd-journald 来管理系统日志,而不是任何其他 syslog 守护进程(例如 rsyslog)。

您可以在此处查看 systemd-journald 的文档: https://wiki.archlinux.org/index.php/Systemd/Journal

长话短说,您可以通过 运行 命令查看日志,例如:

sudo journalctl
sudo journalctl -u sshd

One reason I need this is to troubleshoot ssh login failures.

如果您在建立任何 SSH 连接时遇到问题,运行 命令将不是一个可行的解决方案。在这种情况下,GCE 串行控制台日志将是最接近的工具: https://cloud.google.com/compute/docs/instances/viewing-serial-port-output

Stackdriver is built into Container OS. cloud.google.com/container-optimized-os/docs/release-notes

Here 是 COS 上 Stackdriver Logging 的源代码。您可以通过以下方式启动它:

sudo systemctl start stackdriver-logging