Containerd 集成
编辑Containerd 集成
编辑此集成用于从 containerd 运行时收集指标。
它收集由 containerd 控制的正在运行的容器的 cpu、内存和 blkio 统计信息。
当前的数据集是:cpu
、blkio
和 memory
,默认情况下启用。
兼容性
编辑Containerd 集成当前已使用 Containerd 版本 v1.5.2 进行测试。
先决条件
编辑必须先配置 Containerd
守护进程以提供指标,然后才能启用 containerd 集成。
在位于 /etc/containerd/config.toml
中的配置文件中,需要设置指标端点,并且需要重新启动 containerd 守护进程。
[metrics] address = "127.0.0.1:1338"
特定于集成的配置说明
编辑对于 cpu 数据流,如果 计算 cpu 使用率百分比
设置为 true
,则将计算 cpu 使用率百分比,更具体地说,字段为 containerd.cpu.usage.total.pct
、containerd.cpu.usage.kernel.pct
、containerd.cpu.usage.user.pct
。默认值为 true
。
对于内存数据流,如果 计算内存使用率百分比
设置为 true
,则将计算内存使用率百分比,更具体地说,字段为 containerd.memory.usage.pct
和 containerd.memory.workingset.pct
。默认值为 true
。
指标
编辑cpu
编辑这是 Containerd
包的 cpu
数据集。它从 containerd 的指标 API 收集与 cpu 相关的指标。
导出的字段
字段 | 描述 | 类型 | 单位 | 指标类型 |
---|---|---|---|---|
@timestamp |
事件时间戳。 |
日期 |
||
agent.id |
此代理的唯一标识符(如果存在)。例如:对于 Beats,这将是 beat.id。 |
关键字 |
||
cloud.account.id |
用于在多租户环境中标识不同实体的云帐户或组织 ID。例如:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。 |
关键字 |
||
cloud.availability_zone |
此主机、资源或服务所在的可用区。 |
关键字 |
||
cloud.instance.id |
主机机器的实例 ID。 |
关键字 |
||
cloud.provider |
云提供商的名称。示例值为 aws、azure、gcp 或 digitalocean。 |
关键字 |
||
cloud.region |
此主机、资源或服务所在的区域。 |
关键字 |
||
container.cpu.usage |
由 CPU 核心数归一化的总 CPU 使用率。 |
scaled_float |
百分比 |
指标 |
container.id |
唯一容器 ID。 |
关键字 |
||
containerd.cpu.system.total |
用户和系统 CPU 总时间(以秒为单位)。 |
双精度 |
秒 |
指标 |
containerd.cpu.usage.cpu.*.ns |
此 cpu 中的 CPU 使用率纳秒。 |
对象 |
||
containerd.cpu.usage.kernel.ns |
CPU 内核使用率纳秒 |
双精度 |
纳秒 |
指标 |
containerd.cpu.usage.kernel.pct |
由 CPU 核心数归一化的内核空间时间百分比。 |
scaled_float |
百分比 |
指标 |
containerd.cpu.usage.total.ns |
CPU 总使用率纳秒 |
双精度 |
纳秒 |
指标 |
containerd.cpu.usage.total.pct |
由 CPU 核心数归一化的总 CPU 时间百分比 |
scaled_float |
百分比 |
指标 |
containerd.cpu.usage.user.ns |
CPU 用户使用率纳秒 |
双精度 |
纳秒 |
指标 |
containerd.cpu.usage.user.pct |
由 CPU 核心数归一化的用户空间时间百分比。 |
scaled_float |
百分比 |
指标 |
containerd.namespace |
Containerd 命名空间 |
关键字 |
||
data_stream.dataset |
数据流数据集。 |
常量关键字 |
||
data_stream.namespace |
数据流命名空间。 |
常量关键字 |
||
data_stream.type |
数据流类型。 |
常量关键字 |
||
ecs.version |
此事件符合的 ECS 版本。 |
关键字 |
||
host.name |
主机的名称。它可以包含 Unix 系统上 |
关键字 |
||
service.address |
从中收集此服务数据的地址。这应该是一个 URI、网络地址(ipv4:port 或 [ipv6]:port)或资源路径(套接字)。 |
关键字 |
||
service.type |
从中收集服务数据的服务类型。该类型可用于对来自一种服务类型的日志和指标进行分组和关联。示例:如果从 Elasticsearch 收集日志或指标,则 |
关键字 |
示例
以下是一个 cpu
的示例事件
{ "container": { "id": "c9b16941acc7ec09a2b5e677d2863dd5c235b95304e7e8432a403f28e4f3e939" }, "agent": { "name": "kind-control-plane", "id": "e76bdfd9-382f-4f81-be2d-7031ea2f3e0b", "ephemeral_id": "09df445e-765a-4333-bb12-ab043d85149a", "type": "metricbeat", "version": "8.1.0" }, "elastic_agent": { "id": "e76bdfd9-382f-4f81-be2d-7031ea2f3e0b", "version": "8.1.0", "snapshot": false }, "containerd": { "namespace": "k8s.io", "cpu": { "usage": { "total": { "pct": 0.004503286370848513, "ns": 497538744548 }, "kernel": { "pct": 0.0006661590189871613, "ns": 91920000000 }, "user": { "pct": 0.0022482866890816693, "ns": 250140000000 } } } }, "@timestamp": "2022-01-17T10:56:05.804Z", "ecs": { "version": "8.0.0" }, "service": { "address": "https://127.0.0.1:1338/v1/metrics", "type": "containerd" }, "data_stream": { "namespace": "default", "type": "metrics", "dataset": "containerd.cpu" }, "host": { "hostname": "kind-control-plane", "os": { "kernel": "5.10.47-linuxkit", "codename": "Core", "name": "CentOS Linux", "type": "linux", "family": "redhat", "version": "7 (Core)", "platform": "centos" }, "containerized": true, "ip": [ "10.244.0.1", "10.244.0.1", "10.244.0.1", "192.168.0.2", "172.18.0.2", "fc00:f853:ccd:e793::2", "fe80::42:acff:fe12:2" ], "name": "kind-control-plane", "id": "8572202eb1aa48f1a380b1d48c9ff9c3", "mac": [ "a2:9c:01:82:64:e2", "d6:4a:2e:9f:3a:19", "4e:3b:ac:65:8e:2e", "02:42:c0:a8:00:02", "02:42:ac:12:00:02" ], "architecture": "x86_64" }, "metricset": { "period": 10000, "name": "cpu" }, "event": { "duration": 38067862, "agent_id_status": "verified", "ingested": "2022-01-17T10:56:06Z", "module": "containerd", "dataset": "containerd.cpu" } }
内存
编辑这是 Containerd
包的 memory
数据集。它从 containerd 的指标 API 收集与内存相关的指标。
导出的字段
字段 | 描述 | 类型 | 单位 | 指标类型 |
---|---|---|---|---|
@timestamp |
事件时间戳。 |
日期 |
||
agent.id |
此代理的唯一标识符(如果存在)。例如:对于 Beats,这将是 beat.id。 |
关键字 |
||
cloud.account.id |
用于在多租户环境中标识不同实体的云帐户或组织 ID。例如:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。 |
关键字 |
||
cloud.availability_zone |
此主机、资源或服务所在的可用区。 |
关键字 |
||
cloud.instance.id |
主机机器的实例 ID。 |
关键字 |
||
cloud.provider |
云提供商的名称。示例值为 aws、azure、gcp 或 digitalocean。 |
关键字 |
||
cloud.region |
此主机、资源或服务所在的区域。 |
关键字 |
||
container.id |
唯一容器 ID。 |
关键字 |
||
container.memory.usage |
内存使用率百分比。 |
scaled_float |
百分比 |
指标 |
containerd.memory.activeFiles |
活动文件总字节数。 |
长整型 |
字节 |
指标 |
containerd.memory.cache |
总缓存字节数。 |
长整型 |
字节 |
指标 |
containerd.memory.inactiveFiles |
非活动文件总字节数。 |
长整型 |
字节 |
指标 |
containerd.memory.kernel.fail.count |
内核失败计数器。 |
scaled_float |
计数器 |
|
containerd.memory.kernel.limit |
内核内存限制。 |
长整型 |
字节 |
指标 |
containerd.memory.kernel.max |
内核最大内存使用率。 |
长整型 |
字节 |
指标 |
containerd.memory.kernel.total |
内核总内存使用率。 |
长整型 |
字节 |
指标 |
containerd.memory.rss |
总内存驻留集大小。 |
长整型 |
字节 |
指标 |
containerd.memory.swap.fail.count |
交换失败计数器。 |
scaled_float |
计数器 |
|
containerd.memory.swap.limit |
交换内存限制。 |
长整型 |
字节 |
指标 |
containerd.memory.swap.max |
最大交换内存使用率。 |
长整型 |
字节 |
指标 |
containerd.memory.swap.total |
总交换内存使用率。 |
长整型 |
字节 |
指标 |
containerd.memory.usage.fail.count |
失败计数器。 |
scaled_float |
计数器 |
|
containerd.memory.usage.limit |
内存使用率限制。 |
长整型 |
字节 |
指标 |
containerd.memory.usage.max |
最大内存使用率。 |
长整型 |
字节 |
指标 |
containerd.memory.usage.pct |
总分配内存百分比。 |
scaled_float |
百分比 |
指标 |
containerd.memory.usage.total |
总内存使用率。 |
长整型 |
字节 |
指标 |
containerd.memory.workingset.pct |
内存工作集百分比。 |
scaled_float |
百分比 |
指标 |
containerd.namespace |
Containerd 命名空间 |
关键字 |
||
data_stream.dataset |
数据流数据集。 |
常量关键字 |
||
data_stream.namespace |
数据流命名空间。 |
常量关键字 |
||
data_stream.type |
数据流类型。 |
常量关键字 |
||
ecs.version |
此事件符合的 ECS 版本。 |
关键字 |
||
host.name |
主机的名称。它可以包含 Unix 系统上 |
关键字 |
||
service.address |
从中收集此服务数据的地址。这应该是一个 URI、网络地址(ipv4:port 或 [ipv6]:port)或资源路径(套接字)。 |
关键字 |
||
service.type |
从中收集服务数据的服务类型。该类型可用于对来自一种服务类型的日志和指标进行分组和关联。示例:如果从 Elasticsearch 收集日志或指标,则 |
关键字 |
示例
以下是一个 memory
的示例事件
{ "container": { "id": "9c46c226469ff14544c97e003f403a457eda5398b9de757179e7d704ac1c8f72" }, "agent": { "name": "kind-control-plane", "id": "e76bdfd9-382f-4f81-be2d-7031ea2f3e0b", "ephemeral_id": "09df445e-765a-4333-bb12-ab043d85149a", "type": "metricbeat", "version": "8.1.0" }, "elastic_agent": { "id": "e76bdfd9-382f-4f81-be2d-7031ea2f3e0b", "version": "8.1.0", "snapshot": false }, "containerd": { "memory": { "activeFiles": 2568192, "cache": 41631744, "rss": 11759616, "swap": { "fail": { "count": 0 }, "total": 54820864, "max": 56819712, "limit": 9223372036854772000 }, "kernel": { "fail": { "count": 0 }, "total": 1294336, "max": 1773568, "limit": 9223372036854772000 }, "usage": { "pct": 5.9436899846332405e-12, "fail": { "count": 0 }, "total": 54820864, "max": 56819712, "limit": 9223372036854772000 }, "workingset": { "pct": 1.7084111902931917e-12 }, "inactiveFiles": 39063552 }, "namespace": "k8s.io" }, "@timestamp": "2022-01-17T10:53:55.882Z", "ecs": { "version": "8.0.0" }, "service": { "address": "https://127.0.0.1:1338/v1/metrics", "type": "containerd" }, "data_stream": { "namespace": "default", "type": "metrics", "dataset": "containerd.memory" }, "host": { "hostname": "kind-control-plane", "os": { "kernel": "5.10.47-linuxkit", "codename": "Core", "name": "CentOS Linux", "family": "redhat", "type": "linux", "version": "7 (Core)", "platform": "centos" }, "containerized": true, "ip": [ "10.244.0.1", "10.244.0.1", "10.244.0.1", "192.168.0.2", "172.18.0.2", "fc00:f853:ccd:e793::2", "fe80::42:acff:fe12:2" ], "name": "kind-control-plane", "id": "8572202eb1aa48f1a380b1d48c9ff9c3", "mac": [ "a2:9c:01:82:64:e2", "d6:4a:2e:9f:3a:19", "4e:3b:ac:65:8e:2e", "02:42:c0:a8:00:02", "02:42:ac:12:00:02" ], "architecture": "x86_64" }, "metricset": { "period": 10000, "name": "memory" }, "event": { "duration": 916030, "agent_id_status": "verified", "ingested": "2022-01-17T10:53:56Z", "module": "containerd", "dataset": "containerd.memory" } }
blkio
编辑这是 Containerd
包的 blkio
数据集。它从 containerd 的指标 API 收集与 blkio 相关的指标。
导出的字段
字段 | 描述 | 类型 | 单位 | 指标类型 |
---|---|---|---|---|
@timestamp |
事件时间戳。 |
日期 |
||
agent.id |
此代理的唯一标识符(如果存在)。例如:对于 Beats,这将是 beat.id。 |
关键字 |
||
cloud.account.id |
用于在多租户环境中标识不同实体的云帐户或组织 ID。例如:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。 |
关键字 |
||
cloud.availability_zone |
此主机、资源或服务所在的可用区。 |
关键字 |
||
cloud.instance.id |
主机机器的实例 ID。 |
关键字 |
||
cloud.provider |
云提供商的名称。示例值为 aws、azure、gcp 或 digitalocean。 |
关键字 |
||
cloud.region |
此主机、资源或服务所在的区域。 |
关键字 |
||
container.disk.read.bytes |
在容器生命周期内读取的字节数 |
长整型 |
计数器 |
|
container.disk.write.bytes |
在容器生命周期内写入的字节数 |
长整型 |
字节 |
计数器 |
container.id |
唯一容器 ID。 |
关键字 |
||
containerd.blkio.device |
块设备的名称 |
关键字 |
||
containerd.blkio.read.bytes |
在容器生命周期内读取的字节数 |
长整型 |
字节 |
指标 |
containerd.blkio.read.ops |
在容器生命周期内的读取次数 |
长整型 |
指标 |
|
containerd.blkio.summary.bytes |
在容器生命周期内读取和写入的字节数 |
长整型 |
字节 |
指标 |
containerd.blkio.summary.ops |
在容器生命周期内的 I/O 操作次数 |
长整型 |
指标 |
|
containerd.blkio.write.bytes |
在容器生命周期内写入的字节数 |
长整型 |
字节 |
指标 |
containerd.blkio.write.ops |
在容器生命周期内的写入次数 |
长整型 |
指标 |
|
containerd.namespace |
Containerd 命名空间 |
关键字 |
||
data_stream.dataset |
数据流数据集。 |
常量关键字 |
||
data_stream.namespace |
数据流命名空间。 |
常量关键字 |
||
data_stream.type |
数据流类型。 |
常量关键字 |
||
ecs.version |
此事件符合的 ECS 版本。 |
关键字 |
||
host.name |
主机的名称。它可以包含 Unix 系统上 |
关键字 |
||
service.address |
从中收集此服务数据的地址。这应该是一个 URI、网络地址(ipv4:port 或 [ipv6]:port)或资源路径(套接字)。 |
关键字 |
||
service.type |
从中收集服务数据的服务类型。该类型可用于对来自一种服务类型的日志和指标进行分组和关联。示例:如果从 Elasticsearch 收集日志或指标,则 |
关键字 |
示例
以下是一个 blkio
的示例事件
{ "container": { "id": "42e49b56969eba4a3657745fba5bf7375e66f1a4b7a55a873f365e86fdc0de9b" }, "agent": { "name": "kind-control-plane", "id": "e76bdfd9-382f-4f81-be2d-7031ea2f3e0b", "ephemeral_id": "09df445e-765a-4333-bb12-ab043d85149a", "type": "metricbeat", "version": "8.1.0" }, "elastic_agent": { "id": "e76bdfd9-382f-4f81-be2d-7031ea2f3e0b", "version": "8.1.0", "snapshot": false }, "containerd": { "blkio": { "summary": { "ops": 37, "bytes": 2838528 }, "read": { "ops": 37, "bytes": 2838528 }, "device": "/dev/vda", "write": { "ops": 0, "bytes": 0 } }, "namespace": "k8s.io" }, "@timestamp": "2022-01-17T10:05:17.991Z", "ecs": { "version": "8.0.0" }, "service": { "address": "https://127.0.0.1:1338/v1/metrics", "type": "containerd" }, "data_stream": { "namespace": "default", "type": "metrics", "dataset": "containerd.blkio" }, "host": { "hostname": "kind-control-plane", "os": { "kernel": "5.10.47-linuxkit", "codename": "Core", "name": "CentOS Linux", "family": "redhat", "type": "linux", "version": "7 (Core)", "platform": "centos" }, "ip": [ "10.244.0.1", "10.244.0.1", "10.244.0.1", "192.168.0.2", "172.18.0.2", "fc00:f853:ccd:e793::2", "fe80::42:acff:fe12:2" ], "containerized": true, "name": "kind-control-plane", "id": "8572202eb1aa48f1a380b1d48c9ff9c3", "mac": [ "a2:9c:01:82:64:e2", "d6:4a:2e:9f:3a:19", "4e:3b:ac:65:8e:2e", "02:42:c0:a8:00:02", "02:42:ac:12:00:02" ], "architecture": "x86_64" }, "metricset": { "period": 10000, "name": "blkio" }, "event": { "duration": 36666537, "agent_id_status": "verified", "ingested": "2022-01-17T10:05:18Z", "module": "containerd", "dataset": "containerd.blkio" } }
变更日志
编辑变更日志
版本 | 详细信息 | Kibana 版本 |
---|---|---|
0.4.0 |
增强 (查看拉取请求) |
— |
0.3.0 |
增强 (查看拉取请求) |
— |
0.2.6 |
增强 (查看拉取请求) |
— |
0.2.5 |
增强 (查看拉取请求) |
— |
0.2.4 |
增强 (查看拉取请求) |
— |
0.2.3 |
增强 (查看拉取请求) |
— |
0.2.2 |
增强 (查看拉取请求) |
— |
0.2.1 |
增强 (查看拉取请求) |
— |
0.2.0 |
增强 (查看拉取请求) |
— |
0.1.0 |
增强 (查看拉取请求) |
— |