首页 > 解决方案 > Minikube 与 Virtualbox 或 KVM 在 Centos 7 上使用大量 CPU

问题描述

我已经按照 kubernetes 的说明安装了 minikube。启动它并等待一段时间后,我注意到它正在使用大量 CPU,即使我没有特别运行它。

top显示了这一点:

%Cpu(s):  0.3 us,  7.1 sy,  0.5 ni, 92.1 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem : 32521856 total,  2259992 free,  9882020 used, 20379844 buff/cache
KiB Swap:  2097144 total,   616108 free,  1481036 used. 20583844 avail Mem 

 PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                                     
4847 root      20   0 3741112  91216  37492 S  52.5  0.3   9:57.15 VBoxHeadless  

lscpu显示了这一点:

Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                8
On-line CPU(s) list:   0-7
Thread(s) per core:    2
Core(s) per socket:    4
Socket(s):             1
NUMA node(s):          1
Vendor ID:             AuthenticAMD
CPU family:            21
Model:                 2
Model name:            AMD Opteron(tm) Processor 3365

如果我使用 KVM 而不是 VirtualBox,我会看到相同的效果

kubectl get services

NAME         TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)   AGE
kubernetes   ClusterIP   10.96.0.1    <none>        443/TCP   20m

我安装了metrics-server,它输出了这个:

kubectl top node minikube

NAME       CPU(cores)   CPU%   MEMORY(bytes)   MEMORY%   
minikube   334m         16%    1378Mi          76%

kubectl top pods --all-namespaces

NAMESPACE                NAME                                    CPU(cores)   MEMORY(bytes)   
default                  hello-minikube-56cdb79778-rkdc2         0m           3Mi             
kafka-data-consistency   zookeeper-84fb4cd6f6-sg7rf              1m           36Mi            
kube-system              coredns-fb8b8dccf-2nrl4                 4m           15Mi            
kube-system              coredns-fb8b8dccf-g6llp                 4m           8Mi             
kube-system              etcd-minikube                           38m          41Mi            
kube-system              kube-addon-manager-minikube             31m          6Mi             
kube-system              kube-apiserver-minikube                 59m          186Mi           
kube-system              kube-controller-manager-minikube        22m          41Mi            
kube-system              kube-proxy-m2fdb                        2m           17Mi            
kube-system              kube-scheduler-minikube                 2m           11Mi            
kube-system              kubernetes-dashboard-79dd6bfc48-7l887   1m           25Mi            
kube-system              metrics-server-cfb4b47f6-q64fb          2m           13Mi            
kube-system              storage-provisioner                     0m           23Mi            

问题:

1)是否有可能找出它为什么使用这么多CPU?(请注意,我没有产生任何负载,并且我的容器都没有处理任何数据)

2)这正常吗?

标签: virtualboxkvmminikube

解决方案


你确定什么都没有运行吗?如果你键入会发生什么kubectl get pods --all-namespaces?默认情况下,Kubernetes 只显示默认命名空间内的 Pod(因此不包括系统命名空间内的 Pod)。

此外,虽然我不是 CPU 专家,但对于您拥有的硬件来说,这似乎是一个合理的消耗。


推荐阅读