Pod是Kubernetes中最小的可部署单元,是一组容器的集合,它们共享存储和网络资源,通常运行在同一个工作节点上。每个Pod都有一个唯一的IP地址和一个DNS名称,可以通过它们进行访问和通信。
Pod监控包含对CPU、物理内存、流量的监控,是保障K8s应用程序稳定性和可靠性的重要任务之一。通过定期监控和分析Pod的资源使用情况,您可以及时发现和解决问题,优化应用程序的运行效率和性能。
功能入口
- 选择目标资源池,并登录APM组件控制台。
- 在左侧导航栏中选择「 应用列表 」。
- 在应用列表中选择您想查看的应用,点击「 应用名称 」打开新的应用详情链接。
- 在左侧导航栏中选择「 应用详情 」,您可以在应用详情页面切换至「 Pod监控 」页签,在左侧关键指标中选择不同的应用实例,可查看该应用实例相应的概览信息。
功能说明
CPU
指Pod中运行的容器所占用的CPU资源,CPU资源的使用情况可以用来评估容器的负载情况,以及调整容器的资源分配。
- CPU配额(CPU Quota) :指为容器分配的CPU资源上限,单位是CPU核数。
- CPU使用量(CPU Usage) :指容器实际使用的CPU资源量,单位是CPU核数。
需注意,使用量不能超过配额。例如,一个Pod的CPU配额为1核,表示该Pod中所有容器的CPU使用量总和不能超过1核。如果容器的CPU使用量超过了配额限制,容器将会被限制在配额范围内运行,超出部分的CPU使用量将会被抛弃。
通过观察CPU配额和CPU使用量可以合理分析CPU资源使用率,避免资源浪费和不足。
物理内存
Pod中运行的容器所占用的物理内存资源,内存资源的使用情况可以用来评估容器的内存使用情况,以及调整容器的资源分配。
- 内存配额(Memory Quota) :指为容器分配的内存资源上限,通常以字节或者二进制字节(Byte、KB、MB、GB等)的形式表示。
- 内存使用量(Memory Usage) :指容器实际使用的内存资源量,通常以字节或者二进制字节(Byte、KB、MB、GB等)的形式表示。
需注意,使用量不能超过配额。例如,一个Pod的内存配额为1GB,表示该Pod中所有容器的内存使用量总和不能超过1GB。如果容器的内存使用量超过了配额限制,容器将会被限制在配额范围内运行,超出部分的内存使用量将会被抛弃。
通过观察物理内存配额及内存使用量,可以帮助用户根据应用程序的实际内存使用情况,合理设置内存配额,以避免内存资源的浪费和不足。
网络流量
网络流量 :Pod中容器的网络数据量,单位是Byte。
- 接收字节数 :也称作入站流量,是指进入容器pod的数据量。
- 发送字节数 :也称作出站流量,是从容器pod发送出去的数据量。
监控网络数据量可以诊断网络性能问题、预测网络容量需求,了解网络的使用情况和资源瓶颈,及时进行网络流量控制和优化,以避免网络拥塞和数据传输失败。
网络数据包
网络数据包 :Pod中容器之间或者容器与外部网络之间进行通信的基本单位。它是在网络中传输的数据的载体,包含了一定的控制信息和有效载荷数据。
- 接收包数 :接收包数是指网络接口(网卡)成功接收到的数据包的总数量。它表示从网络中接收到的数据包的计数。
- 接收丢包数 :接收丢包数指的是在接收过程中丢失的数据包数量。这表示在数据包传输过程中,一些数据包未能成功到达目的地或未能被接收,导致丢包。
- 接收失败数 :接收失败数是指在接收过程中发生的错误数量。这些错误可能与数据包传输、网络协议或硬件设备有关,例如校验错误、帧错误等。
- 发送包数 :发送包数是指通过网络接口成功发送的数据包的总数量。它表示从容器pod发送到网络的数据包的计数。
- 发送丢包数 :发送丢包数指的是在发送过程中丢失的数据包数量。这表示在数据包传输过程中,一些数据包未能成功到达目的地或未能被接收,导致丢包。
- 发送失败数 :发送失败数是指在发送过程中发生的错误数量。这些错误可能与数据包传输、网络协议或硬件设备有关,例如校验错误、帧错误等。
监控网络数据包的数量可以帮助管理员诊断网络性能问题和瓶颈,以及进行容器资源分配和负载均衡的调整。例如,如果某个容器接收到的网络数据包数量过多,可能会导致容器负载过高,需要调整容器资源分配或者优化应用程序的网络使用方式。此外,对于网络数据包的监控还可以帮助管理员检测网络攻击和安全漏洞,以及进行网络流量控制和优化。
统一交互操作说明:
- 将光标移到统计图上,可以查看光标所至时间点的数据详情。
- 单击图标,可以将当前图表放大显示。
- 单击图标,查看该指标在某个时间段的统计情况或对比不同日期同一时间段的统计情况。