K8S request limit 资源限制后,为啥 load average 还是很高 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dunhanson
V2EX    Kubernetes

K8S request limit 资源限制后,为啥 load average 还是很高

  •  
  •   dunhanson 2022 年 3 月 26 日 3301 次点击
    这是一个创建于 1393 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我看对应的进程 cpu 已经最大 200%了

    request limit 都设置为 2

    load average

    第 1 条附言    2022 年 3 月 26 日

    kubectl top命令cpu利用率正常,但是load average还是很高

    第 2 条附言    2022 年 3 月 26 日
    k8s-node8
    20 条回复    2022-03-26 19:31:31 +08:00
    hwdef
        1
    hwdef  
       2022 年 3 月 26 日
    kubectl top 看一下,容器里的 top 看资源使用量不一定准确
    dunhanson
        2
    dunhanson  
    OP
       2022 年 3 月 26 日
    @hwdef 我在节点上面看的,没有在容器里面
    dunhanson
        3
    dunhanson  
    OP
       2022 年 3 月 26 日
    @hwdef kubectl top node 确实占用不高,为啥节点上面用 top 比较高?
    hwdef
        4
    hwdef  
       2022 年 3 月 26 日
    不是你这个 pod 的问题吧,你这 pod 确实也没有超设定值,load average 高的原因有很多,磁盘什么的也会影响,不只是 cpu 和内存,看你这是阿里云的虚拟机,虚拟机底层的主机如果负载高也会造成虚拟机的平均负载高,

    总之就是原因很多,不一定是 cpu 的问题
    dunhanson
        5
    dunhanson  
    OP
       2022 年 3 月 26 日
    @hwdef 但是确实这个 pod 每次启动后负载都会很高,过几分钟后降下来了
    dunhanson
        6
    dunhanson  
    OP
       2022 年 3 月 26 日
    @hwdef 因为这个项目很老,代码比较冗余,我现在代码在精简,有点效果,之前 top 启动的时候负载超过 200 300 ,现在<60 。但还是很高,cpu 总共也就 4 线程
    hwdef
        7
    hwdef  
       2022 年 3 月 26 日
    emmmm 容器优化 jvm 我也不熟,,我是写 go 的,,,感觉 java 上云还是容易水土不服,,
    dunhanson
        8
    dunhanson  
    OP
       2022 年 3 月 26 日
    @hwdef 哈哈 难搞
    disk
        9
    disk  
       2022 年 3 月 26 日 via iPhone
    你这个 java 程序是多线程的吗? k8s 只能限制容器的 cpu 使用时间,如果你有多个线程在等 cpu ,负载一样会很高。
    dunhanson
        10
    dunhanson  
    OP
       2022 年 3 月 26 日
    @disk

    用的基于 tomcat7 的镜像,然后启动脚本是这样子,主要是为了方便看日志

    chmod 777 /usr/local/tomcat/bin/catalina.sh
    sh /usr/local/tomcat/bin/startup.sh
    tee /opt/health.sh <<-'EOF'
    while true
    do
    sleep 1s
    if test $( ps -aux | grep java | grep tomcat | wc -l ) -eq 0
    then
    ps -aux | grep catalina.out | grep -v grep | awk '{print$2}' | xargs kill -9
    fi
    done
    EOF
    sh /opt/health.sh &
    tail -f /usr/local/tomcat/logs/catalina_${HOSTNAME}.out
    dunhanson
        11
    dunhanson  
    OP
       2022 年 3 月 26 日
    CMD ["sh","/usr/local/tomcat/bin/tomcat.sh"]
    ClericPy
        12
    ClericPy  
       2022 年 3 月 26 日
    同 9 楼

    load average 貌似和你任务对系统 CPU 的需求, 不是实际使用情况, 堵的越惨这东西越高. 而容器外面限制资源使用, 该堵的是不是还在那等着
    dunhanson
        13
    dunhanson  
    OP
       2022 年 3 月 26 日
    @ClericPy 看来没有什么有效的办法了,难搞
    vhwwls
        14
    vhwwls  
       2022 年 3 月 26 日
    没看出来有啥问题,Pod 占用是正常的,节点上的 Load average 高是别的原因,vmstat 看看
    rrfeng
        15
    rrfeng  
       2022 年 3 月 26 日
    你需要去了解一下 cpu usage(utilization) 和 load 的区别。
    ddmasato
        16
    ddmasato  
       2022 年 3 月 26 日 via iPhone
    是磁盘 io 堵住了吧
    24bit
        17
    24bit  
       2022 年 3 月 26 日
    会不会是 java 没识别到分配的 cpu 数,线程池按照虚拟机总 cpu 数创建了,导致线程太多?
    dunhanson
        18
    dunhanson  
    OP
       2022 年 3 月 26 日
    @ddmasato 正常的
    dunhanson
        19
    dunhanson  
    OP
       2022 年 3 月 26 日
    @vhwwls 用 vmstat 看 us 比较高,可以到 80 多,但 top 的 wa 又比较低
    lhx2008
        20
    lhx2008  
       2022 年 3 月 26 日
    看 top -H 有多少 Running 的线程,如果很多的话,你调小 limit 反而会把 load 搞高
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1023 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 30ms UTC 18:43 PVG 02:43 LAX 10:43 JFK 13:43
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86