kubectl top 是 Kubernetes 中的一个命令,用于显示集群中节点和 pod 的资源使用指标。该命令对于监控应用程序的性能和资源消耗至关重要。
以下命令将显示特定命名空间中所有 pod 的当前资源使用情况。
【代码清单】
kubectl top pods -n <namespace>
【执行结果】
NAME CPU(cores) MEMORY(bytes)
nginx-6c5d7c8d6d-2k5x7 50m 128Mi
mysql-5dbb8c7c8d-4j7q2 100m 256Mi
kubectl top pods 命令可提供指定命名空间中每个 pod 的 CPU 和内存使用情况快照。输出包括
NAME(名称): pod 的名称。
CPU(内核): pod 当前使用的 CPU 数量,单位为内核(毫核)。
MEMORY(字节): pod 当前使用的内存量,单位为字节。
该命令对于识别资源瓶颈和确保应用程序高效运行特别有用。通过监控资源使用情况,您可以就扩展应用程序或优化资源分配做出明智的决策。
【小知识】
kubectl top 命令要求在集群中安装 Metrics Server。Metrics Server 会从 Kubelet 收集资源指标,并通过 Kubernetes API 公开这些指标。
你还可以使用 kubectl top nodes 查看集群中每个节点的资源使用情况,这有助于监控集群的整体健康状况。