简体   繁体   English

具有单核进程的异构 Kubernetes 集群上的最大 CPU 利用率

[英]Max CPU utilization on heterogeneous Kubernetes cluster with single-core process

According to the Kubernetes docs a cluster can have up to 5000 nodes.根据 Kubernetes 文档,一个集群最多可以有 5000 个节点。 Imagine I have then node0 with 1CPU, node1 with 2CPU, etc.想象一下,我有 1CPU 的 node0,2CPU 的 node1,等等。

Let's say I have a single-core, synchronous process which I want to run instances of.假设我有一个要运行其实例的单核同步进程。 Am I then limited by the smallest node in a heterogeneous cluster of nodes?那么我是否受到异构节点集群中最小节点的限制? If not, can I enforce choosing the node largest CPU (which would then limit me to the single node) or smallest CPU (which would then allow seamless and consistent parallel execution) or will Kubernetes do it in the background?如果不是,我是否可以强制选择节点最大的 CPU(然后将我限制为单个节点)或最小的 CPU(然后允许无缝且一致的并行执行),或者 Kubernetes 会在后台执行吗?

Am I then limited by the smallest node in a heterogeneous cluster of nodes?那么我是否受到异构节点集群中最小节点的限制? If not, can I enforce choosing the node largest CPU (which would then limit me to the single node) or smallest CPU (which would then allow seamless and consistent parallel execution) or will Kubernetes do it in the background?如果不是,我是否可以强制选择节点最大的 CPU(然后将我限制为单个节点)或最小的 CPU(然后允许无缝且一致的并行执行),或者 Kubernetes 会在后台执行吗?

The scheduler does not have insight about what instances you use.调度程序不了解您使用的实例。 So it will schedule the app to any node.因此它将应用程序调度到任何节点。

You can use Taints and Tolerations to classify the nodes and then you can declare to what kind of nodes you want your app to run on by setting tolerations .您可以使用Taints 和 Tolerations对节点进行分类,然后您可以通过设置tolerations来声明您希望应用程序在哪种节点上运行。 Or alternatively use nodeSelector and labels on nodes.或者在节点上使用nodeSelector和标签。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM