实验性
otelcol接收器.vcenter
实验性:这是一个实验性组件。实验性组件可能会频繁进行破坏性更改,并且可能会被移除,而没有等效的替代品。要使用该组件,必须将
stability.level
标志设置为实验性
。
otelcol.receiver.vcenter
接受来自运行VMware vSphere API的vCenter或ESXi主机的指标,并将其转发到其他otelcol.*
组件。
注意:
otelcol.receiver.vcenter
是对来自otelcol-contrib
分发的上游 OpenTelemetry Collectorvcenter
接收器的包装。如果有必要,错误报告或功能请求将被重定向到上游仓库。
可以通过为它们提供不同的标签来指定多个 otelcol.receiver.vcenter
组件。
可以收集的完整指标列表可以在 vcenter 接收器文档 中找到。
先决条件
此接收器已构建以支持 ESXi 和 vCenter 版本
- 8
- 7.0
必须指定一个分配给具有对 vCenter 服务器、集群以及所有后续监控资源权限的“只读”用户,以便接收器能够检索它们的信息。
用法
otelcol.receiver.vcenter "LABEL" {
endpoint = "VCENTER_ENDPOINT"
username = "VCENTER_USERNAME"
password = "VCENTER_PASSWORD"
output {
metrics = [...]
}
}
参数
otelcol.receiver.vcenter
支持以下参数
名称 | 类型 | 描述 | 默认值 | 必需 |
---|---|---|---|---|
endpoint | string | 指向已启用 SDK 路径的 vCenter 服务器或 ESXi 主机的端点。 | 是 | |
username | string | 用于身份验证的用户名。 | 是 | |
password | string | 用于身份验证的密码。 | 是 | |
collection_interval | 持续时间 | 定义收集指标的频率。 | "1m" | 否 |
initial_delay | 持续时间 | 定义此接收器启动前等待的时间。 | "1s" | 否 |
timeout | 持续时间 | 定义底层 HTTP 客户端的超时时间。 | "0s" | 否 |
endpoint
的格式为 <protocol>://<hostname>
。例如,https://vcsa.hostname.localnet
。
块
在 otelcol.receiver.vcenter
定义内部支持以下块
层次结构 | 块 | 描述 | 必需 |
---|---|---|---|
tls | tls | 为 HTTP 客户端配置 TLS。 | 否 |
metrics | metrics | 配置将发送到下游组件的指标。 | 否 |
resource_attributes | resource_attributes | 为发送到下游组件的指标配置资源属性。 | 否 |
debug_metrics | debug_metrics | 配置此组件生成的用于监控其状态的指标。 | 否 |
output | output | 配置将接收到的遥测数据发送到何处。 | 是 |
tls 块
tls
块配置用于服务器的 TLS 设置。如果没有提供 tls
块,则不会在连接到服务器时使用 TLS。
以下参数受支持
名称 | 类型 | 描述 | 默认值 | 必需 |
---|---|---|---|---|
ca_file | string | CA 文件路径。 | 否 | |
ca_pem | string | 用于验证服务器的 CA PEM 编码文本。 | 否 | |
cert_file | string | TLS 证书路径。 | 否 | |
cert_pem | string | 用于客户端身份验证的证书 PEM 编码文本。 | 否 | |
insecure_skip_verify | 布尔值 | 忽略不安全的服务器 TLS 证书。 | 否 | |
include_system_ca_certs_pool | 布尔值 | 是否要在证书颁发机构旁边加载系统证书颁发机构池。 | false | 否 |
insecure | 布尔值 | 连接到配置的服务器时禁用 TLS。 | 否 | |
key_file | string | TLS 证书密钥路径。 | 否 | |
key_pem | secret | 用于客户端身份验证的密钥 PEM 编码文本。 | 否 | |
max_version | string | 连接可接受的 TLS 最低版本。 | "TLS 1.3" | 否 |
min_version | string | 连接可接受的最小 TLS 版本。 | "TLS 1.2" | 否 |
cipher_suites | 列表(字符串) | TLS 传输可以使用的一组 TLS 密码套件列表。 | [] | 否 |
reload_interval | 持续时间 | 证书重新加载后的持续时间。 | "0s" | 否 |
server_name | string | 设置时,验证服务器证书的主机名。 | 否 |
如果服务器不支持TLS,您必须将insecure
参数设置为true
。
要禁用连接到服务器的tls
,请将insecure
参数设置为true
。
如果将reload_interval
设置为"0s"
,则证书永远不会重新加载。
以下参数对相互排斥,不能同时设置
ca_pem
和ca_file
cert_pem
和cert_file
key_pem
和key_file
如果cipher_suites
留空,将使用安全的默认列表。有关支持的加密套件列表,请参阅Go TLS文档。
metrics块
名称 | 类型 | 描述 | 默认值 | 必需 |
---|---|---|---|---|
vcenter.cluster.cpu.effective | metric | 启用vcenter.cluster.cpu.effective 指标。 | true | 否 |
vcenter.cluster.cpu.usage | metric | 启用vcenter.cluster.cpu.usage 指标。 | true | 否 |
vcenter.cluster.host.count | metric | 启用vcenter.cluster.host.count 指标。 | true | 否 |
vcenter.cluster.memory.effective | metric | 启用vcenter.cluster.memory.effective 指标。 | true | 否 |
vcenter.cluster.memory.limit | metric | 启用vcenter.cluster.memory.limit 指标。 | true | 否 |
vcenter.cluster.vm.count | metric | 启用vcenter.cluster.vm.count 指标。 | true | 否 |
vcenter.cluster.vm_template.count | metric | 启用vcenter.cluster.vm_template.count 指标。 | true | 否 |
vcenter.cluster.vsan.congestions | metric | 启用vcenter.cluster.vsan.congestions 指标。 | true | 否 |
vcenter.cluster.vsan.latency.avg | metric | 启用vcenter.cluster.vsan.latency.avg 指标。 | true | 否 |
vcenter.cluster.vsan.operations | metric | 启用vcenter.cluster.vsan.operations 指标。 | true | 否 |
vcenter.cluster.vsan.throughput | metric | 启用vcenter.cluster.vsan.throughput 指标。 | true | 否 |
vcenter.datacenter.cluster.count | metric | 启用vcenter.datacenter.cluster.count 指标。 | true | 否 |
vcenter.datacenter.cpu.limit | metric | 启用vcenter.datacenter.cpu.limit 指标。 | true | 否 |
vcenter.datacenter.datastore.count | metric | 启用vcenter.datacenter.datastore.count 指标。 | true | 否 |
vcenter.datacenter.disk.space | metric | 启用vcenter.datacenter.disk.space 指标。 | true | 否 |
vcenter.datacenter.host.count | metric | 启用vcenter.datacenter.host.count 指标。 | true | 否 |
vcenter.datacenter.memory.limit | metric | 启用vcenter.datacenter.memory.limit 指标。 | true | 否 |
vcenter.datacenter.vm.count | metric | 启用vcenter.datacenter.vm.count 指标。 | true | 否 |
vcenter.datastore.disk.usage | metric | 启用vcenter.datastore.disk.usage 指标。 | true | 否 |
vcenter.datastore.disk.utilization | metric | 启用vcenter.datastore.disk.utilization 指标。 | true | 否 |
vcenter.host.cpu.capacity | metric | 启用vcenter.host.cpu.capacity 指标。 | true | 否 |
vcenter.host.cpu.reserved | metric | 启用vcenter.host.cpu.reserved 指标。 | true | 否 |
vcenter.host.cpu.usage | metric | 启用vcenter.host.cpu.usage 指标。 | true | 否 |
vcenter.host.cpu.utilization | metric | 启用vcenter.host.cpu.utilization 指标。 | true | 否 |
vcenter.host.disk.latency.avg | metric | 启用vcenter.host.disk.latency.avg 指标。 | true | 否 |
vcenter.host.disk.latency.max | metric | 启用vcenter.host.disk.latency.max 指标。 | true | 否 |
vcenter.host.disk.throughput | metric | 启用vcenter.host.disk.throughput 指标。 | true | 否 |
vcenter.host.memory.usage | metric | 启用vcenter.host.memory.usage 指标。 | true | 否 |
vcenter.host.memory.utilization | metric | 启用vcenter.host.memory.utilization 指标。 | true | 否 |
vcenter.host.network.packet.rate | metric | 启用vcenter.host.network.packet.rate 指标。 | true | 否 |
vcenter.host.network.packet.error.rate | metric | 启用vcenter.host.network.packet.error.rate 指标。 | true | 否 |
vcenter.host.network.packet.drop.rate | metric | 启用vcenter.host.network.packet.drop.rate 指标。 | true | 否 |
vcenter.host.network.throughput | metric | 启用vcenter.host.network.throughput 指标。 | true | 否 |
vcenter.host.network.usage | metric | 启用 vcenter.host.network.usage 指标。 | true | 否 |
vcenter.host.vsan.cache.hit_rate | metric | 启用 vcenter.host.vsan.cache.hit_rate 指标。 | true | 否 |
vcenter.host.vsan.congestions | metric | 启用 vcenter.host.vsan.congestions 指标。 | true | 否 |
vcenter.host.vsan.latency.avg | metric | 启用 vcenter.host.vsan.latency.avg 指标。 | true | 否 |
vcenter.host.vsan.operations | metric | 启用 vcenter.host.vsan.operations 指标。 | true | 否 |
vcenter.host.vsan.throughput | metric | 启用 vcenter.host.vsan.throughput 指标。 | true | 否 |
vcenter.resource_pool.cpu.shares | metric | 启用 vcenter.resource_pool.cpu.shares 指标。 | true | 否 |
vcenter.resource_pool.cpu.usage | metric | 启用 vcenter.resource_pool.cpu.usage 指标。 | true | 否 |
vcenter.resource_pool.memory.ballooned | metric | 启用 vcenter.resource_pool.memory.ballooned 指标。 | true | 否 |
vcenter.resource_pool.memory.granted | metric | 启用 vcenter.resource_pool.memory.granted 指标。 | true | 否 |
vcenter.resource_pool.memory.shares | metric | 启用 vcenter.resource_pool.memory.shares 指标。 | true | 否 |
vcenter.resource_pool.memory.swapped | metric | 启用 vcenter.resource_pool.memory.swapped 指标。 | true | 否 |
vcenter.resource_pool.memory.usage | metric | 启用 vcenter.resource_pool.memory.usage 指标。 | true | 否 |
vcenter.vm.cpu.readiness | metric | 启用 vcenter.vm.cpu.readiness 指标。 | true | 否 |
vcenter.vm.cpu.usage | metric | 启用 vcenter.vm.cpu.usage 指标。 | true | 否 |
vcenter.vm.cpu.utilization | metric | 启用 vcenter.vm.cpu.utilization 指标。 | true | 否 |
vcenter.vm.disk.latency.avg | metric | 启用 vcenter.vm.disk.latency.avg 指标。 | true | 否 |
vcenter.vm.disk.latency.max | metric | 启用 vcenter.vm.disk.latency.max 指标。 | true | 否 |
vcenter.vm.disk.throughput | metric | 启用 vcenter.vm.disk.throughput 指标。 | true | 否 |
vcenter.vm.disk.usage | metric | 启用 vcenter.vm.disk.usage 指标。 | true | 否 |
vcenter.vm.disk.utilization | metric | 启用 vcenter.vm.disk.utilization 指标。 | true | 否 |
vcenter.vm.memory.ballooned | metric | 启用 vcenter.vm.memory.ballooned 指标。 | true | 否 |
vcenter.vm.memory.swapped | metric | 启用 vcenter.vm.memory.swapped 指标。 | true | 否 |
vcenter.vm.memory.swapped_ssd | metric | 启用 vcenter.vm.memory.swapped_ssd 指标。 | true | 否 |
vcenter.vm.memory.usage | metric | 启用 vcenter.vm.memory.usage 指标。 | true | 否 |
vcenter.vm.memory.utilization | metric | 启用 vcenter.vm.memory.utilization 指标。 | true | 否 |
vcenter.vm.network.packet.rate | metric | 启用 vcenter.vm.network.packet.rate 指标。 | true | 否 |
vcenter.vm.network.packet.drop.rate | metric | 启用 vcenter.vm.network.packet.drop.rate 指标。 | true | 否 |
vcenter.vm.network.throughput | metric | 启用 vcenter.vm.network.throughput 指标。 | true | 否 |
vcenter.vm.network.usage | metric | 启用 vcenter.vm.network.usage 指标。 | true | 否 |
vcenter.vm.vsan.latency.avg | metric | 启用 vcenter.vm.vsan.latency.avg 指标。 | true | 否 |
vcenter.vm.vsan.operations | metric | 启用 vcenter.vm.vsan.operations 指标。 | true | 否 |
vcenter.vm.vsan.throughput | metric | 启用 vcenter.vm.vsan.throughput 指标。 | true | 否 |
指标块
名称 | 类型 | 描述 | 默认值 | 必需 |
---|---|---|---|---|
启用 | 布尔值 | 是否启用指标。 | true | 否 |
资源属性块
名称 | 类型 | 描述 | 默认值 | 必需 |
---|---|---|---|---|
vcenter.datacenter.name | 资源属性 | 启用 vcenter.datacenter.name 资源属性。 | true | 否 |
vcenter.cluster.name | 资源属性 | 启用 vcenter.cluster.name 资源属性。 | true | 否 |
vcenter.datastore.name | 资源属性 | 启用 vcenter.cluster.resource_pool 资源属性。 | true | 否 |
vcenter.host.name | 资源属性 | 启用 vcenter.host.name 资源属性。 | true | 否 |
vcenter.resource_pool.inventory_path | 资源属性 | 启用 vcenter.resource_pool.inventory_path 资源属性。 | true | 否 |
vcenter.resource_pool.name | 资源属性 | 启用 vcenter.resource_pool.name 资源属性。 | true | 否 |
vcenter.virtual_app.inventory_path | 资源属性 | 启用 vcenter.virtual_app.inventory_path 资源属性。 | true | 否 |
vcenter.virtual_app.name | 资源属性 | 启用 vcenter.virtual_app.name 资源属性。 | true | 否 |
vcenter.vm.id | 资源属性 | 启用 vcenter.vm.id 资源属性。 | true | 否 |
vcenter.vm.name | 资源属性 | 启用 vcenter.vm.name 资源属性。 | true | 否 |
| 资源属性 | 启用 vcenter.vm_template.id 资源属性。 | true | 否 |
| 资源属性 | 启用 vcenter.vm_template.name 资源属性。 | true | 否 |
资源属性块
名称 | 类型 | 描述 | 默认值 | 必需 |
---|---|---|---|---|
启用 | 布尔值 | 是否启用资源属性。 | true | 否 |
调试指标块
debug_metrics
块配置了此组件生成的用于监控其状态的指标。
以下参数受支持
名称 | 类型 | 描述 | 默认值 | 必需 |
---|---|---|---|---|
disable_high_cardinality_metrics | 布尔值 | 是否禁用某些高基数指标。 | true | 否 |
级别 | string | 控制包装收集器发出的指标的详细程度。 | "详细" | 否 |
disable_high_cardinality_metrics
是 Grafana Alloy 对 OpenTelemetry Collector 中的 telemetry.disableHighCardinalityMetrics
功能门控的等价项。它删除可能导致高基数指标的特性。例如,删除关于 HTTP 和 gRPC 连接的指标中的 IP 地址和端口号属性。
注意
如果配置了,disable_high_cardinality_metrics
仅适用于otelcol.exporter.*
和otelcol.receiver.*
组件。
级别
是 Alloy 对 OpenTelemetry Collector 中的 telemetry.metrics.level
功能门控的等价项。可能的值是 "none"
、"basic"
、"normal"
和 "detailed"
。
输出块
output
块配置了一组组件,用于将结果遥测数据转发到。
以下参数受支持
名称 | 类型 | 描述 | 默认值 | 必需 |
---|---|---|---|---|
日志 | list(otelcol.Consumer) | 要发送日志的目标消费者列表。 | [] | 否 |
metrics | list(otelcol.Consumer) | 要发送指标的目标消费者列表。 | [] | 否 |
跟踪 | list(otelcol.Consumer) | 要发送跟踪的目标消费者列表。 | [] | 否 |
您必须指定 output
块,但所有参数都是可选的。默认情况下,遥测数据会被丢弃。根据需要配置 metrics
、logs
和 traces
参数,以将遥测数据发送到其他组件。
导出字段
otelcol.receiver.vcenter
不导出任何字段。
组件健康
otelcol.receiver.vcenter
只有在给定无效配置时才会报告为不健康。
调试信息
otelcol.receiver.vcenter
不公开任何特定于组件的调试信息。
示例
此示例在最终将遥测数据发送到 OTLP 兼容端点之前,通过批量处理器转发接收到的遥测数据。
otelcol.receiver.vcenter "default" {
endpoint = "https://127.0.0.1:15672"
username = "otelu"
password = "password"
output {
metrics = [otelcol.processor.batch.default.input]
}
}
otelcol.processor.batch "default" {
output {
metrics = [otelcol.exporter.otlp.default.input]
}
}
otelcol.exporter.otlp "default" {
client {
endpoint = sys.env("OTLP_ENDPOINT")
}
}
兼容组件
otelcol.receiver.vcenter
可以接受来自以下组件的参数
注意
连接某些组件可能不合理,或者组件可能需要进一步的配置才能正确连接。有关详细信息,请参阅链接的文档。