菜单
开源

实验性

otelcol.receiver.vcenter

实验性:这是一个实验性组件。实验性组件可能会频繁变动,甚至会被移除而不提供替代方案。要使用该组件,必须将 stability.level 标志设置为 experimental

otelcol.receiver.vcenter 可以从运行 VMware vSphere APIs 的 vCenter 或 ESXi 主机接收度量标准,并将其转发到其他 otelcol.* 组件。

注意otelcol.receiver.vcenter 是 upstream OpenTelemetry Collector vcenter 接收器的包装,来自 otelcol-contrib 发行版。如需报告错误或进行功能请求,请将它们重定向到上游存储库,如果需要的话。

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

可以在此 vcenter 接收器文档 中找到可以收集的所有度量标准的全面列表。

先决条件

本接收器旨在支持 ESXi 和 vCenter 版本

  • 8
  • 7.0

为了接收器能获取关于它们的信息,必须指定一个分配给 vSphere 并具有访问 vCenter 服务器、集群以及所有后续资源的权限的“只读”用户。

用法

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

  output {
    metrics = [...]
  }
}

参数

otelcol.receiver.vcenter 支持以下参数

名称类型描述默认值必需
endpoint字符串一个连接到启用了 SDK 路径的 vCenter 服务器或 ESXi 主机的端点。
username字符串用于身份验证的用户名。
password字符串用于身份验证的密码。
collection_interval持续时间定义收集度量标准的频率。"1m"
initial_delay持续时间定义接收器启动前的等待时间。"1s"
timeout持续时间定义底层 HTTP 客户端的超时时间。"0s"

端点(endpoint)的格式为 <协议>://<主机名>。例如,https://vcsa.hostname.localnet

块(Blocks)

以下块在 otelcol.receiver.vcenter 的定义中受支持

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

tls 块

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

以下参数受支持

名称类型描述默认值必需
ca_file字符串CA 文件的路径。
ca_pem字符串用于验证服务器的 CA PEM 编码文本。
cert_file字符串TLS 证书的路径。
cert_pem字符串客户端认证的 PEM 编码证书文本。
insecure_skip_verify布尔型忽略不安全的服务器 TLS 证书。
include_system_ca_certs_pool布尔型是否在证书颁发机构的基础上加载系统证书颁发机构池。false
insecure布尔型在连接到配置的服务器时禁用 TLS。
key_file字符串TLS 证书键的路径。
key_pemsecret客户端认证的 PEM 编码密钥文本。
max_version字符串连接可接受的 TLS 版本的最大值。"TLS 1.3"
min_version字符串连接可接受的最小 TLS 版本。"TLS 1.2"
cipher_suites列表(string)可以使用的 TLS 密码套件的列表。[]
reload_interval持续时间证书重新加载的持续时间。"0s"
server_name字符串设置时验证服务器证书的域名。

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

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

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

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

  • ca_pemca_file
  • cert_pemcert_file
  • key_pemkey_file

如果将 cipher_suites 留空,则使用安全默认列表。有关受支持的密码套件列表,请参阅 [Go TLS 文档](https://golang.ac.cn/src/crypto/tls/cipher_suites.go)。

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.datacenter.cluster.countmetric启用 vcenter.datacenter.cluster.count 指标。false
vcenter.datacenter.cpu.limitmetric启用 vcenter.datacenter.cpu.limit 指标。false
vcenter.datacenter.datastore.countmetric启用 vcenter.datacenter.datastore.count 指标。false
vcenter.datacenter.disk.spacemetric启用 vcenter.datacenter.disk.space 指标。false
vcenter.datacenter.host.countmetric启用 vcenter.datacenter.host.count 指标。false
vcenter.datacenter.memory.limitmetric启用 vcenter.datacenter.memory.limit 指标。false
vcenter.datacenter.vm.countmetric启用 vcenter.datacenter.vm.count 指标。false
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
虚拟中心的CPU保留metric启用vcenter.host.cpu.reserved指标。true
虚拟中心的CPU使用率metric启用vcenter.host.cpu.usage指标。true
虚拟中心的CPU利用率metric启用vcenter.host.cpu.utilization指标。true
虚拟中心的磁盘延迟平均metric启用vcenter.host.disk.latency.avg指标。true
虚拟中心的磁盘延迟最大metric启用vcenter.host.disk.latency.max指标。true
虚拟中心的磁盘吞吐量metric启用vcenter.host.disk.throughput指标。true
虚拟中心的内存使用metric启用vcenter.host.memory.usage指标。true
虚拟中心的内存利用率metric启用vcenter.host.memory.utilization指标。true
虚拟中心的网络数据包速率metric启用vcenter.host.network.packet.rate指标。true
虚拟中心的网络数据包错误率metric启用vcenter.host.network.packet.error.rate指标。true
虚拟中心的网络数据包丢弃率metric启用vcenter.host.network.packet.drop.rate指标。true
虚拟中心的网络吞吐量metric启用vcenter.host.network.throughput指标。true
虚拟中心的网络使用率metric启用vcenter.host.network.usage指标。true
虚拟中心资源池的CPU份额metric启用vcenter.resource_pool.cpu.shares指标。true
虚拟中心资源池的CPU使用率metric启用vcenter.resource_pool.cpu.usage指标。true
虚拟中心资源池的内存膨胀metric启用vcenter.resource_pool.memory.ballooned指标。false
虚拟中心资源池的内存分配metric启用vcenter.resource_pool.memory.granted指标。false
虚拟中心资源池的内存份额metric启用vcenter.resource_pool.memory.shares指标。true
虚拟中心资源池的内存交换metric启用vcenter.resource_pool.memory.swapped指标。false
虚拟中心资源池的内存使用metric启用vcenter.resource_pool.memory.usage指标。true
虚拟中心虚拟机的CPU就绪性metric启用vcenter.vm.cpu.readiness指标。true
虚拟中心虚拟机的CPU使用率metric启用vcenter.vm.cpu.usage指标。true
虚拟中心虚拟机的CPU利用率metric启用vcenter.vm.cpu.utilization指标。true
虚拟中心虚拟机的磁盘延迟平均metric启用vcenter.vm.disk.latency.avg指标。true
虚拟中心虚拟机的磁盘延迟最大metric启用vcenter.vm.disk.latency.max指标。true
虚拟中心虚拟机的磁盘吞吐量metric启用vcenter.vm.disk.throughput指标。true
虚拟中心虚拟机的磁盘使用metric启用vcenter.vm.disk.usage指标。true
虚拟中心虚拟机的磁盘利用率metric启用vcenter.vm.disk.utilization指标。true
虚拟中心虚拟机的内存膨胀metric启用vcenter.vm.memory.ballooned指标。true
虚拟中心虚拟机的内存交换metric启用vcenter.vm.memory.swapped指标。true
虚拟中心虚拟机的内存交换SSDmetric启用vcenter.vm.memory.swapped_ssd指标。true
虚拟中心虚拟机的内存使用metric启用vcenter.vm.memory.usage指标。true
虚拟中心虚拟机的内存利用率metric启用vcenter.vm.memory.utilization指标。true
虚拟中心虚拟机的网络数据包速率metric启用vcenter.vm.network.packet.rate指标。true
虚拟中心虚拟机的网络数据包丢弃率metric启用vcenter.vm.network.packet.drop.rate指标。true
虚拟中心虚拟机的网络吞吐量metric启用vcenter.vm.network.throughput指标。true
虚拟中心虚拟机的网络使用metric启用vcenter.vm.network.usage指标。true

指标块

名称类型描述默认值必需
已启用布尔型是否启用指标。true

资源属性块

名称类型描述默认值必需
虚拟中心数据中心名称资源属性启用vcenter.datacenter.name资源属性。true
虚拟中心集群名称资源属性启用vcenter.cluster.name资源属性。true
虚拟中心数据存储名称资源属性启用vcenter.cluster.resource_pool资源属性。true
虚拟中心主机名称资源属性启用vcenter.host.name资源属性。true
虚拟中心资源池库存路径资源属性启用vcenter.resource_pool.inventory_path资源属性。true
虚拟中心资源池名称资源属性启用vcenter.resource_pool.name资源属性。true
虚拟中心虚拟应用库存路径资源属性启用vcenter.virtual_app.inventory_path资源属性。true
虚拟中心虚拟应用名称资源属性启用vcenter.virtual_app.name资源属性。true
虚拟中心虚拟机ID资源属性启用vcenter.vm.id资源属性。true
虚拟中心虚拟机名称资源属性启用vcenter.vm.name资源属性。true
虚拟中心虚拟机模板ID资源属性启用 vcenter.vm_template.id 资源属性。true
vcenter.vm_template.name资源属性启用 vcenter.vm_template.name 资源属性。true

资源属性块

名称类型描述默认值必需
已启用布尔型是否启用资源属性。true

调试度量块

debug_metrics 块配置了该组件生成的用于监控其状态的指标。

以下参数受支持

名称类型描述默认值必需
disable_high_cardinality_metrics布尔型是否禁用某些高基数指标。true
级别字符串控制包装收集器发出的指标详细程度。"详细"

它移除了可能导致高基数指标的属性。例如,HTTP 和 gRPC 连接的指标中包含 IP 地址和端口号的属性被移除。

注意

如果已配置,则 disable_high_cardinality_metrics 仅适用于 otelcol.exporter.*otelcol.receiver.* 组件。

level 是 OpenTelemetry Collector 中 telemetry.metrics.level 功能门的 Alloy 等价。可能的值有 "none""basic""normal""detailed"

输出块

output 块配置了一组组件,用于将结果遥测数据转发到。

以下参数受支持

名称类型描述默认值必需
日志列表(otelcol.Consumer)要发送日志的消费列表。[]
metrics列表(otelcol.Consumer)要发送指标的消费列表。[]
跟踪列表(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 = env("OTLP_ENDPOINT")
  }
}

兼容组件

otelcol.receiver.vcenter 可以接受以下组件的参数

注意

连接某些组件可能不合理,或者组件可能需要进一步配置以正确工作。有关更多详细信息,请参阅相关文档。