kubernetes-pod分配CPU和RAM資源以及計算方法


例子:

Containers:
    cpu-ram-demo-container:
     ...
     image: busybox:latest
     resources:
       Limits:
         cpu: 1
         memory: 128Mi
       Requests:
         cpu: 250m
         memory: 64Mi

  

可以理解為:
cpu: 最多使用1個核,最低要求 250/1000 = 1/4 核 (1 = 1000m);可以使用top簡單查看你的機器的cpu總共有多少個核;
memory: 最多使用128M,最低要求64 M;


CPU和RAM單元
CPU資源以cpus為單位。允許小數值。你可以用后綴m來表示mili。例如100m cpu等同於100 milicpu,意思是0.1cpu。
RAM資源以bytes為單位。你可以將RAM表示為純整數或具有這些后綴之一的定點整數:
E, P, T, G, M, K, Ei, Pi, Ti, Gi, Mi, Ki。例如,以下代表大約相同的數值:

128974848, 129e6, 129M , 123Mi

如果你不確定需要請求多少資源,首先你可以發布應用不指定資源,使用資源監控來確定合適的值。
如果容器超出他的RAM限制,它將從內存不足狀態死亡。你可以指定比你期望稍高點的值來提高可靠性。

如果你沒有指定限制和請求:
如果沒有指定RAM限制,Kubernetes對於容器可以使用的RAM沒有上線。容器可以使用所在機器所有的可用RAM資源。類似,如果沒有指定CPU限制,Kubernetes對於CPU資源沒有限制,容器可以使用所在機器所有的可用CPU資源。

默認的限制應用參照默認命名空間的限制范圍。你可以使用kubectl describe limitrange limits來查看默認的限制。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM