Telegraf 的 DPDK 插件提供了两个 input 插件,分别是 dpdkstat 和 dpdk-devbind。其中,dpdkstat 插件用于收集 DPDK 网络设备的统计信息;dpdk-devbind 插件则用于查询和设置 DPDK 设备的绑定状态。
下面是 dpdkstat 插件可以收集到的一些指标:
- dpdk_rx_packets: 接收数据包总数。
- dpdk_rx_bytes: 接收字节数。
- dpdk_tx_packets: 发送数据包总数。
- dpdk_tx_bytes: 发送字节数。
- dpdk_rx_error_packets: 接收错误数据包总数。
- dpdk_tx_error_packets: 发送错误数据包总数。
- dpdk_rx_mbuf_alloc_failed: 接收内存池分配失败次数。
- dpdk_tx_mbuf_alloc_failed: 发送内存池分配失败次数。
除了这些指标之外,dpdkstat 还可以通过配置 devices
参数来监控特定的 DPDK 网络设备,并对每个设备单独进行指标采集。你可以使用类似以下的方式在 telegraf.conf 中为其添加配置:
[[inputs.dpdkstat]]
## Optional: specify one or more devices to monitor.
devices = ["eth1", "eth2"]
另外,dpkd-devbind 插件主要用于查询和设置 DPDK 设备绑定状态,例如是否被 Linux 内核卸载、是否与 VFIO 驱动程序配合使用等等。该插件可以返回以下指标:
- dpdk_devbind_status: 设备绑定状态(bound/unbound/other)。
- dpdk_kernel_driver: 内核驱动程序名称(如果已加载)。
- dpdk_pci_device: 设备 PCI 地址。
总之,Telegraf 的 DPDK 插件提供了丰富的指标信息,能够帮助你更好地监控和管理 DPDK 网络设备。