gpt4 book ai didi

kubernetes - 如何在 kubernetes 容器/pod 内进行日志轮换?

转载 作者:行者123 更新时间:2023-12-02 11:30:50 25 4
gpt4 key购买 nike

我们的设置:

我们在 GCP 中使用 kubernetes。
我们有将日志写入共享卷的 pod,带有一个 sidecar 容器,可以为我们的日志系统吸收日志。
我们不能只使用 stdout 来代替这个过程。

其中一些 pod 生命周期很长,并且由于没有日志轮换而正在填满磁盘空间。

题:
防止磁盘空间在此处填满的最简单方法是什么(不安排 pod 重新启动)?

我一直在尝试使用以下方法安装 logrotate:RUN apt-get install -y logrotate在我们的 Dockerfile 中并在 /etc/logrotate.d/dynamicproxy 中放置一个 logrotate 配置文件但它似乎没有运行。 /var/lib/logrotate/status永远不会生成。

我觉得我在咆哮错误的树或错过了使这项工作不可或缺的东西。任何帮助,将不胜感激。

最佳答案

通常,您应该将日志写入标准输出并配置日志收集工具,例如 ELK 堆栈。这是最佳做法。

但是,如果您想在容器中将 logrotate 作为单独的进程运行 - 您可以使用 Supervisor,它作为一个非常简单的初始化系统,允许您在容器中运行任意数量的并行进程。

可以在此处找到使用 Supervisor 轮换 Nginx 日志的简单示例:https://github.com/misho-kr/docker-appliances/tree/master/nginx-nodejs

关于kubernetes - 如何在 kubernetes 容器/pod 内进行日志轮换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55751750/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com