ZBLOG

为什么在k8s上跑的容器cpu资源需要配置为100m到300m之间

在 Kubernetes 中,CPU 资源的配置使用单位为 millicore(毫核),即每个 CPU 核心被分成 1000 份。因此,在 Kubernetes 中,1 Core 可以表示为 1000m。

对于容器来说,CPU 的资源是可以进行限制和分配的。当 Pod 内多个容器共享同一个 Node 上的 CPU 时,Kubernetes 使用 CPU 分配策略来保证各个容器之间的公平性和稳定性。而对于单个容器而言,需要根据实际情况来设定其所需的 CPU 资源大小。

那么为什么在 K8s 上跑的容器需要配置为 100m 到 300m 呢?

首先,大量的应用场景表明,在一般情况下大部分应用并不会持续使用到全部可用 CPU 资源,并且很难预测应用程序未来可能出现的负载峰值。因此,在 Kubernetes 中建议将 CPU 资源限制设置在比较低的范围内(例如:100m~300m),以便让系统有更好地控制和调度资源。

其次,在 Kubernetes 集群中运行多个 Pod 和多个 Node 是非常普遍的情况。如果您将某些容器中指定了过高的资源限制,则可能会导致系统无法再给其他 Pod 分配足够资源,从而造成系统的不稳定和崩溃。因此,为了防止出现这种情况,通常建议将 CPU 资源限制设定在相对较低的值。

最后,在 Kubernetes 中还有一些自动扩容机制(例如:HPA、VPA 等),它们会根据实际情况自动调整 Pod 的副本数量和资源分配,以便让应用程序始终处于最优状态。而这些自动化机制需要一个相对合理的 CPU 限制范围来进行调节。

总之,在 Kubernetes 中设置合适的 CPU 限制范围是非常重要的,并且需要根据具体场景和需求进行灵活配置。

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=2648

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?