k8s实例线程、内存、存储异常与标准化

本文介绍了如何解决K8s中线程爆满问题,通过标准化线程限制、内存监控与OOM处理,以及调整实例存储和文件描述符配置。还探讨了如何配置docker以优化Pod性能和资源使用。

一、实例的线程标准化

关于线程爆的问题: 由于k8s用户在使用的时候,通常没有关注到Pod的/proc/pid/cpuinfo,meminfo的实例规格信息默认和宿主机的是一致的,故程序默认使用容器的这个/proc/pid/cpuinfo设置默线程maxP(最大线程值),导致爆线程。平台可以给Pod做类似LXCFS之类的文件系统优化,让容器里面看到真实的cpu数据。当然另一种情况是,用户的程序并发控制确实存在问题(比如java线程池,python并发)

1、登录宿主机后,观察pod状态为running,但是kubectl exec 和docker exec 均无法进入该容器,报错如下
在这里插入图片描述
2、找出线程高于10000的容器

cd /sys/fs/cgroup/pids/kubepods && find -name pids.current |grep pod |xargs -I file sh -c 'echo -e file" \c" && cat fi
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值