我们在AKS上部署了一些东西,我们试图找出为什么默认情况下几乎所有内存都是由系统请求的?首先,我们尝试了一个4GB内存和3个节点的虚拟机。然而,每个节点上90%的内存几乎都被占用了。Ama-logs,ama-metrics大约占用了1350 Mi,而实际上4GB内存中只有2,2Gi可用。甚至降低对这些部署的请求似乎也不起作用,好像它忽略了我们对资源的更改。这是强制性的运行,我们可以关闭它吗?
dtcbnfnu1#
Kubernetes在每个节点上运行服务,并为这些服务保留一部分内存。根据文件:AKS使用节点资源来帮助节点作为群集的一部分运行。这种使用可能会在节点的总资源和AKS中的可分配资源之间产生差异。在为用户部署的Pod设置请求和限制时,请记住此信息。使用诸如Container Insights(OMS)之类的AKS加载项将消耗额外的节点资源AKS使用的存储器包括两个值的总和。
无法更改以上资源预留。例如,如果节点提供7 GB,则它将报告34%的内存不可分配,包括750Mi硬回收阈值。0.75+(0.25 * 4)+(0.20 * 3)= 0.75 GB +1 GB +0.6 GB = 2.35 GB/7 GB = 33.57%保留空间除了为Kubernetes本身预留之外,底层节点OS还预留一定量的CPU和内存资源以维护OS功能。
1条答案
按热度按时间dtcbnfnu1#
Kubernetes在每个节点上运行服务,并为这些服务保留一部分内存。
根据文件:
AKS使用节点资源来帮助节点作为群集的一部分运行。这种使用可能会在节点的总资源和AKS中的可分配资源之间产生差异。在为用户部署的Pod设置请求和限制时,请记住此信息。
使用诸如Container Insights(OMS)之类的AKS加载项将消耗额外的节点资源
AKS使用的存储器包括两个值的总和。
无法更改以上资源预留。
例如,如果节点提供7 GB,则它将报告34%的内存不可分配,包括750Mi硬回收阈值。
0.75+(0.25 * 4)+(0.20 * 3)= 0.75 GB +1 GB +0.6 GB = 2.35 GB/7 GB = 33.57%保留空间
除了为Kubernetes本身预留之外,底层节点OS还预留一定量的CPU和内存资源以维护OS功能。