Versión de la integración1.0.9
Este check monitoriza las métricas expuestas de NVIDIA Management Library (NVML) a través del Datadog Agent y puede correlacionarlas con los dispositivos expuestos de Kubernetes.
Configuración
El check de NVML no está incluido en el paquete del Datadog Agent, por lo que es necesario instalarlo.
Instalación
Para el Agent v7.21+ / v6.21+, sigue las instrucciones siguientes para instalar el check de NVML en tu host. Consulta Usar integraciones de la comunidad para realizar la instalación con el Docker Agent o versiones anteriores del Agent.
Ejecuta el siguiente comando para instalar la integración del Agent:
Para Linux:
datadog-agent integration install -t datadog-nvml==<INTEGRATION_VERSION>
# You may also need to install dependencies since those aren't packaged into the wheel
sudo -u dd-agent -H /opt/datadog-agent/embedded/bin/pip3 install grpcio pynvml
Para Windows (con Powershell ejecutado como administrador):
& "$env:ProgramFiles\Datadog\Datadog Agent\bin\agent.exe" integration install -t datadog-nvml==<INTEGRATION_VERSION>
# You may also need to install dependencies since those aren't packaged into the wheel
& "$env:ProgramFiles\Datadog\Datadog Agent\embedded3\python" -m pip install grpcio pynvml
Configura tu integración de forma similar a las integraciones centrales.
Si utilizas Docker, hay un Dockerfile de ejemplo en el repositorio de NVML.
docker build -t dd-agent-nvml .
Si utilizas Docker y Kubernetes, deberás exponer las variables de entorno NVIDIA_VISIBLE_DEVICES y NVIDIA_DRIVER_CAPABILITIES. Consulta el archivo Docker incluido para ver un ejemplo.
Para correlacionar los dispositivos NVIDIA reservados de Kubernetes con el pod de Kubernetes que utiliza el dispositivo, monta el socket de dominio Unix /var/lib/kubelet/pod-resources/kubelet.sock en tu configuración del Agent. Encontrarás más información sobre este socket en el sitio web de Kubernetes. Nota: Este dispositivo está en soporte beta para la versión 1.15.
Configuración
Edita el archivo nvml.d/conf.yaml, en la carpeta conf.d/ en la raíz de tu directorio de configuración del Agent para comenzar a recopilar tus datos de rendimiento de NVML. Consulta el nvml.d/conf.yaml de ejemplo para conocer todas las opciones de configuración disponibles.
Reinicia el Agent.
Validación
Ejecuta el subcomando de estado del Agent y busca nvml en la sección Checks.
Datos recopilados
Métricas
| |
|---|
nvml.device_count (gauge) | Número de GPU en esta instancia. |
nvml.gpu_utilization (gauge) | Porcentaje de tiempo durante el último periodo de muestreo en el que uno o más kernels se ejecutaron en la GPU. Se muestra como porcentaje |
nvml.mem_copy_utilization (gauge) | Porcentaje de tiempo durante el último periodo de muestreo en el que la memoria global (dispositivo) se estaba leyendo o escribiendo. Se muestra como porcentaje |
nvml.fb_free (gauge) | Memoria FB no asignada. Se muestra como byte |
nvml.fb_used (gauge) | Memoria FB asignada. Se muestra como byte |
nvml.fb_total (gauge) | Memoria FB total instalada. Se muestra como byte |
nvml.power_usage (gauge) | Consumo de energía de esta GPU en milivatios y sus circuitos asociados (por ejemplo, la memoria). |
nvml.total_energy_consumption (count) | Consumo total de energía de esta GPU en milijulios (mJ) desde la última recarga del controlador. |
nvml.enc_utilization (gauge) | Utilización actual del codificador Se muestra en porcentaje |
nvml.dec_utilization (gauge) | La utilización actual del decodificador Se muestra en porcentaje. |
nvml.pcie_tx_throughput (gauge) | Utilización de PCIe TX Se muestra como kibibyte |
nvml.pcie_rx_throughput (gauge) | Utilización de PCIe RX Se muestra como kibibyte |
nvml.temperature (gauge) | Temperatura actual de esta GPU en grados centígrados |
nvml.fan_speed (gauge) | Utilización actual del ventilador Se muestra en porcentaje |
nvml.compute_running_process (gauge) | El uso actual de la memoria gpu por el proceso Se muestra como byte |
Eventos
NVML no incluye eventos.
Checks de servicio
Consulta service_checks.json para obtener una lista de los checks de servicio proporcionados por esta integración.
Solucionar problemas
¿Necesitas ayuda? Ponte en contacto con el soporte de Datadog.