帮助手册

Kubernetes 调度器监控

Kubernetes 调度器负责根据资源可用性、约束条件和调度策略,将 Pod 分配到最合适的节点上。监控调度器有助于排查 Pod 调度延迟、了解调度瓶颈、检测抢占循环,并确保整个集群的响应能力。

Site24x7 会自动发现 Kubernetes 控制平面中的调度器组件,并收集调度性能、队列延迟、goroutine 活动、工作队列操作和缓存健康状况等关键指标。

前提条件

注意

在启用调度器监控之前,必须在集群上安装并运行 Site24x7 Kubernetes 代理。

查看 Kubernetes 调度器监视器

升级代理后,Site24x7 Kubernetes 监控代理将立即获取所有调度器监控指标。

查看 Kubernetes 调度器监视器的步骤:

  1. 登录您的 Site24x7 账号。
  2. 导航至 K8s,然后选择集群名称。
  3. 单击调度器

这将打开特定集群中的调度器监视器列表。选择任意一个以查看该监视器的详细洞察。

支持的指标

下表列出了从 Kubernetes 调度器收集的所有指标。

利用率

指标名称 描述 单位
Goroutine Runnable Count 上次轮询期间,调度器中处于可运行状态的 goroutine 总数。 Count
Preemption Attempts 上次轮询期间,调度器为满足调度约束而尝试抢占资源的总次数。 Count
Scheduler Pending Pods 上次轮询期间,处于各调度状态(ActiveQ、BackoffQ、Gated UnschedulableFailed Scheduling)的待调度 Pod 数量。 Count
Process Open File Descriptors 上次轮询时,调度器进程打开的文件描述符数量。 Count
Process CPU Time 上次轮询期间,调度器进程消耗的 CPU 时间。 Seconds
Preemption Victim Attempts 上次轮询期间,发生的抢占受害者尝试总次数。 Count
Go 调度延迟
Average Goroutine Scheduling Latency 上次轮询期间,调度器中每个 goroutine 的平均等待时间。 Seconds
Total Goroutine Scheduling Latency 上次轮询期间,goroutine 在调度器中处于可运行状态等待实际运行的总时间。 Seconds
调度器抢占受害者
Average Preemption Victims 上次轮询期间,每次抢占尝试中被抢占的 Pod 平均数量。 Count
Total Preemption Victims 上次轮询期间,被选中的抢占受害者(终止低优先级 Pod 以便高优先级 Pod 在节点上调度的过程)总数。 Count
进程内存使用量
Process Resident Memory 上次轮询期间,调度器进程使用的常驻内存大小(字节)。 Bytes
Process Virtual Memory 上次轮询期间,调度器进程使用的虚拟内存大小(字节)。 Bytes
Go 使用量
Go Threads 上次轮询期间,调度器进程的 Go 运行时创建的操作系统线程数量。 Count
Goroutines 上次轮询期间,调度器进程当前存在的 goroutine 数量。 Count

操作

指标名称 描述 单位
Successfully Scheduled Pods 上次轮询期间,成功调度的 Pod 总数。 Count
Cached Bound Pods 上次轮询期间,调度器缓存中处于假定(已绑定)状态的 Pod 数量。 Count
Total Algorithm Executions 上次轮询期间,调度算法收到的尝试请求总数。 Count
Pod 调度尝试
Average Successful Scheduling Attempts 上次轮询期间,每次尝试中成功调度的 Pod 平均数量。 Count
Total Successful Scheduling Attempts 上次轮询期间,成功调度 Pod 的尝试总次数。 Count
调度尝试
Scheduler Error Attempts 上次轮询期间,调度器尝试调度 Pod 时结果为错误的总次数。 Count
Successful Schedule Attempts 上次轮询期间,调度器尝试调度 Pod 时结果为已调度的总次数。 Count
Scheduler Unscheduled Attempts 上次轮询期间,调度器尝试调度 Pod 时结果为未调度的总次数。 Count
调度器缓存资源
Cached Nodes 上次轮询期间,调度器缓存中的节点数量。 Count
Cached Pods 上次轮询期间,调度器缓存中的 Pod 数量。 Count
调度算法耗时
Average Scheduling Algorithm Duration 上次轮询期间,调度算法处理每个请求的平均耗时。 Seconds
Total Scheduling Algorithm Duration 上次轮询期间,调度算法延迟的总时间(秒)。 Seconds
平均调度尝试耗时
Average Scheduling Duration for Errors 上次轮询期间,结果为错误的调度尝试所花费的平均时间。 Seconds
Average Scheduling Duration for Success 上次轮询期间,结果为已调度的调度尝试所花费的平均时间。 Seconds
Average Scheduling Duration for Unscheduled Attempts 上次轮询期间,结果为未调度的调度尝试所花费的平均时间。 Seconds
总调度尝试耗时
Total Scheduling Duration for Errors 上次轮询期间,调度和绑定过程中以错误状态结束所花费的总时间。 Seconds
Total Scheduling Duration for Success 上次轮询期间,调度和绑定过程中以已调度状态结束所花费的总时间。 Seconds
Total Scheduling Duration for Unscheduled Attempts 上次轮询期间,调度和绑定过程中以未调度状态结束所花费的总时间。 Seconds

调度流程

指标名称 描述 单位
Queue Additions by Event Name 上次轮询期间,按事件名称分组的添加到调度队列的 Pod 总数。 Count
Queue Additions by Queue Type 上次轮询期间,按队列类型分组的添加到调度队列的 Pod 总数。 Count
Average Pod Scheduling Duration by Attempt 上次轮询期间,在给定尝试次数下调度一个 Pod 所花费的平均时间。 Seconds
Successful Schedule Attempts 上次轮询期间,在给定尝试次数下成功调度 Pod 的总数。 Count
Goroutines by Operation 上次轮询期间,按所执行操作(工作)分组的运行中 goroutine 总数。 Count
Unschedulable Pods by Plugin 上次轮询期间,按插件名称分组的不可调度 Pod 总数。 Count

工作队列

指标名称 描述 单位
Total Workqueue Adds 上次轮询期间,按操作名称分组的工作队列处理的添加事件总数。 Count
Workqueue Depth 上次轮询期间,工作队列中等待处理的操作或任务数量。 Count
Average Workqueue Queue Duration 上次轮询期间,一个项目在被取出前在工作队列中等待的平均时间。 Seconds
Average Workqueue Work Duration 上次轮询期间,处理工作队列中一个项目所花费的平均时间。 Seconds
Workqueue Retries 上次轮询期间,按名称分组的工作队列处理的重试总次数。 Count
Workqueue Unfinished Work Duration 尚未被工作耗时捕获的进行中工作的总秒数。数值过高可能表示线程卡住。 Seconds

相关文章

本文档对您有帮助吗?

您愿意帮助我们改进文档吗?请告诉我们哪些方面可以做得更好。


很抱歉本文档未能让您满意。我们希望了解可以从哪些方面改进您的体验。


感谢您抽出时间分享反馈。我们将利用您的反馈来改进在线帮助资源。

短链接已复制!