Docker 日志是否保存在Google Kubernetes上

Docker 日志是否保存在Google Kubernetes上,docker,logging,kubernetes,google-cloud-platform,Docker,Logging,Kubernetes,Google Cloud Platform,我正在运行一个包含三个容器的部署:应用程序、nginx和云sql实例。我在基于python的应用程序中有很多打印语句 每次用户与应用程序交互时,都会打印输出。我想知道这些日志是否默认保存在任何位置 我担心这些日志可能会占用集群中运行它的节点上的空间。这会发生吗?或者默认情况下Kubernetes部署不保存任何日志?应用程序通常在Docker下的容器中运行,而stdout/stderr日志在graph目录中的容器生命周期内保存(通常/var/lib/Docker) 您可以使用以下任一方法查看日志:

我正在运行一个包含三个容器的部署:应用程序、nginx和云sql实例。我在基于python的应用程序中有很多打印语句

每次用户与应用程序交互时,都会打印输出。我想知道这些日志是否默认保存在任何位置


我担心这些日志可能会占用集群中运行它的节点上的空间。这会发生吗?或者默认情况下Kubernetes部署不保存任何日志?

应用程序通常在Docker下的容器中运行,而stdout/stderr日志在graph目录中的容器生命周期内保存(通常
/var/lib/Docker

您可以使用以下任一方法查看日志:

$ kubectl logs <pod-name> -c <container-in-pod>
如果您想在“已退出”容器上执行垃圾收集,您可以阅读更多信息

另一种方法是设置在节点上定期运行的cron作业,该作业可执行以下操作:

$ docker system prune -a --force

但是,如果我的容器持续运行,并且当用户与容器中的应用程序交互时,会创建日志,该怎么办。我如何确保定期清理,使其不会填满节点,我的docker应用程序会挂起这是一个常见问题,您可以将日志直接发送到另一个设施,如ELK stack。也许你的吊舱上有个侧车:。
$ cd /var/lib/docker/containers
$ find . | grep json.log
./3454a0681100986248fd81856fadfe7cd95a1a6467eba32adb33da74c2c5443d/3454a0681100986248fd81856fadfe7cd95a1a6467eba32adb33da74c2c5443d-json.log
./80a87a9529a55f8d3fb9b814f0158dc91686704222e252b256455bcde48f56a5/80a87a9529a55f8d3fb9b814f0158dc91686704222e252b256455bcde48f56a5-json.log
...
$ docker system prune -a --force