请问大佬们,k8s 使用 containerd 作为容器运行时,容器日志将磁盘打满,大佬们是如何解决这种情况的

295 天前
 lhstack
1842 次点击
所在节点    Kubernetes
10 条回复
buaacss
295 天前
在写日志的时候就一边写一边回收,起一个 logtail 的边车,写完了就立即把日志收上去。业务不想写回收逻辑就启一个 logrotate 的边车帮他们回收。
Akiya
295 天前
限制单个日志文件大小,限制日志文件数量
cleanery
295 天前
日志框架都支持设置保存天数和日志大小上限吧
lhstack
295 天前
@cleanery 输出到控制台的日志,貌似就不支持这个功能
lhstack
295 天前
@Akiya 我知道,docker 是支持这个功能的,我这边用的是 containerd,我查看文档发现,kubelet 提供了 containerd 的日志参数,但是并不会清理日志,它会把切割后的日志存放成一个压缩文件,所以这个参数也不能满足我的需求
proxychains
294 天前
笨方法: 再起个容器放到同一个 pod 中, 专门清理 N 天以上的日志
ExplodingFKL
294 天前
每个 pod 配置好日志轮转 + limit,

```yaml

resources:
requests:
ephemeral-storage: "50Mi"
limits:
ephemeral-storage: "100Mi"

```
Judoon
294 天前
@lhstack #5 你确定吗?你所说的是滚动参数,还有一个保留份数的,都设置了也没用?
lhstack
294 天前
@Judoon 那个保留份数,我测试了一下,只会将日志文件切割为几份,但是多余的日志,它会将其压缩成.gz 的压缩文件
naoying
280 天前
apiVersion: v1
kind: Pod
metadata:
name: mypod
spec:
containers:
- name: mycontainer
image: myimage
...
logPolicy:
maxSize: "10Mi"
maxFiles: 3

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1020506

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX