美文网首页
k8s中,写日志引起pod cache增加问题

k8s中,写日志引起pod cache增加问题

作者: CaptainWhite | 来源:发表于2022-03-28 17:04 被阅读0次

    记一次k8s中内存泄露的问题
    监控抓取的地址为cadvisor的地址,取的pod的mem分为rss、cached、used、total

    • total:limit的数值
    • rss:实际内存使用
    • cached:缓存使用
    • used:cached+rss
      监控内存百分比会用used/total进行计算,所以内存不断上涨,误以为存在内存泄露
      可以使用如下方式查看cadvisor的监控:
    kubectl -n kube-admin get secrets k8s-mon-token-995sz -ojsonpath='{.data.token}' | base64 -d
    
    TOKEN=$(kubectl -n kube-admin get secrets k8s-mon-token-995sz -ojsonpath='{.data.token}' | base64 -d)
    
    curl -k --header "Authorization: Bearer $TOKEN"  https://10.xxx.xxx.xxx:10250/metrics/cadvisor
    

    通过压测得到:
    k8s的limit限制,会计算rss+cache的值,写文件会导致cache不断增加,直到总量到达limit的限制值,此时cache会保持稳定。如果存在内存泄露,会导致rss不断增长,直到rss超过limit,会重启容器释放内存
    我们内存告警rss的值即可,告警数值为limit的80% P2,limit的90% P1

    相关文章

      网友评论

          本文标题:k8s中,写日志引起pod cache增加问题

          本文链接:https://www.haomeiwen.com/subject/uampjrtx.html