V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
zhoudaiyu
V2EX  ›  Linux

大家有没有遇到过 cgroup 对进程 cpu 限制偶发失效的情况?

  •  
  •   zhoudaiyu · 2023-03-15 22:02:25 +08:00 via iPhone · 1390 次点击
    这是一个创建于 618 天前的主题,其中的信息可能已经有所发展或是发生改变。
    一个跑在 k8s 的 Pod ( java 的 job 类工程)在 limits 中设置了 cpu 限制为 4 ,宿主机总共 20 核,正常情况下容器业务进程 cpu 使用率在 380%-420%左右,但是不断刷 top 能偶尔看到( 100 次能有 1 次) cpu 使用率能用到 1100%左右,宿主机内核是 3.10 的,k8s 版本 1.13 。请问大家遇到过这种情况吗?
    4 条回复    2023-03-17 01:43:00 +08:00
    AlkaidHe
        1
    AlkaidHe  
       2023-03-16 00:10:19 +08:00
    kernel 5.15 lts
    cgroup v2
    zhoudaiyu
        2
    zhoudaiyu  
    OP
       2023-03-16 08:31:38 +08:00 via iPhone
    @AlkaidHe 也遇到过这种情况?
    wtfedc
        3
    wtfedc  
       2023-03-16 17:22:40 +08:00
    你好!根据你提供的信息,可能存在以下原因导致 CPU 使用率异常:

    CPU 限制设置过低:如果 Pod 中的 Java 应用需要处理大量的请求或者有较高的计算复杂度,那么限制到 4 核可能无法满足其正常运行的需求。建议适当增加限制值并观察是否有改善。

    CPU 亲和性设置不合理:如果容器与宿主机之间存在 CPU 亲和性设置,而这些设置可能会影响容器的资源调度和分配。建议查看 Pod 及其相关的 Deployment/StatefulSet 等资源配置,确认是否设置了 CPU 亲和性。

    内核版本问题:你提到宿主机内核版本是 3.10 ,这个版本较老,可能存在一些现有的性能问题。建议升级内核版本以获取更好的性能。

    k8s 版本问题:你提到 k8s 版本是 1.13 ,也是比较老的版本。较新的版本可能包含更好的性能优化和稳定性改进。建议考虑升级到最新的稳定版本,以获取更好的体验。

    另外,你提到在刷 top 命令时出现 CPU 使用率超过 1100%的情况,这可能是瞬态现象。建议使用其他工具(如 ps )来监控进程的 CPU 使用率,同时长期持续地监控 CPU 使用率变化,从而更好地确认问题所在。
    AlkaidHe
        4
    AlkaidHe  
       2023-03-17 01:43:00 +08:00
    @wtfedc #3 @zhoudaiyu @wtfedc 你看这个就行 相对中肯
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1133 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 23:43 · PVG 07:43 · LAX 15:43 · JFK 18:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.