minikube kubernetes上挂起的pod:cpu不足

minikube kubernetes上挂起的pod:cpu不足,kubernetes,minikube,Kubernetes,Minikube,在本地minikube上运行带有三个服务的应用程序时,安装在具有16个CPU和64 GB内存的服务器上,其中一个副本为2,我仅为每个服务设置resources.limits,如下所示 resources: limits: cpu: "2" memory: "209715200" 所有服务资源限制都是相同的 但是,会出现一些服务挂起 挂起的Pod描述部分输出如下 Limits: cpu: 2 memory: 209715200 Requests: cpu

在本地
minikube
上运行带有
三个服务的应用程序时,安装在具有16个CPU和64 GB内存的服务器上,其中一个
副本为2,我仅为每个服务设置resources.limits,如下所示

resources:
  limits:
    cpu: "2"
    memory: "209715200"
所有服务资源限制都是相同的

但是,会出现一些服务
挂起

挂起的Pod描述部分输出如下

Limits:
  cpu:     2
  memory:  209715200
Requests:
  cpu:     2
  memory:  209715200
...

Events:
  Type     Reason            Age        From               Message
  ----     ------            ----       ----               -------
  Warning  FailedScheduling  <unknown>  default-scheduler  0/1 nodes are available: 1 Insufficient cpu.
  Warning  FailedScheduling  <unknown>  default-scheduler  0/1 nodes are available: 1 Insufficient cpu.
kubectl顶部节点的结果如下

Limits:
  cpu:     2
  memory:  209715200
Requests:
  cpu:     2
  memory:  209715200
...

Events:
  Type     Reason            Age        From               Message
  ----     ------            ----       ----               -------
  Warning  FailedScheduling  <unknown>  default-scheduler  0/1 nodes are available: 1 Insufficient cpu.
  Warning  FailedScheduling  <unknown>  default-scheduler  0/1 nodes are available: 1 Insufficient cpu.
minikube版本

kubectl版本

我很困惑,我的服务器配置应该能够运行此应用程序,但由于CPU不足而挂起


如有任何意见,将不胜感激,提前感谢

如果在VM中运行minikube,它将受到VM CPU数量的限制,而不是主机CPU数量的限制。您可以使用
minikube start--CPU N
以N vCPU开始运行使用库存配置运行minikube不会利用您所有的硬件潜力。Minikube允许您创建所需大小的节点,这一点非常重要,因为除其他应用程序外,大多数人都在工作站上使用Minikube,他们不希望Minikube能够无限制地使用您的硬件

要使用自定义规格启动minikube,您可以按照所述操作,在启动minikube时指定CPU和内存量

$ minikube start --cpus N --memory N
另一个选项是将这些参数设置为默认值:

$ minikube config set cpus N
$ minikube config set memory N 
要检查所有可配置参数,可以运行
minikube config

使用资源有限的节点的另一个原因是,您可以在一台机器上使用具有多个节点和多个集群的minikube集群。 要创建具有多个节点的minikube群集,您可以运行:

$ minikube start -n X
$ minikube node add
$ minikube start -p cluster-name
其中X是所需节点的数量

如果您有一个正在运行的minikube群集,并希望向其中添加另一个节点,则可以运行:

$ minikube start -n X
$ minikube node add
$ minikube start -p cluster-name
要创建辅助minikube群集,您可以运行:

$ minikube start -n X
$ minikube node add
$ minikube start -p cluster-name

其中集群名称是您选择的名称。

如果您
kubectl description node test
它将告诉您计划在那里部署哪些pod(包括系统pod)以及它有多少容量。调度是基于资源请求的,所以即使您的实际CPU利用率很低,因为每个pod请求2个完整的内核,这限制了可以放置的内容。