Kubernetes中此功能的目的是什么?

时间:2019-06-21 16:40:30

标签: kubernetes

我想要以下功能的目的是什么?是否用于资源分配?

我还想知道,kubernetes决定在哪一部分代码中根据资源限制分配资源?我找不到这些代码。请你帮助我好吗?

https://github.com/kubernetes/kubernetes/blob/master/pkg/scheduler/nodeinfo/node_info.go

func calculateResource(pod *v1.Pod) (res Resource, non0CPU int64, non0Mem int64) {
    resPtr := &res
    for _, c := range pod.Spec.Containers {
        resPtr.Add(c.Resources.Requests)

        non0CPUReq, non0MemReq := priorityutil.GetNonzeroRequests(&c.Resources.Requests)
        non0CPU += non0CPUReq
        non0Mem += non0MemReq
        // No non-zero resources for GPUs or opaque resources.
    }

    return
}

1 个答案:

答案 0 :(得分:2)

简而言之,kubelet限制了cgroup的容器资源使用量。您可以通过关键字CgroupConfig进行搜索。

  

kubernetes如何根据资源限制决定分配资源?

ResourceConfigForPod上的详细信息。