美文网首页
koordinator 资源限制源码

koordinator 资源限制源码

作者: wwq2020 | 来源:发表于2022-04-07 12:46 被阅读0次

资源限制入口pkg/koordlet/resmanager/cpu_suppress.go中

func (r *CPUSuppress) suppressBECPU() {
  ...
    if nodeSLO.Spec.ResourceUsedThresholdWithBE.CPUSuppressPolicy == slov1alpha1.CPUCfsQuotaPolicy {
        adjustByCfsQuota(suppressCPUQuantity, node)
        r.suppressPolicyStatuses[string(slov1alpha1.CPUCfsQuotaPolicy)] = policyUsing
        r.recoverCPUSetIfNeed()
    } else {
        adjustByCPUSet(suppressCPUQuantity, nodeCPUInfo)
        r.suppressPolicyStatuses[string(slov1alpha1.CPUSetPolicy)] = policyUsing
        r.recoverCFSQuotaIfNeed()
    }
  ...
}

拿cfsquota举例pkg/koordlet/resmanager/cpu_suppress.go中

func adjustByCfsQuota(cpuQuantity *resource.Quantity, node *corev1.Node) {
  ...
    if err := sysutil.CgroupFileWrite(beCgroupPath, sysutil.CPUCFSQuota, strconv.FormatInt(newBeQuota, 10)); err != nil {
        klog.Errorf("suppressBECPU: failed to write cfs_quota_us for offline pods, error: %v", err)
        return
    }
  ...
}

其实最终的操作就是写入相应的值到/sys/fs/cgroup/cpu/kubepods.slice/kubepods-besteffort.slice/cpu.cfs_quota_us这个文件中
由于
1cgroup是层级的,子cgroup会继承父cgroup
2 所有的best effort pod都在此目录下
因此可以限制best effort pod的总cpu开销

相关文章

  • koordinator 资源限制源码

    资源限制入口pkg/koordlet/resmanager/cpu_suppress.go中 拿cfsquota举...

  • koordinator简介

    简介 针对在k8s上运行混合工作负载的基于qos的调度系统 架构 特点 就我个人而言,比较喜欢的是1: 动态调整c...

  • 8. Docker的资源限制

    1 Docker的资源限制 1.1 Docker的资源限制 1.1.1 Docker资源限制介绍 范例: 修改内核...

  • Linux系统调用--getrlimit()与setrlimit

    功能描述: 获取或设定资源使用限制。每种资源都有相关的软硬限制,软限制是内核强加给相应资源的限制值,硬限制是软限制...

  • 限制也是资源,资源也是限制

    2020年四月23日,好久没有写简书了。每天早课两个小时,唤醒女儿早起读书,陪读,做饭。搞孩子学习,自己再喝喝茶,...

  • linux中getrlimit和setrlimit系统调用用法

    功能描述 getrlimit获取或设定资源使用限制,setrlimit设置资源使用限制 每种资源都有相关的软硬限制...

  • Docker资源限制

    Docker资源限制 CGroups:把服务器上的资源以指定的方式进行对docker分配cpu:可压缩型资源,即一...

  • 资源和限制

    做任何事都有资源和限制,知道这事解决了什么问题后,得想明白为了这事儿,1.你的资源是什么,资源的有限性到哪里,2....

  • MySQL打开文件限制

    Linux系统资源限制 Linux会对用户所占用的系统资源进行限制,MySQL运行在Linux系统下也会受此限制。...

  • Linux ulimit 参数

    ulimit 全称 User limits - 限制使用系统范围内资源。 语法 参数 -S 设置资源的软限制。...

网友评论

      本文标题:koordinator 资源限制源码

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