现象
nginx容器接入logtail后,因为服务请求量较大导致日志量快速增加,很快就触发了内存告警,甚至触发容器伸缩
查看内存使用如图所示(单位:GB,统计参数:container_memory_working_set_bytes)
排查过程
略去一大波nginx参数配置的苦逼历程...
最终排查后发现nginx使用内存并不多,而大部分内存是被pagecache占用。因为logtail会读文件,文件会占用pagecache,这时候系统释放是比较慵懒的,所以pagecache越用越多,这部分内存随时都可以释放,但是在容器里,这是不合理的
随后进行了一些操作测试对内存占用的影响
- 清理容器内日志
- 宿主机上清理pagecache
内存清理情况如下图
文章来源:https://www.toymoban.com/news/detail-570089.html
解决
虽然在宿主机增加定时脚本清理pagecache最省力,但是影响范围过大,不是很合理。最终采用容器内增加定时清理日志脚本解决,效果如下图
文章来源地址https://www.toymoban.com/news/detail-570089.html
到了这里,关于阿里云logtail采集容器内日志到sls导致容器内存增加的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!