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 proporciona a los administradores Espacios de almacenamiento directo acceso fácil a las medidas históricas de proceso, memoria, red y almacenamiento en servidores host, unidades, volúmenes, máquinas virtuales, etc. 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 es necesaria una conexión a Internet, System Center no es necesaria 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 Get-ClusterPerf cmdlet . 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 obtener más información sobre lo que se recopila para cada tipo de objeto y cómo interpretarlos, 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 entre objetos del mismo nivel a su elemento primario: por ejemplo, NetAdapter.Bandwidth.Inbound se recopila para cada adaptador de red por separado y agregado al servidor global; del mismo modo ClusterNode.Cpu.Usage , se agrega al clúster general; etc.

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. A partir de entonces, se combinan de forma inteligente (promediando o sumando, según corresponda) 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 -TimeFrame parámetro .

Estos son los períodos de tiempo disponibles:

Período de tiempo Frecuencia de medición Retenido para
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 1 día 400 días

Uso en PowerShell

Use el cmdlet para consultar y procesar el Get-ClusterPerformanceHistory 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 ejemplo publicados que proporcionan código de inicio para buscar valores máximos, calcular promedios, trazar líneas de tendencia, ejecutar detección de valores atípicos, etc.

Especificar el objeto

Puede especificar el objeto que desea mediante 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 desee 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 período de tiempo del historial que desee con el -TimeFrame parámetro .

Sugerencia

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

Si no se especifica, se devuelve la MostRecent medida.

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 allí se aprovisiona una instancia del extensible Storage Engine (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 una resistencia de reflejo bidireccional simple o bidireccional, según el 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 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, no hay nada especial sobre este volumen: puede verlo, examinarlo, cambiar su tamaño o eliminarlo (no recomendado). 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 objetos relevantes, como 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 continuamente y está optimizado para un impacto mínimo del sistema.

La colección se controla mediante el Servicio de mantenimiento, que es de alta disponibilidad: si el nodo en el que se ejecuta deja de funcionar, se reanudará momentos más adelante en otro nodo del clúster. El historial de rendimiento puede expirar brevemente, pero se reanudará automáticamente. Puede ver el Servicio de mantenimiento y su nodo propietario mediante la ejecución 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 estaba inactivo durante 30 minutos, después se ejecuta en un 50 % de CPU durante los próximos 30 minutos, el ClusterNode.Cpu.Usage promedio de la hora se registrará correctamente como 50 % (no 25 %).

Extensibilidad y personalización

El historial de rendimiento es descriptivo para scripts. Use PowerShell para extraer cualquier historial disponible directamente de la base de datos para crear informes automatizados o alertas, historial de exportación para el mantenimiento seguro, implementar sus propias visualizaciones, etc. Consulte los scripts de ejemplo publicados para obtener código de inicio útil.

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

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

Iniciar o detener el historial de rendimiento

Cómo habilitar esta característica?

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

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

Start-ClusterPerformanceHistory

Cómo deshabilitar esta característica?

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

Stop-ClusterPerformanceHistory

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

Stop-ClusterPerformanceHistory -DeleteHistory

Sugerencia

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

Solucionar 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 Windows server Insider Preview, compilación 17692 o posterior, que ha instalado clústeres 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 se excluyen del historial de rendimiento( por ejemplo, las máquinas virtuales que no están agrupadas y los volúmenes que no usan el sistema de archivos volumen compartido de clúster (CSV). Compruebe el subtema del tipo de objeto, como el historial de rendimiento de los volúmenes, para ver la impresión fina.

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

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

Referencias adicionales