江
江小南
V1
2022/10/23阅读:52主题:默认主题
【CKA、CKS篇】CKA真题解析——查看Pod的CPU
真题解析
题目:
通过 pod label name=cpu-loader,找到运行时占用大量 CPU 的 pod。
并将占用 CPU 最高的 pod 名称写入文件 /opt/KUTR000401/KUTR00401.txt(已存在)。
考察点:
kubectl top pod -l 命令的使用
解析:
-
找到标签为name=cpu-loader的占用CPU大的Pod,可以使用排序的方式,没有指定命名空间,默认所有。 -
将占用最高CPU的Pod名称写入到/opt/KUTR000401/KUTR00401.txt中。
帮助命令:
根据解析,我们可以通过相应的命令完成操作,在实际的考试中,可以查看帮助文档。
candidate@node01:~$ kubectl top pod -h
Display resource (CPU/memory) usage of pods.
...
Usage:
kubectl top pod [NAME | -l label] [options]
Use "kubectl options" for a list of global command-line options (applies to all commands).
candidate@node01:~$
实际操作:
根据帮助文档将相应的命令补充完整。
candidate@node01:~$ kubectl top pod -l name=cpu-loader --sort-by=cpu -A
NAMESPACE NAME CPU(cores) MEMORY(bytes)
cpu-top redis-test 2m 3Mi
cpu-top nginx-host 0m 3Mi
cpu-top test0 0m 8Mi
candidate@node01:~$
说明:-A表示所有名称空间。
echo "redis-test" > /opt/KUTR000401/KUTR00401.txt
检查验证:
candidate@node01:~$ cat /opt/KUTR000401/KUTR00401.txt
redis-test
candidate@node01:~$
至此这道题目完成。
扩展
-
查看节点的描述信息(Request、Limits等)
# kubectl describe node
candidate@node01:~$ kubectl describe node
Name: master01
Roles: control-plane
...
Name: node01
Roles: <none>
...
Name: node02
Roles: <none>
...
Allocated resources:
(Total limits may be over 100 percent, i.e., overcommitted.)
Resource Requests Limits
-------- -------- ------
cpu 200m (10%) 0 (0%)
memory 290Mi (7%) 0 (0%)
ephemeral-storage 0 (0%) 0 (0%)
hugepages-1Gi 0 (0%) 0 (0%)
hugepages-2Mi 0 (0%) 0 (0%)
Events: <none>
candidate@node01:~$
-
查看节点的资源使用情况
# kubectl top node
candidate@node01:~$ kubectl top node
NAME CPU(cores) CPU% MEMORY(bytes) MEMORY%
master01 137m 6% 1390Mi 36%
node01 77m 3% 1650Mi 43%
node02 62m 3% 979Mi 25%
candidate@node01:~$
-
查看名称空间下 Pod 资源使用情况
# kubectl top pod -n <namespace>
candidate@node01:~$ kubectl top pod
NAME CPU(cores) MEMORY(bytes)
11-factor-app 2m 1Mi
foo 0m 7Mi
front-end-55455ccf94-pjl2m 0m 2Mi
presentation-5f64bd874c-68z8p 0m 2Mi
candidate@node01:~$
-
查看某个Pod的资源使用情况。
# kubectl top pod <podname>
candidate@node01:~$ kubectl top pod 11-factor-app
NAME CPU(cores) MEMORY(bytes)
11-factor-app 2m 1Mi
candidate@node01:~$
-
查看多个 pod 的资源使用情况。
# kubectl top pod |grep -E "<podname1>|<podname2>|…"
candidate@node01:~$ kubectl top pod | grep -E "11-factor-app|front-end-55455ccf94-pjl2m"
11-factor-app 2m 1Mi
front-end-55455ccf94-pjl2m 0m 2Mi
candidate@node01:~$
作者介绍
江
江小南
V1