prometheus.exporter.cadvisor
prometheus.exporter.cadvisor
组件使用 cAdvisor 收集容器指标。
用法
prometheus.exporter.cadvisor "<LABEL>" {
}
参数
您可以将以下参数用于 prometheus.exporter.cadvisor
名称 | 类型 | 描述 | 默认值 | 必需 |
---|---|---|---|---|
allowlisted_container_labels | list(string) | 允许列表中的容器标签将转换为 Prometheus 标签。 | [] | 否 |
containerd_host | string | containerd 端点。 | /run/containerd/containerd.sock | 否 |
containerd_namespace | string | containerd 命名空间。 | k8s.io | 否 |
disable_root_cgroup_stats | bool | 禁用收集根 Cgroup 统计信息。 | false | 否 |
disabled_metrics | list(string) | 要禁用的指标列表,如果设置,将覆盖默认禁用的指标。 | (见下文) | 否 |
docker_host | string | Docker 端点。 | unix:///var/run/docker.sock | 否 |
docker_only | bool | 除了根统计信息外,仅报告 docker 容器。 | false | 否 |
docker_tls_ca | string | 用于 TLS 连接到 docker 的受信任 CA 路径。 | ca.pem | 否 |
docker_tls_cert | string | 用于 TLS 连接到 docker 的客户端证书路径。 | cert.pem | 否 |
docker_tls_key | string | 用于 TLS 连接到 docker 的私钥路径。 | key.pem | 否 |
enabled_metrics | list(string) | 要启用的指标列表,如果设置,将覆盖 disabled_metrics。 | [] | 否 |
env_metadata_allowlist | list(string) | 允许列表中的环境变量键,与指定的需要为容器收集的前缀匹配。 | [] | 否 |
perf_events_config | string | 包含要测量的 perf 事件配置的 JSON 文件路径。 | "" | 否 |
raw_cgroup_prefix_allowlist | list(string) | 需要收集的 cgroup 路径前缀列表,即使指定了 docker_only。 | [] | 否 |
resctrl_interval | duration | 更新 resctrl mon 组的间隔。 | 0 | 否 |
storage_duration | duration | 数据在内存中保留的时间长度。 | 2m | 否 |
store_container_labels | bool | 是否将容器标签和环境变量转换为每个容器的 Prometheus 指标标签。 | true | 否 |
use_docker_tls | bool | 使用 TLS 连接到 docker。 | false | 否 |
要使 allowlisted_container_labels
生效,store_container_labels
必须设置为 false
。
env_metadata_allowlist
仅支持 containerd 和 Docker 运行时。
如果未设置 perf_events_config
,则禁用 perf 事件测量。
resctrl_interval
设置为 0
将禁用更新 mon 组。
enabled_metrics
和 disabled_metrics
的值不对应 Prometheus 指标,而是对应应该或不应该暴露的指标类型。可用的值有
"advtcp"
"app"
"cpu_topology"
"cpu"
"cpuLoad"
"cpuset"
"disk"
"diskIO"
"hugetlb"
"memory_numa"
"memory"
"network"
"oom_event"
"percpu"
"perf_event"
"process"
"referenced_memory"
"resctrl"
"sched"
"tcp"
"udp"
默认情况下,禁用以下指标类型
"advtcp"
"cpu_topology"
"cpuset"
"hugetlb"
"memory_numa"
"process"
"referenced_memory"
"resctrl"
"tcp"
"udp"
块
prometheus.exporter.cadvisor
组件不支持任何块。您可以使用参数配置此组件。
导出字段
导出以下字段,可供其他组件引用。
名称 | 类型 | 描述 |
---|---|---|
targets | list(map(string)) | 可用于收集 exporter 指标的目标。 |
例如,targets
可以传递给 discovery.relabel
组件以重写目标的标签集,也可以传递给 prometheus.scrape
组件以收集暴露的指标。
导出的 targets 使用 run 命令指定的配置的内存中流量地址。
组件健康状态
仅在给定无效配置时,prometheus.exporter.cadvisor
才被报告为不健康。在这种情况下,导出字段会保留其上次健康的数值。
调试信息
prometheus.exporter.cadvisor
不暴露任何组件特定的调试信息。
调试指标
prometheus.exporter.cadvisor
不暴露任何组件特定的调试指标。
示例
此示例使用 prometheus.scrape
组件 从 prometheus.exporter.cadvisor
收集指标
prometheus.exporter.cadvisor "example" {
docker_host = "unix:///var/run/docker.sock"
storage_duration = "5m"
}
// Configure a prometheus.scrape component to collect cadvisor metrics.
prometheus.scrape "scraper" {
targets = prometheus.exporter.cadvisor.example.targets
forward_to = [ prometheus.remote_write.demo.receiver ]
}
prometheus.remote_write "demo" {
endpoint {
url = "<PROMETHEUS_REMOTE_WRITE_URL>"
basic_auth {
username = "<USERNAME>"
password = "<PASSWORD>"
}
}
}
替换以下内容
<PROMETHEUS_REMOTE_WRITE_URL>
: 将指标发送到的 Prometheusremote_write
兼容服务器的 URL。<USERNAME>
: 用于remote_write
API 认证的用户名。<PASSWORD>
: 用于remote_write
API 认证的密码。
兼容的组件
prometheus.exporter.cadvisor
的导出可供以下组件使用
- 使用 Targets 的组件
注意
连接某些组件可能不合理,或组件可能需要进一步配置才能使连接正常工作。请参阅链接的文档了解更多详细信息。