Historial de rendimiento de Espacios de almacenamiento directo

Se aplica a: Windows Server 2022, Windows Server 2019

El historial de rendimiento es una nueva característica que ofrece a los administradores de Espacios de almacenamiento directo un fácil acceso a las mediciones históricas de cálculo, memoria, red y almacenamiento en servidores host, unidades, volúmenes, máquinas virtuales y mucho más. El historial de rendimiento se recopila automáticamente y se almacena en el clúster durante un año.

Importante

Esta característica es nueva en Windows Server 2019. No está disponible en Windows Server 2016.

Primeros pasos

El historial de rendimiento se recopila de forma predeterminada con Espacios de almacenamiento directo en Windows Server 2019. No es necesario instalar, configurar ni iniciar nada. No se requiere una conexión a Internet, System Center no es necesario y no se requiere una base de datos externa.

Para ver el historial de rendimiento del clúster gráficamente, use Windows Admin Center:

Performance history in Windows Admin Center

Para consultarlo y procesarlo mediante programación, use el nuevo cmdlet Get-ClusterPerf. Consulte Uso en PowerShell.

Qué se recopila

El historial de rendimiento se recopila para 7 tipos de objetos:

Types of objects

Cada tipo de objeto tiene muchas series: por ejemplo, ClusterNode.Cpu.Usage se recopila para cada servidor.

Para más información sobre lo que se recopila para cada tipo de objeto y cómo interpretarlo, consulte estos subtemas:

Object Serie
Unidades Qué se recopila para las unidades
Adaptadores de red Qué se recopila para los adaptadores de red
Servidores Qué se recopila para los servidores
Discos duros virtuales Qué se recopila para los discos duros virtuales
Máquinas virtuales Qué se recopila para las máquinas virtuales
Volúmenes Qué se recopila para los volúmenes
Clústeres Qué se recopila para los clústeres

Muchas series se agregan a través de objetos del mismo tipo a su elemento principal: por ejemplo, NetAdapter.Bandwidth.Inbound se recoge para cada adaptador de red por separado y se agrega al servidor global; del mismo modo, ClusterNode.Cpu.Usage se agrega al clúster global; y así sucesivamente.

Plazos

El historial de rendimiento se almacena durante un año, con una granularidad decreciente. Para la hora más reciente, las mediciones están disponibles cada diez segundos. Después, se combinan de forma inteligente ( haciendo una media o suma, según convenga) en series menos granulares que abarcan más tiempo. Para el día más reciente, las mediciones están disponibles cada cinco minutos; para la semana más reciente, cada quince minutos; y así sucesivamente.

En Windows Admin Center, puede seleccionar el período de tiempo en la esquina superior derecha del gráfico.

Timeframes in Windows Admin Center

En PowerShell, use el parámetro -TimeFrame.

Estos son los períodos de tiempo disponibles:

Período de tiempo Frecuencia de medición Retenida por
LastHour Cada 10 segundos 1 hora
LastDay Cada 5 minutos 25 horas
LastWeek Cada 15 minutos. 8 días
LastMonth Cada 1 hora 35 días
LastYear Cada día 400 días

Uso en PowerShell

Use el cmdlet Get-ClusterPerformanceHistory para consultar y procesar el historial de rendimiento en PowerShell.

Get-ClusterPerformanceHistory

Sugerencia

Use el alias Get-ClusterPerf para guardar algunas pulsaciones de tecla.

Ejemplo

Obtenga el uso de CPU de la máquina virtual MyVM para la última hora:

Get-VM "MyVM" | Get-ClusterPerf -VMSeriesName "VM.Cpu.Usage" -TimeFrame LastHour

Para obtener ejemplos más avanzados, consulte los scripts de muestra publicados que proporcionan código de inicio para encontrar valores máximos, calcular promedios, trazar líneas de tendencia, ejecutar la detección de valores atípicos y mucho más.

Especificar el objeto

Puede especificar el objeto que quiera por la canalización. Esto funciona con 7 tipos de objetos:

Objeto de la canalización Ejemplo
Get-PhysicalDisk Get-PhysicalDisk -SerialNumber "XYZ456" | Get-ClusterPerf
Get-NetAdapter Get-NetAdapter "Ethernet" | Get-ClusterPerf
Get-ClusterNode Get-ClusterNode "Server123" | Get-ClusterPerf
Get-VHD Get-VHD "C:\ClusterStorage\MyVolume\MyVHD.vhdx" | Get-ClusterPerf
Get-VM Get-VM "MyVM" | Get-ClusterPerf
Get-Volume Get-Volume -FriendlyName "MyVolume" | Get-ClusterPerf
Get-Cluster Get-Cluster "MyCluster" | Get-ClusterPerf

Si no especifica, se devuelve el historial de rendimiento del clúster general.

Especificar la serie

Puede especificar la serie que quiera con estos parámetros:

Parámetro Ejemplo List
-PhysicalDiskSeriesName "PhysicalDisk.Iops.Read" Qué se recopila para las unidades
-NetAdapterSeriesName "NetAdapter.Bandwidth.Outbound" Qué se recopila para los adaptadores de red
-ClusterNodeSeriesName "ClusterNode.Cpu.Usage" Qué se recopila para los servidores
-VHDSeriesName "Vhd.Size.Current" Qué se recopila para los discos duros virtuales
-VMSeriesName "Vm.Memory.Assigned" Qué se recopila para las máquinas virtuales
-VolumeSeriesName "Volume.Latency.Write" Qué se recopila para los volúmenes
-ClusterSeriesName "PhysicalDisk.Size.Total" Qué se recopila para los clústeres

Sugerencia

Use la finalización con tabulación para detectar las series disponibles.

Si no se especifica, se devuelven todas las series disponibles para el objeto especificado.

Especificar el período de tiempo

Puede especificar el periodo de tiempo del historial que quiera con el parámetro -TimeFrame.

Sugerencia

Use la finalización con tabulación para detectar períodos de tiempo disponibles.

Si no especifica nada, se devuelve la medida MostRecent.

Cómo funciona

Almacenamiento del historial de rendimiento

Poco después de habilitar Espacios de almacenamiento directo, se crea un volumen de aproximadamente 10 GB denominado ClusterPerformanceHistory y se aprovisiona en él una instancia del Motor de almacenamiento extensible (también conocido como Microsoft JET). Esta base de datos ligera almacena el historial de rendimiento sin intervención ni administración del administrador.

Volume for performance history storage

El volumen está respaldado por Espacios de almacenamiento y usa resiliencia simple, de reflejo doble o de reflejo triple, dependiendo del número de nodos del clúster. Se repara después de errores de unidad o servidor igual que cualquier otro volumen en Espacios de almacenamiento directo.

El volumen usa ReFS pero no es un Volumen compartido de clúster (CSV), por lo que solo aparece en el nodo propietario del Grupo de clústeres. Además de crearse automáticamente, este volumen no tiene nada de especial: puede consultarlo, navegar por él, cambiar su tamaño o eliminarlo (no se recomienda). Si algo va mal, consulte Solución de problemas.

Detección de objetos y recopilación de datos

El historial de rendimiento detecta automáticamente los objetos relevantes, como las máquinas virtuales, en cualquier lugar del clúster y comienza a transmitir sus contadores de rendimiento. Los contadores se agregan, sincronizan e insertan en la base de datos. El streaming se ejecuta de forma continua y está optimizado para que el impacto en el sistema sea mínimo.

El Servicio de mantenimiento, de alta disponibilidad, se encarga del control de la colección: si el nodo donde se está ejecutando se cae, se reanudará instantes después en otro nodo del clúster. El historial de rendimiento puede fallar brevemente, pero se reanudará automáticamente. Puede consultar el Servicio de mantenimiento de la salud y su nodo propietario ejecutando Get-ClusterResource Health en PowerShell.

Control de brechas de medición

Cuando las medidas se combinan en series menos granulares que abarcan más tiempo, como se describe en Períodos de tiempo, se excluyen los períodos de datos que faltan. Por ejemplo, si el servidor estuvo inactivo durante 30 minutos y después funcionó al 50 % de CPU durante los 30 minutos siguientes, la media de ClusterNode.Cpu.Usage de la hora se registrará correctamente como 50 % (no 25 %).

Extensibilidad y personalización

El historial de rendimiento es compatible con scripts. Use PowerShell para extraer cualquier historial disponible directamente desde la base de datos para crear informes o alertas automatizados, exportar historiales para guardarlos, implementar sus propias visualizaciones, etc. Consulte los scripts de ejemplo publicados para obtener un código de inicio útil.

No es posible recopilar el historial de objetos, períodos de tiempo o series adicionales.

La frecuencia de medición y el período de retención no se pueden configurar actualmente.

Inicio o detención del historial de rendimiento

¿Cómo puedo habilitar esta característica?

A menos que Stop-ClusterPerformanceHistory, el historial de rendimiento está habilitado de manera predeterminada.

Para volver a habilitarlo, ejecute este cmdlet de PowerShell como administrador:

Start-ClusterPerformanceHistory

¿Cómo puedo deshabilitar esta característica?

Para dejar de recopilar el historial de rendimiento, ejecute este cmdlet de PowerShell como administrador:

Stop-ClusterPerformanceHistory

Para eliminar las mediciones existentes, use la marca -DeleteHistory:

Stop-ClusterPerformanceHistory -DeleteHistory

Sugerencia

Durante la implementación inicial, puede evitar que se inicie el historial de rendimiento estableciendo el parámetro -CollectPerformanceHistory de Enable-ClusterStorageSpacesDirect en $False.

Solución de problemas

El cmdlet no funciona

Un mensaje de error como "El término 'Get-ClusterPerf' no se reconoce como el nombre de un cmdlet" significa que la característica no está disponible o instalada. Compruebe que tiene la compilación 17692 o posterior de Windows Server Insider Preview, que ha instalado el Clúster de conmutación por error y que está ejecutando Espacios de almacenamiento directo.

Nota

Esta característica no está disponible en Windows Server 2016 o versiones anteriores.

Sin datos disponibles

Si un gráfico muestra "No hay datos disponibles" como se muestra, aquí se muestra cómo solucionar problemas:

No data available

  1. Si el objeto se ha agregado o creado recientemente, espere a que se detecte (hasta 15 minutos).

  2. Actualice la página o espere a la siguiente actualización en segundo plano (hasta 30 segundos).

  3. Algunos objetos especiales quedan excluidos del historial de rendimiento: por ejemplo, las máquinas virtuales que no están agrupadas en clúster y los volúmenes que no usan el sistema de archivos de Volumen compartido de clúster (CSV). Consulte el subtema correspondiente al tipo de objeto, como Historial de rendimiento de los volúmenes, para conocer la letra pequeña.

  4. Si el problema persiste, abra PowerShell como administrador y ejecute el cmdlet Get-ClusterPerf. El cmdlet incluye lógica de solución de problemas para identificar problemas comunes, como si falta el volumen ClusterPerformanceHistory, y proporciona instrucciones de solución.

  5. Si el comando del paso anterior no devuelve nada, puede intentar reiniciar el Servicio de mantenimiento (que recopila el historial de rendimiento) ejecutando Stop-ClusterResource Health ; Start-ClusterResource Health en PowerShell.

Referencias adicionales