菜单
文档breadcrumb arrow Grafana Alloybreadcrumb arrow 参考breadcrumb arrow 组件breadcrumb arrow otelcolbreadcrumb arrow otelcol.receiver.vcenter
开源

实验性

otelcol接收器.vcenter

实验性:这是一个实验性组件。实验性组件可能会频繁进行破坏性更改,并且可能会被移除,而没有等效的替代品。要使用该组件,必须将stability.level标志设置为实验性

otelcol.receiver.vcenter接受来自运行VMware vSphere API的vCenter或ESXi主机的指标,并将其转发到其他otelcol.*组件。

注意: otelcol.receiver.vcenter 是对来自 otelcol-contrib 分发的上游 OpenTelemetry Collector vcenter 接收器的包装。如果有必要,错误报告或功能请求将被重定向到上游仓库。

可以通过为它们提供不同的标签来指定多个 otelcol.receiver.vcenter 组件。

可以收集的完整指标列表可以在 vcenter 接收器文档 中找到。

先决条件

此接收器已构建以支持 ESXi 和 vCenter 版本

  • 8
  • 7.0

必须指定一个分配给具有对 vCenter 服务器、集群以及所有后续监控资源权限的“只读”用户,以便接收器能够检索它们的信息。

用法

alloy
otelcol.receiver.vcenter "LABEL" {
  endpoint = "VCENTER_ENDPOINT"
  username = "VCENTER_USERNAME"
  password = "VCENTER_PASSWORD"

  output {
    metrics = [...]
  }
}

参数

otelcol.receiver.vcenter 支持以下参数

名称类型描述默认值必需
endpointstring指向已启用 SDK 路径的 vCenter 服务器或 ESXi 主机的端点。
usernamestring用于身份验证的用户名。
passwordstring用于身份验证的密码。
collection_interval持续时间定义收集指标的频率。"1m"
initial_delay持续时间定义此接收器启动前等待的时间。"1s"
timeout持续时间定义底层 HTTP 客户端的超时时间。"0s"

endpoint 的格式为 <protocol>://<hostname>。例如,https://vcsa.hostname.localnet

otelcol.receiver.vcenter 定义内部支持以下块

层次结构描述必需
tlstls为 HTTP 客户端配置 TLS。
metricsmetrics配置将发送到下游组件的指标。
resource_attributesresource_attributes为发送到下游组件的指标配置资源属性。
debug_metricsdebug_metrics配置此组件生成的用于监控其状态的指标。
outputoutput配置将接收到的遥测数据发送到何处。

tls 块

tls 块配置用于服务器的 TLS 设置。如果没有提供 tls 块,则不会在连接到服务器时使用 TLS。

以下参数受支持

名称类型描述默认值必需
ca_filestringCA 文件路径。
ca_pemstring用于验证服务器的 CA PEM 编码文本。
cert_filestringTLS 证书路径。
cert_pemstring用于客户端身份验证的证书 PEM 编码文本。
insecure_skip_verify布尔值忽略不安全的服务器 TLS 证书。
include_system_ca_certs_pool布尔值是否要在证书颁发机构旁边加载系统证书颁发机构池。false
insecure布尔值连接到配置的服务器时禁用 TLS。
key_filestringTLS 证书密钥路径。
key_pemsecret用于客户端身份验证的密钥 PEM 编码文本。
max_versionstring连接可接受的 TLS 最低版本。"TLS 1.3"
min_versionstring连接可接受的最小 TLS 版本。"TLS 1.2"
cipher_suites列表(字符串)TLS 传输可以使用的一组 TLS 密码套件列表。[]
reload_interval持续时间证书重新加载后的持续时间。"0s"
server_namestring设置时,验证服务器证书的主机名。

如果服务器不支持TLS,您必须将insecure参数设置为true

要禁用连接到服务器的tls,请将insecure参数设置为true

如果将reload_interval设置为"0s",则证书永远不会重新加载。

以下参数对相互排斥,不能同时设置

  • ca_pemca_file
  • cert_pemcert_file
  • key_pemkey_file

如果cipher_suites留空,将使用安全的默认列表。有关支持的加密套件列表,请参阅Go TLS文档

metrics块

名称类型描述默认值必需
vcenter.cluster.cpu.effectivemetric启用vcenter.cluster.cpu.effective指标。true
vcenter.cluster.cpu.usagemetric启用vcenter.cluster.cpu.usage指标。true
vcenter.cluster.host.countmetric启用vcenter.cluster.host.count指标。true
vcenter.cluster.memory.effectivemetric启用vcenter.cluster.memory.effective指标。true
vcenter.cluster.memory.limitmetric启用vcenter.cluster.memory.limit指标。true
vcenter.cluster.vm.countmetric启用vcenter.cluster.vm.count指标。true
vcenter.cluster.vm_template.countmetric启用vcenter.cluster.vm_template.count指标。true
vcenter.cluster.vsan.congestionsmetric启用vcenter.cluster.vsan.congestions指标。true
vcenter.cluster.vsan.latency.avgmetric启用vcenter.cluster.vsan.latency.avg指标。true
vcenter.cluster.vsan.operationsmetric启用vcenter.cluster.vsan.operations指标。true
vcenter.cluster.vsan.throughputmetric启用vcenter.cluster.vsan.throughput指标。true
vcenter.datacenter.cluster.countmetric启用vcenter.datacenter.cluster.count指标。true
vcenter.datacenter.cpu.limitmetric启用vcenter.datacenter.cpu.limit指标。true
vcenter.datacenter.datastore.countmetric启用vcenter.datacenter.datastore.count指标。true
vcenter.datacenter.disk.spacemetric启用vcenter.datacenter.disk.space指标。true
vcenter.datacenter.host.countmetric启用vcenter.datacenter.host.count指标。true
vcenter.datacenter.memory.limitmetric启用vcenter.datacenter.memory.limit指标。true
vcenter.datacenter.vm.countmetric启用vcenter.datacenter.vm.count指标。true
vcenter.datastore.disk.usagemetric启用vcenter.datastore.disk.usage指标。true
vcenter.datastore.disk.utilizationmetric启用vcenter.datastore.disk.utilization指标。true
vcenter.host.cpu.capacitymetric启用vcenter.host.cpu.capacity指标。true
vcenter.host.cpu.reservedmetric启用vcenter.host.cpu.reserved指标。true
vcenter.host.cpu.usagemetric启用vcenter.host.cpu.usage指标。true
vcenter.host.cpu.utilizationmetric启用vcenter.host.cpu.utilization指标。true
vcenter.host.disk.latency.avgmetric启用vcenter.host.disk.latency.avg指标。true
vcenter.host.disk.latency.maxmetric启用vcenter.host.disk.latency.max指标。true
vcenter.host.disk.throughputmetric启用vcenter.host.disk.throughput指标。true
vcenter.host.memory.usagemetric启用vcenter.host.memory.usage指标。true
vcenter.host.memory.utilizationmetric启用vcenter.host.memory.utilization指标。true
vcenter.host.network.packet.ratemetric启用vcenter.host.network.packet.rate指标。true
vcenter.host.network.packet.error.ratemetric启用vcenter.host.network.packet.error.rate指标。true
vcenter.host.network.packet.drop.ratemetric启用vcenter.host.network.packet.drop.rate指标。true
vcenter.host.network.throughputmetric启用vcenter.host.network.throughput指标。true
vcenter.host.network.usagemetric启用 vcenter.host.network.usage 指标。true
vcenter.host.vsan.cache.hit_ratemetric启用 vcenter.host.vsan.cache.hit_rate 指标。true
vcenter.host.vsan.congestionsmetric启用 vcenter.host.vsan.congestions 指标。true
vcenter.host.vsan.latency.avgmetric启用 vcenter.host.vsan.latency.avg 指标。true
vcenter.host.vsan.operationsmetric启用 vcenter.host.vsan.operations 指标。true
vcenter.host.vsan.throughputmetric启用 vcenter.host.vsan.throughput 指标。true
vcenter.resource_pool.cpu.sharesmetric启用 vcenter.resource_pool.cpu.shares 指标。true
vcenter.resource_pool.cpu.usagemetric启用 vcenter.resource_pool.cpu.usage 指标。true
vcenter.resource_pool.memory.balloonedmetric启用 vcenter.resource_pool.memory.ballooned 指标。true
vcenter.resource_pool.memory.grantedmetric启用 vcenter.resource_pool.memory.granted 指标。true
vcenter.resource_pool.memory.sharesmetric启用 vcenter.resource_pool.memory.shares 指标。true
vcenter.resource_pool.memory.swappedmetric启用 vcenter.resource_pool.memory.swapped 指标。true
vcenter.resource_pool.memory.usagemetric启用 vcenter.resource_pool.memory.usage 指标。true
vcenter.vm.cpu.readinessmetric启用 vcenter.vm.cpu.readiness 指标。true
vcenter.vm.cpu.usagemetric启用 vcenter.vm.cpu.usage 指标。true
vcenter.vm.cpu.utilizationmetric启用 vcenter.vm.cpu.utilization 指标。true
vcenter.vm.disk.latency.avgmetric启用 vcenter.vm.disk.latency.avg 指标。true
vcenter.vm.disk.latency.maxmetric启用 vcenter.vm.disk.latency.max 指标。true
vcenter.vm.disk.throughputmetric启用 vcenter.vm.disk.throughput 指标。true
vcenter.vm.disk.usagemetric启用 vcenter.vm.disk.usage 指标。true
vcenter.vm.disk.utilizationmetric启用 vcenter.vm.disk.utilization 指标。true
vcenter.vm.memory.balloonedmetric启用 vcenter.vm.memory.ballooned 指标。true
vcenter.vm.memory.swappedmetric启用 vcenter.vm.memory.swapped 指标。true
vcenter.vm.memory.swapped_ssdmetric启用 vcenter.vm.memory.swapped_ssd 指标。true
vcenter.vm.memory.usagemetric启用 vcenter.vm.memory.usage 指标。true
vcenter.vm.memory.utilizationmetric启用 vcenter.vm.memory.utilization 指标。true
vcenter.vm.network.packet.ratemetric启用 vcenter.vm.network.packet.rate 指标。true
vcenter.vm.network.packet.drop.ratemetric启用 vcenter.vm.network.packet.drop.rate 指标。true
vcenter.vm.network.throughputmetric启用 vcenter.vm.network.throughput 指标。true
vcenter.vm.network.usagemetric启用 vcenter.vm.network.usage 指标。true
vcenter.vm.vsan.latency.avgmetric启用 vcenter.vm.vsan.latency.avg 指标。true
vcenter.vm.vsan.operationsmetric启用 vcenter.vm.vsan.operations 指标。true
vcenter.vm.vsan.throughputmetric启用 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资源属性启用 vcenter.vm_template.id 资源属性。true
vcenter.vm_template.name资源属性启用 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)要发送日志的目标消费者列表。[]
metricslist(otelcol.Consumer)要发送指标的目标消费者列表。[]
跟踪list(otelcol.Consumer)要发送跟踪的目标消费者列表。[]

您必须指定 output 块,但所有参数都是可选的。默认情况下,遥测数据会被丢弃。根据需要配置 metricslogstraces 参数,以将遥测数据发送到其他组件。

导出字段

otelcol.receiver.vcenter 不导出任何字段。

组件健康

otelcol.receiver.vcenter 只有在给定无效配置时才会报告为不健康。

调试信息

otelcol.receiver.vcenter 不公开任何特定于组件的调试信息。

示例

此示例在最终将遥测数据发送到 OTLP 兼容端点之前,通过批量处理器转发接收到的遥测数据。

alloy
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 可以接受来自以下组件的参数

注意

连接某些组件可能不合理,或者组件可能需要进一步的配置才能正确连接。有关详细信息,请参阅链接的文档。