Kubernetes指标的语义约定
状态: 开发中
K8s 指标
本文档描述了 OpenTelemetry 中常见 K8s 级别指标的仪器和属性。这些指标从特定技术、定义明确的 API(例如 Kubelet 的 API)收集。
k8s. 仪器中的指标应附加到 K8s 资源,因此继承其属性,例如 k8s.pod.name 和 k8s.pod.uid。
Pod 指标
描述: Pod 级别的指标,捕获在 k8s.pod 命名空间下。
指标: k8s.pod.uptime
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.uptime | Gauge | s | Pod 运行的时间。 [1] | k8s.pod |
[1]: 观测点 SHOULD 使用类型为 double 的 gauge,并以秒为单位测量运行时间,作为具有最高可用精度的浮点数。实际精度取决于观测点和操作系统。
指标: k8s.pod.phase
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.status.phase | UpDownCounter | {pod} | 描述当前处于给定阶段的 K8s Pod 的数量。 [1] | k8s.pod |
[1]: 为了避免遗漏指标,所有可能的 Pod 阶段将在每个时间间隔内报告。只有与当前阶段对应的值才非零。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.pod.status.phase | 必需 | 字符串 | Pod 的阶段。对应于: K8s PodStatus 的 phase 字段 | Pending; Running |
k8s.pod.status.phase 具有以下一系列预定义值。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
失败 | Pod 中的所有容器已终止,并且至少有一个容器因失败而终止(退出代码非零或被系统停止)。 | |
Pending | Pod 已被系统接受,但其中一个或多个容器尚未启动。这包括绑定到节点之前的时间,以及拉取镜像到主机上的时间。 | |
Running | Pod 已绑定到节点,并且所有容器都已启动。至少有一个容器仍在运行或正在被重新启动。 | |
Succeeded | Pod 中的所有容器已自愿终止,退出代码为 0,并且系统不会重新启动这些容器。 | |
Unknown | 由于某些原因,无法获取 Pod 的状态,通常是因为与 Pod 所属主机通信时发生错误。 |
指标: k8s.pod.status.reason
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.status.reason | UpDownCounter | {pod} | 描述当前处于给定原因状态的 K8s Pod 的数量。 [1] | k8s.pod |
[1]: 为了避免遗漏指标,所有可能的 Pod 状态原因将在每个时间间隔内报告。只有与当前原因对应的值才非零。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.pod.status.reason | 必需 | 字符串 | Pod 状态的原因。对应于: K8s PodStatus 的 reason 字段 | Evicted; NodeAffinity |
k8s.pod.status.reason 具有以下一系列预定义值。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
Evicted | Pod 被驱逐。 | |
NodeAffinity | Pod 由于其节点亲和性处于某种状态 | |
NodeLost | 当 Kubelet 在其运行(或曾运行)的节点上无响应时,Pod 的原因。 | |
Shutdown | 节点已关机 | |
UnexpectedAdmissionError | Pod 因无法归类的拒绝错误而被拒绝加入节点。 |
指标: k8s.pod.cpu.time
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.cpu.time | Counter | s | 消耗的总 CPU 时间。 [1] | k8s.pod |
[1]: 特定 Pod 在所有可用 CPU 核心上消耗的总 CPU 时间
指标: k8s.pod.cpu.usage
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.cpu.usage | Gauge | {cpu} | Pod 的 CPU 使用率,以 cpus 为单位。范围从 0 到可分配的 CPU 数量。 [1] |
[1]: 特定 Pod 在所有可用 CPU 核心上的 CPU 使用率,在采样窗口内取平均值
指标: k8s.pod.memory.usage
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.memory.usage | Gauge | 每个调用的最大内存使用量的分布。 | Pod 的内存使用量。 [1] | k8s.pod |
[1]: Pod 的总内存使用量
指标: k8s.pod.memory.available
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.memory.available | UpDownCounter | 每个调用的最大内存使用量的分布。 | Pod 可用内存。 [1] | k8s.pod |
[1]: 可供使用的内存。定义为内存限制 - workingSetBytes。如果内存限制未定义,则省略可用字节。此指标源自 Kubelet 统计 API 的 PodStats.Memory 中的 MemoryStats.AvailableBytes 字段。
指标: k8s.pod.memory.rss
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.memory.rss | UpDownCounter | 每个调用的最大内存使用量的分布。 | Pod 内存 RSS。 [1] | k8s.pod |
[1]: 匿名内存和交换缓存内存量(包括透明大页)。此指标源自 Kubelet 统计 API 的 PodStats.Memory 中的 MemoryStats.RSSBytes 字段。
指标: k8s.pod.memory.working_set
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.memory.working_set | UpDownCounter | 每个调用的最大内存使用量的分布。 | Pod 内存工作集。 [1] | k8s.pod |
[1]: 工作集内存的量。这包括最近访问的内存、脏内存和内核内存。WorkingSetBytes 小于等于 UsageBytes。此指标源自 Kubelet 统计 API 的 PodStats.Memory 中的 MemoryStats.WorkingSetBytes 字段。
指标: k8s.pod.memory.paging.faults
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.memory.paging.faults | Counter | {fault} | Pod 内存分页错误。 [1] | k8s.pod |
[1]: 主要/次要页面错误的累积数量。此指标源自 Kubelet 统计 API 的 PodStats.Memory 中的 MemoryStats.PageFaults 和 MemoryStats.MajorPageFaults 字段。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
system.paging.fault.type | 推荐 | 字符串 | 分页错误类型 | minor |
system.paging.fault.type 具有以下已知值列表。如果其中一个适用,则必须使用相应的值;否则,可以(MAY)使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
major | major | |
minor | minor |
指标: k8s.pod.network.io
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.network.io | Counter | 每个调用的最大内存使用量的分布。 | Pod 的网络字节。 | k8s.pod |
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
network.interface.name | 推荐 | 字符串 | 网络接口名称。 | lo; eth0 | |
network.io.direction | 推荐 | 字符串 | 网络 IO 操作方向。 | transmit |
network.io.direction 具有以下已知值列表。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
receive | receive | |
transmit | transmit |
指标: k8s.pod.network.errors
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.network.errors | Counter | {error} | Pod 网络错误。 | k8s.pod |
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
network.interface.name | 推荐 | 字符串 | 网络接口名称。 | lo; eth0 | |
network.io.direction | 推荐 | 字符串 | 网络 IO 操作方向。 | transmit |
network.io.direction 具有以下已知值列表。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
receive | receive | |
transmit | transmit |
指标: k8s.pod.filesystem.available
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.filesystem.available | UpDownCounter | 每个调用的最大内存使用量的分布。 | Pod 文件系统可用字节。 [1] | k8s.pod |
[1]: 此指标源自 Kubelet 统计 API 的 PodStats.EphemeralStorage 中的 FsStats.AvailableBytes 字段。
指标: k8s.pod.filesystem.capacity
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.filesystem.capacity | UpDownCounter | 每个调用的最大内存使用量的分布。 | Pod 文件系统容量。 [1] | k8s.pod |
[1]: 此指标源自 Kubelet 统计 API 的 PodStats.EphemeralStorage 中的 FsStats.CapacityBytes 字段。
指标: k8s.pod.filesystem.usage
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.filesystem.usage | UpDownCounter | 每个调用的最大内存使用量的分布。 | Pod 文件系统使用量。 [1] | k8s.pod |
[1]: 此值可能不等于 capacity - available。
此指标源自 Kubelet 统计 API 的 PodStats.EphemeralStorage 中的 FsStats.UsedBytes 字段。
指标: k8s.pod.volume.available
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.volume.available | UpDownCounter | 每个调用的最大内存使用量的分布。 | Pod 卷存储空间可用。 [1] | k8s.pod |
[1]: 此指标源自 Kubelet 统计 API 的 PodStats 中的 VolumeStats.AvailableBytes 字段。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.volume.name | 必需 | 字符串 | K8s 卷的名称。 | volume0 | |
k8s.volume.type | 推荐 | 字符串 | K8s 卷的类型。 | emptyDir; persistentVolumeClaim |
k8s.volume.type 具有以下一系列预定义值。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
configMap | 一个 configMap 卷 | |
downwardAPI | 一个 downwardAPI 卷 | |
emptyDir | 一个 emptyDir 卷 | |
local | 一个 local 卷 | |
persistentVolumeClaim | 一个 persistentVolumeClaim 卷 | |
secret | 一个 secret 卷 |
指标: k8s.pod.volume.capacity
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.volume.capacity | UpDownCounter | 每个调用的最大内存使用量的分布。 | Pod 卷总容量。 [1] | k8s.pod |
[1]: 此指标源自 Kubelet 统计 API 的 PodStats 中的 VolumeStats.CapacityBytes 字段。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.volume.name | 必需 | 字符串 | K8s 卷的名称。 | volume0 | |
k8s.volume.type | 推荐 | 字符串 | K8s 卷的类型。 | emptyDir; persistentVolumeClaim |
k8s.volume.type 具有以下一系列预定义值。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
configMap | 一个 configMap 卷 | |
downwardAPI | 一个 downwardAPI 卷 | |
emptyDir | 一个 emptyDir 卷 | |
local | 一个 local 卷 | |
persistentVolumeClaim | 一个 persistentVolumeClaim 卷 | |
secret | 一个 secret 卷 |
指标: k8s.pod.volume.usage
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.volume.usage | UpDownCounter | 每个调用的最大内存使用量的分布。 | Pod 卷使用量。 [1] | k8s.pod |
[1]: 此值可能不等于 capacity - available。
此指标源自 Kubelet 统计 API 的 PodStats 中的 VolumeStats.UsedBytes 字段。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.volume.name | 必需 | 字符串 | K8s 卷的名称。 | volume0 | |
k8s.volume.type | 推荐 | 字符串 | K8s 卷的类型。 | emptyDir; persistentVolumeClaim |
k8s.volume.type 具有以下一系列预定义值。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
configMap | 一个 configMap 卷 | |
downwardAPI | 一个 downwardAPI 卷 | |
emptyDir | 一个 emptyDir 卷 | |
local | 一个 local 卷 | |
persistentVolumeClaim | 一个 persistentVolumeClaim 卷 | |
secret | 一个 secret 卷 |
指标: k8s.pod.volume.inode.count
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.volume.inode.count | UpDownCounter | {inode} | Pod 卷文件系统中的总 inode 数量。 [1] | k8s.pod |
[1]: 此指标源自 Kubelet 统计 API 的 PodStats 中的 VolumeStats.Inodes 字段。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.volume.name | 必需 | 字符串 | K8s 卷的名称。 | volume0 | |
k8s.volume.type | 推荐 | 字符串 | K8s 卷的类型。 | emptyDir; persistentVolumeClaim |
k8s.volume.type 具有以下一系列预定义值。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
configMap | 一个 configMap 卷 | |
downwardAPI | 一个 downwardAPI 卷 | |
emptyDir | 一个 emptyDir 卷 | |
local | 一个 local 卷 | |
persistentVolumeClaim | 一个 persistentVolumeClaim 卷 | |
secret | 一个 secret 卷 |
指标: k8s.pod.volume.inode.used
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.volume.inode.used | UpDownCounter | {inode} | Pod 卷文件系统使用的 inode 数量。 [1] | k8s.pod |
[1]: 此指标源自 Kubelet 统计 API 的 PodStats 中的 VolumeStats.InodesUsed 字段。
这可能不等于 inodes - free,因为文件系统可能与其他文件系统共享 inode。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.volume.name | 必需 | 字符串 | K8s 卷的名称。 | volume0 | |
k8s.volume.type | 推荐 | 字符串 | K8s 卷的类型。 | emptyDir; persistentVolumeClaim |
k8s.volume.type 具有以下一系列预定义值。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
configMap | 一个 configMap 卷 | |
downwardAPI | 一个 downwardAPI 卷 | |
emptyDir | 一个 emptyDir 卷 | |
local | 一个 local 卷 | |
persistentVolumeClaim | 一个 persistentVolumeClaim 卷 | |
secret | 一个 secret 卷 |
指标: k8s.pod.volume.inode.free
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.pod.volume.inode.free | UpDownCounter | {inode} | Pod 卷文件系统中的可用 inode 数量。 [1] | k8s.pod |
[1]: 此指标源自 Kubelet 统计 API 的 PodStats 中的 VolumeStats.InodesFree 字段。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.volume.name | 必需 | 字符串 | K8s 卷的名称。 | volume0 | |
k8s.volume.type | 推荐 | 字符串 | K8s 卷的类型。 | emptyDir; persistentVolumeClaim |
k8s.volume.type 具有以下一系列预定义值。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
configMap | 一个 configMap 卷 | |
downwardAPI | 一个 downwardAPI 卷 | |
emptyDir | 一个 emptyDir 卷 | |
local | 一个 local 卷 | |
persistentVolumeClaim | 一个 persistentVolumeClaim 卷 | |
secret | 一个 secret 卷 |
容器指标
描述: 容器级别的指标,捕获在 k8s.container 命名空间下。
指标: k8s.container.status.state
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.container.status.state | UpDownCounter | {container} | 描述当前处于给定状态的 K8s 容器的数量。 [1] | k8s.container |
[1]: 为了避免遗漏指标,所有可能的容器状态将在每个时间间隔内报告。只有与当前状态对应的值才非零。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.container.status.state | 必需 | 字符串 | 容器的状态。 K8s ContainerState | terminated; running; waiting |
k8s.container.status.state 具有以下一系列预定义值。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
running | 容器正在运行。 | |
terminated | 容器已终止。 | |
waiting | 容器正在等待。 |
指标: k8s.container.status.reason
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.container.status.reason | UpDownCounter | {container} | 描述当前处于给定原因状态的 K8s 容器的数量。 [1] | k8s.container |
[1]: 为了避免遗漏指标,所有可能的容器状态原因将在每个时间间隔内报告。只有与当前状态原因对应的值才非零。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.container.status.reason | 必需 | 字符串 | 容器状态的原因。对应于: K8s ContainerStateWaiting 或 K8s ContainerStateTerminated 的 reason 字段 | ContainerCreating; CrashLoopBackOff; CreateContainerConfigError; ErrImagePull; ImagePullBackOff; OOMKilled; Completed; Error; ContainerCannotRun |
k8s.container.status.reason 具有以下一系列预定义值。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
Completed | 容器已完成执行。 | |
ContainerCannotRun | 容器无法运行。 | |
ContainerCreating | 容器正在创建中。 | |
CrashLoopBackOff | 容器处于崩溃循环回退状态。 | |
CreateContainerConfigError | 创建容器配置时发生错误。 | |
ErrImagePull | 拉取容器镜像时发生错误。 | |
Error | 容器出现错误。 | |
ImagePullBackOff | 容器镜像拉取处于回退状态。 | |
OOMKilled | 容器因内存不足而被终止。 |
节点指标
描述: 节点级别的指标,捕获在 k8s.node 命名空间下。
指标: k8s.node.uptime
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.node.uptime | Gauge | s | 节点运行的时间。 [1] | k8s.node |
[1]: 观测点 SHOULD 使用类型为 double 的 gauge,并以秒为单位测量运行时间,作为具有最高可用精度的浮点数。实际精度取决于观测点和操作系统。
指标: k8s.node.cpu.allocatable
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.node.cpu.allocatable | UpDownCounter | {cpu} | 节点上可分配的 CPU 量。 | k8s.node |
指标: k8s.node.memory.allocatable
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.node.memory.allocatable | UpDownCounter | 每个调用的最大内存使用量的分布。 | 节点上可分配的内存量。 | k8s.node |
指标: k8s.node.ephemeral_storage.allocatable
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.node.ephemeral_storage.allocatable | UpDownCounter | 每个调用的最大内存使用量的分布。 | 节点上可分配的临时存储量。 | k8s.node |
指标: k8s.node.pod.allocatable
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.node.pod.allocatable | UpDownCounter | {pod} | 节点上可分配的 Pod 数量。 | k8s.node |
指标: k8s.node.condition.status
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.node.condition.status | UpDownCounter | {node} | 描述特定节点的状况。 [1] | k8s.node |
[1]: 为了避免遗漏指标,所有可能的节点状况对(类型和状态)将在每个时间间隔内报告。与当前状况状态相对应的状况对将非零。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.node.condition.status | 必需 | 字符串 | 状况的状态,为 True、False、Unknown 之一。 [1] | true; false; unknown | |
k8s.node.condition.type | 必需 | 字符串 | K8s 节点的状况类型。 [2] | Ready; DiskPressure |
[1] k8s.node.condition.status: 此属性与 NodeCondition 的 status 字段对齐
[2] k8s.node.condition.type: K8s 节点状况,如 K8s 文档所述。
此属性与 NodeCondition 的 type 字段对齐
可能的值集不限于此处列出的值。托管的 Kubernetes 环境或自定义控制器可能会引入其他节点状况类型。发生这种情况时,应使用 Kubernetes API 报告的精确值。
k8s.node.condition.status 具有以下一系列预定义值。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
false | condition_false | |
true | condition_true | |
unknown | condition_unknown |
k8s.node.condition.type 具有以下一系列预定义值。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
DiskPressure | 磁盘空间存在压力——即,如果磁盘容量不足 | |
MemoryPressure | 节点内存存在压力——即,如果节点内存不足 | |
NetworkUnavailable | 节点的网络未正确配置 | |
PIDPressure | 进程存在压力——即,如果节点上的进程过多 | |
Ready | 节点健康且准备好接受 Pod |
指标: k8s.node.cpu.time
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.node.cpu.time | Counter | s | 消耗的总 CPU 时间。 [1] | k8s.node |
[1]: 特定节点在所有可用 CPU 核心上消耗的总 CPU 时间
指标: k8s.node.cpu.usage
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.node.cpu.usage | Gauge | {cpu} | 节点 CPU 使用率,以 cpus 为单位。范围从 0 到可分配的 CPU 数量。 [1] | k8s.node |
[1]: 特定节点在所有可用 CPU 核心上的 CPU 使用率,在采样窗口内取平均值
指标: k8s.node.memory.usage
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.node.memory.usage | Gauge | 每个调用的最大内存使用量的分布。 | 节点的内存使用量。 [1] | k8s.node |
[1]: 节点的总内存使用量
指标: k8s.node.memory.available
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.node.memory.available | UpDownCounter | 每个调用的最大内存使用量的分布。 | 节点可用内存。 [1] | k8s.node |
[1]: 可用内存。此指标定义为内存限制 - 工作集字节数。如果内存限制未定义,则可用字节数将被省略。此指标源自 Kubelet 统计信息 API 的 NodeStats.Memory 的 MemoryStats.AvailableBytes 字段。
指标:k8s.node.memory.rss
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.node.memory.rss | UpDownCounter | 每个调用的最大内存使用量的分布。 | 节点内存 RSS。[1] | k8s.node |
[1]: 匿名内存和交换缓存内存(包括透明巨页)的数量。此指标源自 Kubelet 统计信息 API 的 NodeStats.Memory 的 MemoryStats.RSSBytes 字段。
指标:k8s.node.memory.working_set
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.node.memory.working_set | UpDownCounter | 每个调用的最大内存使用量的分布。 | 节点内存工作集。[1] | k8s.node |
[1]: 工作集内存的数量。这包括最近访问的内存、脏内存和内核内存。WorkingSetBytes 小于或等于 UsageBytes。此指标源自 Kubelet 统计信息 API 的 NodeStats.Memory 的 MemoryStats.WorkingSetBytes 字段。
指标:k8s.node.memory.paging.faults
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.node.memory.paging.faults | Counter | {fault} | 节点内存分页错误。[1] | k8s.node |
[1]: 主要/次要页面错误的总数。此指标源自 Kubelet 统计信息 API 的 NodeStats.Memory 的 MemoryStats.PageFaults 和 MemoryStats.MajorPageFaults 字段。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
system.paging.fault.type | 推荐 | 字符串 | 分页错误类型 | minor |
system.paging.fault.type 具有以下已知值列表。如果其中一个适用,则必须使用相应的值;否则,可以(MAY)使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
major | major | |
minor | minor |
指标:k8s.node.network.io
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.node.network.io | Counter | 每个调用的最大内存使用量的分布。 | 节点的网络字节数。 | k8s.node |
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
network.interface.name | 推荐 | 字符串 | 网络接口名称。 | lo; eth0 | |
network.io.direction | 推荐 | 字符串 | 网络 IO 操作方向。 | transmit |
network.io.direction 具有以下已知值列表。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
receive | receive | |
transmit | transmit |
指标:k8s.node.network.errors
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.node.network.errors | Counter | {error} | 节点网络错误。 | k8s.node |
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
network.interface.name | 推荐 | 字符串 | 网络接口名称。 | lo; eth0 | |
network.io.direction | 推荐 | 字符串 | 网络 IO 操作方向。 | transmit |
network.io.direction 具有以下已知值列表。如果其中一个适用,则必须使用相应的值;否则,可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
receive | receive | |
transmit | transmit |
指标:k8s.node.filesystem.available
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.node.filesystem.available | UpDownCounter | 每个调用的最大内存使用量的分布。 | 节点文件系统可用字节数。[1] | k8s.node |
[1]: 此指标源自 Kubelet 统计信息 API 的 NodeStats.Fs 的 FsStats.AvailableBytes 字段。
指标:k8s.node.filesystem.capacity
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.node.filesystem.capacity | UpDownCounter | 每个调用的最大内存使用量的分布。 | 节点文件系统容量。[1] | k8s.node |
[1]: 此指标源自 Kubelet 统计信息 API 的 NodeStats.Fs 的 FsStats.CapacityBytes 字段。
指标:k8s.node.filesystem.usage
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.node.filesystem.usage | UpDownCounter | 每个调用的最大内存使用量的分布。 | 节点文件系统使用情况。[1] | k8s.node |
[1]: 此值可能不等于 capacity - available。
此指标源自 Kubelet 统计信息 API 的 NodeStats.Fs 的 FsStats.UsedBytes 字段。
部署指标
描述:在 k8s.deployment 命名空间下捕获的部署级别指标。
指标:k8s.deployment.pod.desired
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.deployment.pod.desired | UpDownCounter | {pod} | 此部署中所需的副本 Pod 数量。[1] | k8s.deployment |
[1]: 此指标与 K8s DeploymentSpec 的 replicas 字段对齐。
指标:k8s.deployment.pod.available
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.deployment.pod.available | UpDownCounter | {pod} | 此部署定位的可用副本 Pod 总数(至少 minReadySeconds 已准备好)。[1] | k8s.deployment |
[1]: 此指标与 K8s DeploymentStatus 的 availableReplicas 字段对齐。
ReplicaSet 指标
描述:在 k8s.replicaset 命名空间下捕获的 ReplicaSet 级别指标。
指标:k8s.replicaset.pod.desired
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.replicaset.pod.desired | UpDownCounter | {pod} | 此 ReplicaSet 中所需的副本 Pod 数量。[1] | k8s.replicaset |
[1]: 此指标与 K8s ReplicaSetSpec 的 replicas 字段对齐。
指标:k8s.replicaset.pod.available
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.replicaset.pod.available | UpDownCounter | {pod} | 此 ReplicaSet 定位的可用副本 Pod 总数(至少 minReadySeconds 已准备好)。[1] | k8s.replicaset |
[1]: 此指标与 K8s ReplicaSetStatus 的 availableReplicas 字段对齐。
ReplicationController 指标
描述:在 k8s.replicationcontroller 命名空间下捕获的 ReplicationController 级别指标。
指标:k8s.replicationcontroller.pod.desired
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.replicationcontroller.pod.desired | UpDownCounter | {pod} | 此 ReplicationController 中所需的副本 Pod 数量。[1] | k8s.replicationcontroller |
[1]: 此指标与 K8s ReplicationControllerSpec 的 replicas 字段对齐。
指标:k8s.replicationcontroller.pod.available
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.replicationcontroller.pod.available | UpDownCounter | {pod} | 此 ReplicationController 定位的可用副本 Pod 总数(至少 minReadySeconds 已准备好)。[1] | k8s.replicationcontroller |
[1]: 此指标与 K8s ReplicationControllerStatus 的 availableReplicas 字段对齐。
StatefulSet 指标
描述:在 k8s.statefulset 命名空间下捕获的 StatefulSet 级别指标。
指标:k8s.statefulset.pod.desired
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.statefulset.pod.desired | UpDownCounter | {pod} | 此 StatefulSet 中所需的副本 Pod 数量。[1] | k8s.statefulset |
[1]: 此指标与 K8s StatefulSetSpec 的 replicas 字段对齐。
指标:k8s.statefulset.pod.ready
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.statefulset.pod.ready | UpDownCounter | {pod} | 此 StatefulSet 创建的、具有 ReadyCondition 的副本 Pod 数量。[1] | k8s.statefulset |
[1]: 此指标与 K8s StatefulSetStatus 的 readyReplicas 字段对齐。
指标:k8s.statefulset.pod.current
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.statefulset.pod.current | UpDownCounter | {pod} | StatefulSet 控制器根据 currentRevision 指示的 StatefulSet 版本创建的副本 Pod 数量。[1] | k8s.statefulset |
[1]: 此指标与 K8s StatefulSetStatus 的 currentReplicas 字段对齐。
指标:k8s.statefulset.pod.updated
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.statefulset.pod.updated | UpDownCounter | {pod} | StatefulSet 控制器根据 updateRevision 指示的 StatefulSet 版本创建的副本 Pod 数量。[1] | k8s.statefulset |
[1]: 此指标与 K8s StatefulSetStatus 的 updatedReplicas 字段对齐。
HorizontalPodAutoscaler 指标
描述:在 k8s.hpa 命名空间下捕获的 HorizontalPodAutoscaler 级别指标。
指标:k8s.hpa.pod.desired
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.hpa.pod.desired | UpDownCounter | {pod} | 由此 Horizontal Pod Autoscaler 管理的所需副本 Pod 数量,这是由 autoscaler 最后计算得出的。[1] | k8s.hpa |
[1]: 此指标与 K8s HorizontalPodAutoscalerStatus 的 desiredReplicas 字段对齐。
指标:k8s.hpa.pod.current
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.hpa.pod.current | UpDownCounter | {pod} | 由此 Horizontal Pod Autoscaler 管理的当前副本 Pod 数量,这是由 autoscaler 最后看到的。[1] | k8s.hpa |
[1]: 此指标与 K8s HorizontalPodAutoscalerStatus 的 currentReplicas 字段对齐。
指标:k8s.hpa.pod.max
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.hpa.pod.max | UpDownCounter | {pod} | autoscaler 可以向上扩展到的副本 Pod 数量的上限。[1] | k8s.hpa |
[1]: 此指标与 K8s HorizontalPodAutoscalerSpec 的 maxReplicas 字段对齐。
指标:k8s.hpa.pod.min
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.hpa.pod.min | UpDownCounter | {pod} | autoscaler 可以向下扩展到的副本 Pod 数量的下限。[1] | k8s.hpa |
[1]: 此指标与 K8s HorizontalPodAutoscalerSpec 的 minReplicas 字段对齐。
指标:k8s.hpa.metric.target.cpu.value
此指标为 opt-in。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.hpa.metric.target.cpu.value | Gauge | {cpu} | HPA 配置中 CPU 资源的目标值。[1] | k8s.hpa; k8s.namespace |
[1]: 此指标与 K8s HPA MetricTarget 的 value 字段对齐。如果指标类型为 ContainerResource,则必须设置 k8s.container.name 属性以标识指标适用的 Pod 内的特定容器。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.container.name | 有条件地必需 [1] | 字符串 | Pod 规范中容器的名称,在 Pod 中必须是唯一的。容器运行时通常使用不同的全局唯一名称(container.name)。 | redis | |
k8s.hpa.metric.type | 推荐 | 字符串 | Horizontal Pod Autoscaler 的指标源类型。[2] | Resource; ContainerResource |
[1] k8s.container.name: 仅当 k8s.hpa.metric.type 为 ContainerResource 时。
[2] k8s.hpa.metric.type: 此属性反映了 HPA 中 spec.metrics[] 的 type 字段。
指标:k8s.hpa.metric.target.cpu.average_value
此指标为 opt-in。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.hpa.metric.target.cpu.average_value | Gauge | {cpu} | HPA 配置中 CPU 资源的目标平均值。[1] | k8s.hpa; k8s.namespace |
[1]: 此指标与 K8s HPA MetricTarget 的 averageValue 字段对齐。如果指标类型为 ContainerResource,则必须设置 k8s.container.name 属性以标识指标适用的 Pod 内的特定容器。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.container.name | 有条件地必需 [1] | 字符串 | Pod 规范中容器的名称,在 Pod 中必须是唯一的。容器运行时通常使用不同的全局唯一名称(container.name)。 | redis | |
k8s.hpa.metric.type | 推荐 | 字符串 | Horizontal Pod Autoscaler 的指标源类型。[2] | Resource; ContainerResource |
[1] k8s.container.name: 仅当 k8s.hpa.metric.type 为 ContainerResource 时。
[2] k8s.hpa.metric.type: 此属性反映了 HPA 中 spec.metrics[] 的 type 字段。
指标:k8s.hpa.metric.target.cpu.average_utilization
此指标为 opt-in。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.hpa.metric.target.cpu.average_utilization | Gauge | 1 | HPA 配置中 CPU 资源的平均利用率目标值(百分比)。[1] | k8s.hpa; k8s.namespace |
[1]: 此指标与 K8s HPA MetricTarget 的 averageUtilization 字段对齐。如果指标类型为 ContainerResource,则必须设置 k8s.container.name 属性以标识指标适用的 Pod 内的特定容器。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.container.name | 有条件地必需 [1] | 字符串 | Pod 规范中容器的名称,在 Pod 中必须是唯一的。容器运行时通常使用不同的全局唯一名称(container.name)。 | redis | |
k8s.hpa.metric.type | 推荐 | 字符串 | Horizontal Pod Autoscaler 的指标源类型。[2] | Resource; ContainerResource |
[1] k8s.container.name: 仅当 k8s.hpa.metric.type 为 ContainerResource 时。
[2] k8s.hpa.metric.type: 此属性反映了 HPA 中 spec.metrics[] 的 type 字段。
DaemonSet 指标
描述:在 k8s.daemonset 命名空间下捕获的 DaemonSet 级别指标。
指标:k8s.daemonset.node.current_scheduled
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.daemonset.node.current_scheduled | UpDownCounter | {node} | 运行至少一个 daemon pod 且应运行该 daemon pod 的节点数量。[1] | k8s.daemonset |
[1]: 此指标与 K8s DaemonSetStatus 的 currentNumberScheduled 字段对齐。
指标:k8s.daemonset.node.desired_scheduled
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.daemonset.node.desired_scheduled | UpDownCounter | {node} | 应运行该 daemon pod 的节点数量(包括当前运行 daemon pod 的节点)。[1] | k8s.daemonset |
[1]: 此指标与 K8s DaemonSetStatus 的 desiredNumberScheduled 字段对齐。
指标:k8s.daemonset.node.misscheduled
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.daemonset.node.misscheduled | UpDownCounter | {node} | 运行 daemon pod 但不应运行该 daemon pod 的节点数量。[1] | k8s.daemonset |
[1]: 此指标与 K8s DaemonSetStatus 的 numberMisscheduled 字段对齐。
指标:k8s.daemonset.node.ready
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.daemonset.node.ready | UpDownCounter | {node} | 应运行 daemon pod 且已运行一个或多个 daemon pod 并准备就绪的节点数量。[1] | k8s.daemonset |
[1]: 此指标与 K8s DaemonSetStatus 的 numberReady 字段对齐。
Job 指标
描述:在 k8s.job 命名空间下捕获的 Job 级别指标。
指标:k8s.job.pod.active
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.job.pod.active | UpDownCounter | {pod} | Job 的待处理和活动运行 Pod 数量。[1] | k8s.job |
[1]: 此指标与 K8s JobStatus 的 active 字段对齐。
指标:k8s.job.pod.failed
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.job.pod.failed | UpDownCounter | {pod} | Job 中达到 Failed 状态的 Pod 数量。[1] | k8s.job |
[1]: 此指标与 K8s JobStatus 的 failed 字段对齐。
指标:k8s.job.pod.successful
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.job.pod.successful | UpDownCounter | {pod} | Job 中达到 Succeeded 状态的 Pod 数量。[1] | k8s.job |
[1]: 此指标与 K8s JobStatus 的 succeeded 字段对齐。
指标:k8s.job.pod.desired_successful
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.job.pod.desired_successful | UpDownCounter | {pod} | Job 希望成功完成的 Pod 的期望数量。[1] | k8s.job |
[1]: 此指标与 K8s JobSpec 的 completions 字段对齐。
指标:k8s.job.pod.max_parallel
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.job.pod.max_parallel | UpDownCounter | {pod} | Job 在任何给定时间应运行的最大期望 Pod 数量。[1] | k8s.job |
[1]: 此指标与 K8s JobSpec 的 parallelism 字段对齐。
CronJob 指标
描述:在 k8s.cronjob 命名空间下捕获的 CronJob 级别指标。
指标:k8s.cronjob.job.active
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.cronjob.job.active | UpDownCounter | {job} | CronJob 当前运行的 Job 数量。[1] | k8s.cronjob |
[1]: 此指标与 K8s CronJobStatus 的 active 字段对齐。
Namespace 指标
描述:在 k8s.namespace 命名空间下捕获的 Namespace 级别指标。
指标:k8s.namespace.phase
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.namespace.phase | UpDownCounter | {namespace} | 描述当前处于给定阶段的 K8s 命名空间数量。 | k8s.namespace |
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.namespace.phase | 必需 | 字符串 | K8s 命名空间的阶段。[1] | active; terminating |
[1] k8s.namespace.phase: 此属性与 K8s NamespaceStatus 的 phase 字段对齐。
k8s.namespace.phase 具有以下一系列已知值。如果其中一个适用,则必须使用相应的,否则可以使用自定义值。
| 值 | 描述 | Stability |
|---|---|---|
active | 由 K8s API 描述的活动命名空间阶段。 | |
terminating | 由 K8s API 描述的终止命名空间阶段。 |
K8s 容器指标
描述:在 k8s.container 命名空间下捕获的 K8s 容器级别指标。
指标:k8s.container.cpu.limit_utilization
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.container.cpu.limit_utilization | Gauge | 1 | 容器 CPU 使用量与其 CPU 限制之比。[1] | k8s.container |
[1]: 值的范围是 [0.0,1.0]。值为 1.0 表示容器正在使用其 CPU 限制的 100%。如果未设置 CPU 限制,则不应为该容器发出此指标。
指标:k8s.container.cpu.request_utilization
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.container.cpu.request_utilization | Gauge | 1 | 容器 CPU 使用量与其 CPU 请求之比。 | k8s.container |
指标:k8s.container.cpu.limit
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.container.cpu.limit | UpDownCounter | {cpu} | 为容器设置的最大 CPU 资源限制。[1] | k8s.container |
[1]: 有关详细信息,请参阅 https://kubernetes.ac.cn/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core 。
指标:k8s.container.cpu.request
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.container.cpu.request | UpDownCounter | {cpu} | 为容器请求的 CPU 资源。[1] | k8s.container |
[1]: 有关详细信息,请参阅 https://kubernetes.ac.cn/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core 。
指标:k8s.container.memory.limit
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.container.memory.limit | UpDownCounter | 每个调用的最大内存使用量的分布。 | 为容器设置的最大内存资源限制。[1] | k8s.container |
[1]: 有关详细信息,请参阅 https://kubernetes.ac.cn/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core 。
指标:k8s.container.memory.request
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.container.memory.request | UpDownCounter | 每个调用的最大内存使用量的分布。 | 为容器请求的内存资源。[1] | k8s.container |
[1]: 有关详细信息,请参阅 https://kubernetes.ac.cn/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core 。
指标:k8s.container.storage.limit
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.container.storage.limit | UpDownCounter | 每个调用的最大内存使用量的分布。 | 为容器设置的最大存储资源限制。[1] | k8s.container |
[1]: 有关详细信息,请参阅 https://kubernetes.ac.cn/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core 。
指标:k8s.container.storage.request
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.container.storage.request | UpDownCounter | 每个调用的最大内存使用量的分布。 | 为容器请求的存储资源。[1] | k8s.container |
[1]: 有关详细信息,请参阅 https://kubernetes.ac.cn/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core 。
指标:k8s.container.ephemeral_storage.limit
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.container.ephemeral_storage.limit | UpDownCounter | 每个调用的最大内存使用量的分布。 | 为容器设置的最大临时存储资源限制。[1] | k8s.container |
[1]: 有关详细信息,请参阅 https://kubernetes.ac.cn/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core 。
指标:k8s.container.ephemeral_storage.request
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.container.ephemeral_storage.request | UpDownCounter | 每个调用的最大内存使用量的分布。 | 为容器请求的临时存储资源。[1] | k8s.container |
[1]: 有关详细信息,请参阅 https://kubernetes.ac.cn/docs/reference/generated/kubernetes-api/v1.30/#resourcerequirements-v1-core 。
指标:k8s.container.restart.count
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.container.restart.count | UpDownCounter | {restart} | 描述容器已重启的次数(自上次计数器重置以来)。[1] | k8s.container |
[1]: 此值直接从 K8s API 拉取,具体值可能无限增大,并可能随时重置为 0,具体取决于您的 Kubelet 配置的死容器修剪方式。最好不要过多依赖具体值,而是将其视为 == 0(这意味着您可得出近期没有发生重启)或 > 0(这意味着您可得出近期发生了重启),而不要试图分析该值之外的内容。
指标:k8s.container.ready
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.container.ready | UpDownCounter | {container} | 指示容器当前是否标记为准备好接受流量(基于其 readiness probe)(1 = 准备好,0 = 未准备好)。[1] | k8s.container |
[1]: 此指标应反映 K8s ContainerStatus 中 ready 字段的值。
Resource Quota 指标
描述:在 k8s.resourcequota 命名空间下捕获的 Resource Quota 级别指标。
指标:k8s.resourcequota.cpu.limit.hard
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.resourcequota.cpu.limit.hard | UpDownCounter | {cpu} | 特定命名空间中的 CPU 限制。 | ||
| 该值表示命名空间中资源的配置配额限制。[1] | k8s.resourcequota |
[1]: 此指标从 K8s ResourceQuotaStatus 的 hard 字段检索。
指标:k8s.resourcequota.cpu.limit.used
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.resourcequota.cpu.limit.used | UpDownCounter | {cpu} | 特定命名空间中的 CPU 限制。 | ||
| 该值表示命名空间中资源的当前观察到的总使用量。[1] | k8s.resourcequota |
[1]: 此指标从 K8s ResourceQuotaStatus 的 used 字段检索。
指标:k8s.resourcequota.cpu.request.hard
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.resourcequota.cpu.request.hard | UpDownCounter | {cpu} | 特定命名空间中的 CPU 请求。 | ||
| 该值表示命名空间中资源的配置配额限制。[1] | k8s.resourcequota |
[1]: 此指标从 K8s ResourceQuotaStatus 的 hard 字段检索。
指标:k8s.resourcequota.cpu.request.used
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.resourcequota.cpu.request.used | UpDownCounter | {cpu} | 特定命名空间中的 CPU 请求。 | ||
| 该值表示命名空间中资源的当前观察到的总使用量。[1] | k8s.resourcequota |
[1]: 此指标从 K8s ResourceQuotaStatus 的 used 字段检索。
指标:k8s.resourcequota.memory.limit.hard
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.resourcequota.memory.limit.hard | UpDownCounter | 每个调用的最大内存使用量的分布。 | 特定命名空间中的内存限制。 | ||
| 该值表示命名空间中资源的配置配额限制。[1] | k8s.resourcequota |
[1]: 此指标从 K8s ResourceQuotaStatus 的 hard 字段检索。
指标:k8s.resourcequota.memory.limit.used
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.resourcequota.memory.limit.used | UpDownCounter | 每个调用的最大内存使用量的分布。 | 特定命名空间中的内存限制。 | ||
| 该值表示命名空间中资源的当前观察到的总使用量。[1] | k8s.resourcequota |
[1]: 此指标从 K8s ResourceQuotaStatus 的 used 字段检索。
指标:k8s.resourcequota.memory.request.hard
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.resourcequota.memory.request.hard | UpDownCounter | 每个调用的最大内存使用量的分布。 | 特定命名空间中的内存请求。 | ||
| 该值表示命名空间中资源的配置配额限制。[1] | k8s.resourcequota |
[1]: 此指标从 K8s ResourceQuotaStatus 的 hard 字段检索。
指标:k8s.resourcequota.memory.request.used
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.resourcequota.memory.request.used | UpDownCounter | 每个调用的最大内存使用量的分布。 | 特定命名空间中的内存请求。 | ||
| 该值表示命名空间中资源的当前观察到的总使用量。[1] | k8s.resourcequota |
[1]: 此指标从 K8s ResourceQuotaStatus 的 used 字段检索。
指标:k8s.resourcequota.hugepage_count.request.hard
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.resourcequota.hugepage_count.request.hard | UpDownCounter | {hugepage} | 特定命名空间中的 huge page 请求。 | ||
| 该值表示命名空间中资源的配置配额限制。[1] | k8s.resourcequota |
[1]: 此指标从 K8s ResourceQuotaStatus 的 hard 字段检索。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.hugepage.size | 必需 | 字符串 | K8s 大页的大小(标识符)。 | 2Mi |
指标:k8s.resourcequota.hugepage_count.request.used
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.resourcequota.hugepage_count.request.used | UpDownCounter | {hugepage} | 特定命名空间中的 huge page 请求。 | ||
| 该值表示命名空间中资源的当前观察到的总使用量。[1] | k8s.resourcequota |
[1]: 此指标从 K8s ResourceQuotaStatus 的 used 字段检索。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.hugepage.size | 必需 | 字符串 | K8s 大页的大小(标识符)。 | 2Mi |
指标:k8s.resourcequota.storage.request.hard
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.resourcequota.storage.request.hard | UpDownCounter | 每个调用的最大内存使用量的分布。 | 特定命名空间中的存储请求。 | ||
| 该值表示命名空间中资源的配置配额限制。[1] | k8s.resourcequota |
[1]: 此指标从 K8s ResourceQuotaStatus 的 hard 字段检索。
当为特定存储类定义资源配额时,应要求 k8s.storageclass.name。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.storageclass.name | 有条件地必需 [1] | 字符串 | K8s StorageClass 对象的名称。 | gold.storageclass.storage.k8s.io |
[1] k8s.storageclass.name: 当为特定存储类定义资源配额时,应要求 k8s.storageclass.name。
指标:k8s.resourcequota.storage.request.used
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.resourcequota.storage.request.used | UpDownCounter | 每个调用的最大内存使用量的分布。 | 特定命名空间中的存储请求。 | ||
| 该值表示命名空间中资源的当前观察到的总使用量。[1] | k8s.resourcequota |
[1]: 此指标从 K8s ResourceQuotaStatus 的 used 字段检索。
当为特定存储类定义资源配额时,应要求 k8s.storageclass.name。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.storageclass.name | 有条件地必需 [1] | 字符串 | K8s StorageClass 对象的名称。 | gold.storageclass.storage.k8s.io |
[1] k8s.storageclass.name: 当为特定存储类定义资源配额时,应要求 k8s.storageclass.name。
指标:k8s.resourcequota.persistentvolumeclaim_count.hard
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.resourcequota.persistentvolumeclaim_count.hard | UpDownCounter | {persistentvolumeclaim} | 命名空间中可以存在的 PersistentVolumeClaim 的总数。 | ||
| 该值表示命名空间中资源的配置配额限制。[1] |
[1]: 此指标从 K8s ResourceQuotaStatus 的 hard 字段检索。
当为特定存储类定义资源配额时,应要求 k8s.storageclass.name。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.storageclass.name | 有条件地必需 [1] | 字符串 | K8s StorageClass 对象的名称。 | gold.storageclass.storage.k8s.io |
[1] k8s.storageclass.name: 当为特定存储类定义资源配额时,应要求 k8s.storageclass.name。
指标:k8s.resourcequota.persistentvolumeclaim_count.used
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.resourcequota.persistentvolumeclaim_count.used | UpDownCounter | {persistentvolumeclaim} | 命名空间中可以存在的 PersistentVolumeClaim 的总数。 | ||
| 该值表示命名空间中资源的当前观察到的总使用量。[1] |
[1]: 此指标从 K8s ResourceQuotaStatus 的 used 字段检索。
当为特定存储类定义资源配额时,应要求 k8s.storageclass.name。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.storageclass.name | 有条件地必需 [1] | 字符串 | K8s StorageClass 对象的名称。 | gold.storageclass.storage.k8s.io |
[1] k8s.storageclass.name: 当为特定存储类定义资源配额时,应要求 k8s.storageclass.name。
指标:k8s.resourcequota.ephemeral_storage.request.hard
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.resourcequota.ephemeral_storage.request.hard | UpDownCounter | 每个调用的最大内存使用量的分布。 | 命名空间中本地临时存储请求的总和。 | ||
| 该值表示命名空间中资源的配置配额限制。[1] | k8s.resourcequota |
[1]: 此指标从 K8s ResourceQuotaStatus 的 hard 字段检索。
指标:k8s.resourcequota.ephemeral_storage.request.used
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.resourcequota.ephemeral_storage.request.used | UpDownCounter | 每个调用的最大内存使用量的分布。 | 命名空间中本地临时存储请求的总和。 | ||
| 该值表示命名空间中资源的当前观察到的总使用量。[1] | k8s.resourcequota |
[1]: 此指标从 K8s ResourceQuotaStatus 的 used 字段检索。
指标:k8s.resourcequota.ephemeral_storage.limit.hard
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.resourcequota.ephemeral_storage.limit.hard | UpDownCounter | 每个调用的最大内存使用量的分布。 | 命名空间中本地临时存储限制的总和。 | ||
| 该值表示命名空间中资源的配置配额限制。[1] | k8s.resourcequota |
[1]: 此指标从 K8s ResourceQuotaStatus 的 hard 字段检索。
指标:k8s.resourcequota.ephemeral_storage.limit.used
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.resourcequota.ephemeral_storage.limit.used | UpDownCounter | 每个调用的最大内存使用量的分布。 | 命名空间中本地临时存储限制的总和。 | ||
| 该值表示命名空间中资源的当前观察到的总使用量。[1] | k8s.resourcequota |
[1]: 此指标从 K8s ResourceQuotaStatus 的 used 字段检索。
指标:k8s.resourcequota.object_count.hard
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.resourcequota.object_count.hard | UpDownCounter | {object} | 特定命名空间中的对象计数限制。 | ||
| 该值表示命名空间中资源的配置配额限制。[1] | k8s.resourcequota |
[1]: 此指标从 K8s ResourceQuotaStatus 的 hard 字段检索。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.resourcequota.resource_name | 必需 | 字符串 | 资源配额定义的 K8s 资源的名称。[1] | count/replicationcontrollers |
[1] k8s.resourcequota.resource_name: 此属性的值可以是完整的 count/<resource>[.<group>] 字符串(例如,count/deployments.apps, count/pods),或者对于某些核心 Kubernetes 资源,只需资源名称(例如,pods, services, configmaps)。Kubernetes 对对象计数配额支持这两种形式。有关更多详细信息,请参阅 Kubernetes Resource Quotas 文档。
指标:k8s.resourcequota.object_count.used
此指标是推荐的。
| 名称 | Instrument Type | Unit (UCUM) | 描述 | Stability | 实体关联 |
|---|---|---|---|---|---|
k8s.resourcequota.object_count.used | UpDownCounter | {object} | 特定命名空间中的对象计数限制。 | ||
| 该值表示命名空间中资源的当前观察到的总使用量。[1] | k8s.resourcequota |
[1]: 此指标从 K8s ResourceQuotaStatus 的 used 字段检索。
Attributes
| 键 | Stability | 需求级别 | Value Type | 描述 | Example Values |
|---|---|---|---|---|---|
k8s.resourcequota.resource_name | 必需 | 字符串 | 资源配额定义的 K8s 资源的名称。[1] | count/replicationcontrollers |
[1] k8s.resourcequota.resource_name: 此属性的值可以是完整的 count/<resource>[.<group>] 字符串(例如,count/deployments.apps, count/pods),或者对于某些核心 Kubernetes 资源,只需资源名称(例如,pods, services, configmaps)。Kubernetes 对对象计数配额支持这两种形式。有关更多详细信息,请参阅 Kubernetes Resource Quotas 文档。