Tutorial: Habilitación de la caché de bus de almacenamiento con Espacios de almacenamiento en servidores independientes

Se aplica a: Windows Server 2022

La caché de bus de almacenamiento para servidores independientes puede mejorar considerablemente el rendimiento de las operaciones de lectura y escritura, al tiempo que mantiene la eficacia del almacenamiento y unos costos operativos reducidos. Esta característica enlaza medios más rápidos (por ejemplo, SSD) con medios más lentos (por ejemplo, HDD) para crear niveles. Para obtener más información, vea Descripción de la caché de un grupo de almacenamiento. De forma predeterminada, solo una parte del nivel de medios más rápidos está reservada para la caché.

Resistencia Tipo de caché
Ninguna (espacio simple) Lectura y escritura
Paridad acelerada por reflejos Leer

Si el sistema no necesita resistencia o tiene copias de seguridad externas, la caché de bus de almacenamiento admite el almacenamiento en caché de lectura y escritura. En el caso de los sistemas resistentes, la caché del bus de almacenamiento solo sirve como caché de lectura y debe elegir Paridad acelerada por reflejo del Sistema de archivos resistente (ReFS) como resistencia del volumen. Esta combinación mejora el rendimiento de lectura aleatoria a medida que los datos se leen desde el nivel de paridad y se almacenan en caché en el nivel de reflejo más rápido. El nivel de reflejo también proporciona funcionalidad de almacenamiento en caché de escritura si el modo de aprovisionamiento está establecido en Compartido (predeterminado).

Diagram of storage bus cache read and write paths.

En este tutorial, obtendrá información sobre lo siguiente:

  • Qué es la caché de bus de almacenamiento.
  • Cómo habilitar la caché de bus de almacenamiento.
  • Administración de la memoria caché después de la implementación.

Requisitos previos

Debe plantearse usar la caché de bus de almacenamiento si el entorno coincide con todas las características siguientes

  • El servidor ejecuta Windows Server 2022.
  • El servidor tiene dos tipos de medios o unidades, uno de los cuales debe ser HDD (por ejemplo: SSD+HDD o NVMe+HDD).
  • El servidor tiene instalada la característica Clústeres de conmutación por error.

No puede usar la caché de bus de almacenamiento si el entorno coincide con alguna de las características siguientes

  • El servidor ejecuta Windows Server 2016 o 2019.
  • El servidor tiene una configuración de todo flash.
  • El servidor es miembro de un clúster de conmutación por error

Nota

Para esta característica, es necesario que el servidor tenga instalada la característica Clústeres de conmutación por error, pero el servidor no puede formar parte de un clúster de conmutación por error.

Introducción a las características

En esta sección se explican los campos configurables de la memoria caché de bus de almacenamiento y los valores aplicables.

Get-StorageBusCache

Cuando no está habilitada, la salida debe ser similar a la del ejemplo siguiente:

ProvisionMode                  : Shared
SharedCachePercent             : 15
CacheMetadataReserveBytes      : 34359738368
CacheModeHDD                   : ReadWrite
CacheModeSSD                   : WriteOnly
CachePageSizeKBytes            : 16
Enabled                        : False

Nota:

Para uso general, debe utilizar la configuración predeterminada. Los cambios deben realizarse antes de habilitar la caché de bus de almacenamiento.

Modo de aprovisionamiento

Este campo determina si se usa el nivel de medios más rápidos o solo una parte de él para el almacenamiento en caché. Este campo no se puede modificar después de habilitar la caché de bus de almacenamiento. El Modo de aprovisionamiento tiene dos opciones:

  • Compartido (predeterminado): la caché solo ocupa una parte del nivel de medios más rápido. El porcentaje exacto se puede configurar en el campo Porcentaje de caché compartida.
  • Caché: se dedica la mayor parte del nivel de medios más rápidos al almacenamiento en caché, en lugar de solo una parte. Para obtener más información, vea Descripción de la caché de un grupo de almacenamiento.

Porcentaje de caché compartida

Este campo solo es aplicable cuando el modo de aprovisionamiento se establece en Compartido. El valor predeterminado es 15 % y el campo se puede establecer en un valor entre 5 % y 90 %. No debe usar un valor superior al 50 % cuando utilice volúmenes de paridad acelerada por reflejos, ya que debe haber un equilibrio entre la caché y el nivel de reflejo.

habilitado

Este campo hace referencia al estado de la caché de bus de almacenamiento y puede ser True o False.

Campos avanzados

Importante

No se recomienda cambiar estos campos. No se pueden realizar ajustes después de habilitar la caché de bus de almacenamiento.

  • Bytes de reserva de metadatos de caché: cantidad de espacio en disco (en bytes) reservado para Espacios de almacenamiento. Este campo solo se aplica si el modo de aprovisionamiento es Caché.

  • HDD en modo Caché: el valor predeterminado es permitir que los dispositivos de capacidad HDD almacenen en caché las operaciones de lectura y escritura. En Espacios simples, esta configuración se puede establecer en ReadWrite o WriteOnly.

  • SSD en modo caché: este modo es para uso futuro cuando se admitan sistemas flash completos. El valor predeterminado es permitir que los dispositivos de capacidad SSD almacenen en caché solo las operaciones de escritura.

  • Tamaño de página de caché en KB: este campo se puede establecer en 8, 16 (valor predeterminado), 32 y 64.

Habilitación de la caché de bus de almacenamiento en PowerShell

Esta sección es una guía paso a paso de cómo habilitar la caché de bus de almacenamiento para un servidor independiente en PowerShell.

  1. Importe el módulo.

    Import-Module StorageBusCache 
    
  2. Configure los valores de caché de bus de almacenamiento.

    Debe usar la configuración predeterminada. Si lo hace, omita este paso para continuar con los valores predeterminados.

    Importante

    Si es necesario cambiar la configuración, hágalo antes de habilitar la caché de bus de almacenamiento. Consulte la sección Introducción a las características para obtener más información sobre los campos.

  3. Compruebe el estado de la unidad.

    Get-PhysicalDisk
    

    La salida debe ser similar a la de la imagen siguiente, donde en la columna Number se muestran valores inferiores a 500 y en la columna CanPool se muestra True para todas las unidades que no son de arranque.

    Screenshot showing the result from Get-PhysicalDisk before enabling the storage bus cache.

  4. Habilite la caché de bus de almacenamiento.

    Enable-StorageBusCache
    

    Este paso hará lo siguiente:

    • Cree un grupo de almacenamiento con todas las unidades disponibles.
    • Enlace los medios rápidos y lentos, y forme la caché.
    • Agregue la caché de bus de almacenamiento con la configuración predeterminada o personalizada.

    Puede ejecutar Get-StoragePool para ver el nombre del grupo de almacenamiento y Get-PhysicalDisk de nuevo para ver los efectos de habilitar la caché de bus de almacenamiento. La salida debe ser similar a la de la imagen siguiente. En la columna Número se muestran valores superiores a 500, lo que indica que el bus de almacenamiento ha reclamado la unidad. En la columna CanPool ahora se muestra False para todas las unidades que no son de arranque. Si ProvisionMode se ha establecido en Caché antes de la habilitación, en la columna Usage se muestra Journal para las unidades más rápidas.

    Screenshot showing the results of Get-StoragePool and Get-PhysicalDisk after enabling the storage bus cache.

  5. Compruebe el estado de la caché de bus de almacenamiento.

    Compruebe que los campos son correctos y que el campo Habilitada está establecido en True.

    Get-StorageBusCache 
    

    La salida debería ser similar al ejemplo siguiente:

    ProvisionMode                  : Shared
    SharedCachePercent             : 15
    CacheMetadataReserveBytes      : 34359738368
    CacheModeHDD                   : ReadWrite
    CacheModeSSD                   : WriteOnly
    CachePageSizeKBytes            : 16
    Enabled                        : True
    

Como la caché de bus de almacenamiento se ha habilitado correctamente, el siguiente paso consiste en crear un volumen.

Crear un volumen

El volumen que debe crear depende de si lo va a hacer con o sin resistencia.

Volúmenes con resistencia

El siguiente cmdlet de PowerShell crea un volumen de paridad acelerada por reflejos de 1 TiB con una relación entre reflejo y paridad de 20:80, que es la configuración que debe usar para la mayoría de las cargas de trabajo. Para obtener más información, consulte Paridad acelerada por reflejo.

New-Volume –FriendlyName "TestVolume" -FileSystem ReFS -StoragePoolFriendlyName Storage* -StorageTierFriendlyNames MirrorOnSSD, ParityOnHDD -StorageTierSizes 200GB, 800GB

Volúmenes sin resistencia

El siguiente cmdlet de PowerShell crea un volumen simple de 1 TB que no puede tolerar ningún error de disco. Se admite el almacenamiento en caché de lectura y escritura.

New-Volume -FriendlyName "TestVolume" -FileSystem ReFS -StoragePoolFriendlyName Storage* -ResiliencySettingName Simple -Size 1TB

Realización de cambios después de habilitar la caché de bus de almacenamiento

Después de ejecutar Enable-StorageBusCache, no se pueden modificar los valores de modo de aprovisionamiento, porcentaje de caché compartida, bytes de reserva de metadatos de caché, HDD en modo caché, SSD en modo caché y tamaño de página de caché. Se pueden realizar cambios limitados en la configuración física. Para más información, vea los siguientes escenarios comunes.

Adición o reemplazo de unidades de capacidad (HDD)

Una vez que se haya agregado manualmente la unidad, ejecute el cmdlet siguiente para finalizar el proceso de ingesta.

Update-StorageBusCache

Adición o reemplazo de unidades de caché (NVMe o SSD)

No hay ningún cmdlet para deshacer o rehacer enlaces, y equilibrar la relación. Los pasos siguientes hacen que se pierda la caché de lectura actual.

Remove-StorageBusBinding
New-StorageBusBinding 

Comprobación y equilibrio de enlaces de caché y capacidad

Use el siguiente cmdlet para comprobar los enlaces de capacidad y caché actuales.

Get-StorageBusBinding

En el ejemplo siguiente, en la primera columna se enumeran las unidades de capacidad y en la tercera columna las unidades de caché a las que están enlazadas. Siga las instrucciones que se proporcionan en Adición o reemplazo de unidades de caché para equilibrarlas, de forma que no se conserve la caché actual.

Screenshot showing the output of Get-StorageBusBinding.

Preguntas más frecuentes sobre la caché de bus de almacenamiento

En esta sección se responden las preguntas más frecuentes sobre la caché de bus de almacenamiento en Windows Server 2022.

¿Por qué es necesario instalar la característica Clústeres de conmutación por error cuando el servidor no forma parte de un clúster de conmutación por error?

Esta característica está diseñada para servidores independientes, pero se basa en la memoria caché de la capa de bus de almacenamiento (SBL) para Espacios de almacenamiento directo. La característica Clústeres de conmutación por error debe instalarse porque se necesitan componentes de agrupación en clústeres.

¿La caché de bus de almacenamiento funciona con una configuración de todo flash?

No, esta característica solo funciona cuando hay dos tipos de medios y uno de ellos es HDD. Esta característica no funciona con sistemas RAID, SAN ni flash.

¿Cómo se puede cambiar la configuración de la caché de bus de almacenamiento?

Vea el ejemplo siguiente para cambiar el modo de aprovisionamiento de Compartido (valor predeterminado) a Caché. La configuración predeterminada es la recomendada, y que los cambios se deben realizar antes de habilitar la caché de bus de almacenamiento.

Set-StorageBusCache -ProvisionMode Cache