kubernetes top查看内存CPU使用情况

打印 上一主题 下一主题

主题 792|帖子 792|积分 2376

1.top简介

k8stop命令我们通常可以基于top命令来查看节点上的资源使用情况,
可以带两个参数nodes和pods,通过这个命令分别用于查看节点和pods的资源使用情况,
这对于我们快速查看k8s集群以及pod的字样利用率,从而提醒业务或者系统管理人员及时的集群扩容,调整Pod的资源请求。
2.metrics-server组件安装

top命令依赖于metrics-server组件,需要提前安装才行
部署文件:https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml
安装: kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml
安装过程中出现一下错误:
1)Back-off pulling image "k8s.gcr.io/metrics-server/metrics-server:v0.6.2"
  如果镜像下载不下来,就需要去国外下载中转过来,我已经中转了该镜像:duruo850/metrics-server:v0.6.2
2)x509: cannot validate certificate for 10.0.22.121 because it doesn't contain any IP SANs
  如果节点没有安装证书,那么先忽略就好,base/deployment.yaml文件的deployment 添加- --kubelet-insecure-tls跳过证书验证
  
节选部分,增加- --kubelet-insecure-tls
  1. apiVersion: apps/v1
  2. kind: Deployment
  3. metadata:
  4.   labels:
  5.     k8s-app: metrics-server
  6.   name: metrics-server
  7.   namespace: kube-system
  8. spec:
  9.   selector:
  10.     matchLabels:
  11.       k8s-app: metrics-server
  12.   strategy:
  13.     rollingUpdate:
  14.       maxUnavailable: 0
  15.   template:
  16.     metadata:
  17.       labels:
  18.         k8s-app: metrics-server
  19.     spec:
  20.       containers:
  21.       - args:
  22.         - --cert-dir=/tmp
  23.         - --secure-port=4443
  24.         - --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
  25.         - --kubelet-use-node-status-port
  26.         - --metric-resolution=15s
  27.         - --kubelet-insecure-tls
  28.         image: k8s.gcr.io/metrics-server/metrics-server:v0.6.2
  29.         imagePullPolicy: IfNotPresent
复制代码
  
3.top命令使用

查看所有节点资源占用:sudo kubectl top nodes
  1.  qiteck@logic:~/program/k8s_1.24.2$ sudo kubectl top nodes
  2. NAME                 CPU(cores)   CPU%   MEMORY(bytes)   MEMORY%
  3. master.cluster.k8s   163m         8%     6429Mi          81%
  4. server               230m         11%    6722Mi          85%
复制代码
查看所有pods资源占用:sudo kubectl top pods --all-namespaces
  1.  qiteck@logic:~/program/k8s_1.24.2$ sudo kubectl top pods --all-namespaces
  2. NAMESPACE     NAME                                         CPU(cores)   MEMORY(bytes)
  3. default       account-6468847985-2fqpf                     1m           50Mi
  4. default       account-6468847985-cxcmh                     1m           48Mi
  5. default       advertise-849b4cb777-8xw4s                   1m           5Mi
  6. default       advertise-849b4cb777-knfrs                   1m           6Mi
  7. default       consul-client-6ln95                          13m          197Mi
  8. default       consul-client-r7bkd                          7m           49Mi
  9. default       consul-server-0                              9m           282Mi
  10. default       consul-server-1                              43m          298Mi
  11. default       consul-server-2                              37m          282Mi
  12. default       count-f85858d45-knlzw                        1m           5Mi
  13. default       count-f85858d45-vk6tg                        1m           6Mi
  14. default       course-78fbc8957d-5vkhv                      2m           43Mi
  15. default       course-78fbc8957d-pvr5w                      1m           43Mi
  16. default       dev-6f444b78cc-7xsf5                         1m           5Mi
  17. default       dev-6f444b78cc-dj996                         1m           6Mi
  18. default       device-79574fbcf6-2zrzg                      1m           64Mi
  19. default       device-79574fbcf6-5ck5f                      1m           59Mi
  20. default       erp-6ff85c8bc5-m547d                         1m           9Mi
  21. default       erp-6ff85c8bc5-xpq9n                         1m           10Mi
  22. default       file-bb5b5c45b-htgnb                         1m           46Mi
  23. default       file-bb5b5c45b-m2dlp                         2m           43Mi
  24. default       game-fff48cb9c-5pb4h                         1m           6Mi
  25. default       game-fff48cb9c-wb8ln                         1m           6Mi
  26. default       gateway-58698f8b57-w2pq5                     3m           90Mi
  27. default       gateway-58698f8b57-z77bk                     3m           85Mi
  28. default       msg-7c67dc656b-mj4gl                         1m           48Mi
  29. default       msg-7c67dc656b-x7kcl                         1m           47Mi
  30. default       omp-55bf7f8696-6gwl9                         1m           147Mi
  31. default       omp-55bf7f8696-szbz5                         1m           146Mi
  32. default       omp2-96c7c4664-9hqfl                         1m           103Mi
  33. default       omp2-96c7c4664-d64qj                         1m           100Mi
  34. default       ota-7446f588d4-7tqb4                         2m           38Mi
  35. default       ota-7446f588d4-p5cv5                         2m           37Mi
  36. default       pns-85d88cd969-b5b6j                         1m           5Mi
  37. default       pns-85d88cd969-lh6vl                         1m           6Mi
  38. default       rcache-c8699444d-n9zh6                       1m           6Mi
  39. default       rcache-c8699444d-tl9ds                       1m           6Mi
  40. default       sport-69fbf7c74b-lbdv2                       1m           45Mi
  41. default       sport-69fbf7c74b-lssj7                       1m           44Mi
  42. default       websocket-55958d78fc-24xw7                   1m           6Mi
  43. default       websocket-55958d78fc-dhqhh                   1m           186Mi
  44. kafka         kafka-0                                      4m           590Mi
  45. kafka         kafka-1                                      4m           582Mi
  46. kafka         kafka-2                                      5m           582Mi
  47. kube-system   coredns-74586cf9b6-8mbqz                     2m           18Mi
  48. kube-system   coredns-74586cf9b6-hz48p                     2m           14Mi
  49. kube-system   etcd-master.cluster.k8s                      14m          57Mi
  50. kube-system   kube-apiserver-master.cluster.k8s            41m          367Mi
  51. kube-system   kube-controller-manager-master.cluster.k8s   11m          53Mi
  52. kube-system   kube-flannel-ds-rt8z5                        3m           14Mi
  53. kube-system   kube-flannel-ds-t6nrc                        2m           14Mi
  54. kube-system   kube-proxy-ngnrv                             1m           20Mi
  55. kube-system   kube-proxy-tjh8h                             1m           20Mi
  56. kube-system   kube-scheduler-master.cluster.k8s            3m           24Mi
  57. kube-system   metrics-server-5ccdd99954-kcmmz              4m           15Mi
  58. zookeeper     zk-0                                         5m           221Mi
  59. zookeeper     zk-1                                         5m           249Mi
  60. zookeeper     zk-2                                         3m           213Mi
复制代码
查看某个pod资源占用:sudo kubectl top pod count-f85858d45-knlzw
  1.  qiteck@logic:~/program/k8s_1.24.2$ sudo kubectl top pod count-f85858d45-knlzw
  2. NAME                    CPU(cores)   MEMORY(bytes)
  3. count-f85858d45-knlzw   1m           5Mi
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

傲渊山岳

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表