小编Phi*_*uez的帖子

Kubernetes top vs Linux top

Kubernetes top (kubectl top) 命令显示的内存使用情况与在 pod 内运行的 Linux top 命令不同。

我创建了 k8s 部署,其中 YAML 包含这些内存限制:

resources:
  limits:
    cpu: "1"
    memory: 2500Mi
  requests:
    cpu: 200m
    memory: 2Gi
Run Code Online (Sandbox Code Playgroud)

以下命令的输出如图所示:

bash4.4$ kubectl top pod PODNAME 

NAME                     CPU(cores)   MEMORY(bytes)   
openam-d975d46ff-rnp6h   2m           1205Mi
Run Code Online (Sandbox Code Playgroud)

运行 linux top 命令:

Kubectl exec -it PODNAME top 

Mem: 12507456K used, 4377612K free, 157524K shrd, 
187812K buff, 3487744K cached
Run Code Online (Sandbox Code Playgroud)

注意 'free -g' 还显示使用了 11Gb。

问题是这与“kubectl top”相矛盾,后者显示仅使用了 1205 mb。

google-cloud-platform kubernetes

5
推荐指数
1
解决办法
5507
查看次数

标签 统计

google-cloud-platform ×1

kubernetes ×1