这段代码就是讲的如何计算每个容器的oom score的。
首先看这个容器所属的Pod是属于什么级别的,如果是Guaranteed级别的直接返回-998也是最高级最后被Kill掉的,如果是BestEffort级别则直接返回1000是最低级别的,最有可能被杀掉。如果是Burstable则是中间级别需要按照资源的申请量来计算oom score。

oomScoreAdjust := 1000 - (1000*memoryRequest)/memoryCapacity

就是这段公式计算出容器的score,最后得到的值会在2-999之间,从这个公式能够看出来Burstable级别的如果越是资源申请的越多则给的分越低,这就意味着容器越不容易被杀掉,如果是申请量越少得出的分越高则越容易被杀掉。



作者:YiQinGuo
链接:https://www.jianshu.com/p/b330c02a7e62
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐