Tutorial: Habilitar um cache do barramento de armazenamento usando Espaços de Armazenamento em servidores autônomos

Aplica-se a: Windows Server 2022

O cache de barramento de armazenamento para servidores independentes pode melhorar significativamente o desempenho de leitura e gravação, mantendo a eficiência do armazenamento e mantendo os custos operacionais baixos. Esse recurso une uma mídia mais rápida (por exemplo, SSD) com uma mídia mais lenta (por exemplo, HD) para criar camadas. Para obter mais informações, confira Noções básicas sobre o cache do pool de armazenamento. Por padrão, apenas uma parte da camada de mídia mais rápida é reservada para o cache.

Resiliência Tipo de cache
Nenhum (espaço simples) Leitura e gravação
Paridade acelerada por espelho Ler

Se o sistema não exigir resiliência ou tiver backups externos, o cache do barramento de armazenamento dará suporte ao cache de leitura e gravação. Para sistemas resilientes, o cache do barramento de armazenamento serve apenas como cache de leitura e você deve escolher a paridade acelerada por espelho do ReFS (Sistema de Arquivos Resiliente) como a resiliência do volume. Essa combinação melhora o desempenho de leitura aleatório à medida que os dados são lidos da camada de paridade e armazenados em cache na camada espelho mais rápida. A camada espelho também fornecerá recursos de cache de gravação se o Modo de Provisionamento estiver definido como Compartilhado (padrão).

Diagram of storage bus cache read and write paths.

Neste tutorial, você aprenderá a:

  • O que é o cache do barramento de armazenamento
  • Como habilitar o cache do barramento de armazenamento
  • Gerenciando o cache após a implantação

Pré-requisitos

Você deve considerar o cache do barramento de armazenamento, se o ambiente corresponder a todas as características a seguir

  • Seu servidor executa o Windows Server 2022; e
  • Seu servidor tem dois tipos de mídia/unidade, um dos quais deve ser HD (por exemplo: SSD + HD ou NVMe + HD); e
  • Seu servidor tem o recurso Clustering de Failover instalado

Você não pode usar o cache do barramento de armazenamento, se o ambiente corresponder a todas as características a seguir

  • Seu servidor é executado Windows Server 2016 ou 2019; ou
  • Seu servidor tem uma configuração totalmente em flash; ou
  • Seu servidor é membro de um cluster de failover

Observação

Esse recurso exige que o servidor tenha o recurso Clustering de Failover instalado, mas o servidor não pode fazer parte de um Cluster de Failover.

Visão geral do recurso

Esta seção explica qual é cada campo configurável do cache do barramento de armazenamento e os valores aplicáveis.

Get-StorageBusCache

Quando não estiver habilitada, a saída deverá ser semelhante ao exemplo a seguir:

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

Observação

Para uso geral, você deve usar as configurações padrão. Todas as alterações devem ser feitas antes de habilitar o cache do barramento de armazenamento.

Modo de Provisão

Esse campo determina se a camada de mídia mais rápida ou apenas uma parte dela será usada para cache. Esse campo não pode ser modificado depois de habilitar o cache do barramento de armazenamento. O Modo Prvision tem duas opções:

  • Compartilhado (padrão): o cache ocupa apenas uma parte da camada de mídia mais rápida. O percentual exato é configurável pelo campo Percentual de Cache Compartilhado.
  • Cache: dedique a maioria da camada de mídia mais rápida ao cache, em vez de apenas uma parte. Para obter mais informações, confira Noções básicas sobre o cache do pool de armazenamento.

Percentual de cache compartilhado

Esse campo só é aplicável quando o Modo de Provisionamento é definido como Compartilhado. O valor padrão é 15% e o campo pode ser definido de 5% a 90%. Você não deve usar um valor acima de 50% ao usar volumes de paridade acelerada por espelho, pois precisa haver um equilíbrio entre o cache e a camada espelhada.

habilitado

Esse campo se refere ao estado do cache do barramento de armazenamento e pode ser verdadeiro ou falso.

Campos avançados

Importante

As alterações nesses campos não são recomendadas. Não é possível fazer ajustes depois de habilitar o cache do barramento de armazenamento.

  • Bytes de reserva de metadados de cache: a quantidade de espaço em disco (em bytes) reservada para Espaços de Armazenamento. Esse campo só será aplicado se o Modo de Provisionamento for Cache.

  • HD do modo de cache: o padrão é permitir que os dispositivos de capacidade HD armazenem em cache leituras e gravações. Para espaços simples, essa configuração pode ser definida como ReadWrite ou WriteOnly.

  • SSD do modo cache: esse modo é para uso futuro quando todos os sistemas flash tiverem suporte. O padrão é permitir que os dispositivos de capacidade SSD armazenem somente gravações em cache.

  • Tamanho da página de cache KBytes: esse campo pode ser definido como 8, 16 (padrão), 32 e 64.

Habilitar o cache do barramento de armazenamento no PowerShell

Esta seção é um guia passo a passo sobre como habilitar o cache do barramento de armazenamento para seu servidor autônomo no PowerShell.

  1. Importe o módulo.

    Import-Module StorageBusCache 
    
  2. Definir configurações de cache do barramento de armazenamento.

    Você deve usar as configurações padrão. Se você fizer isso, ignore esta etapa para continuar com os padrões.

    Importante

    Se a configuração for necessária, faça isso antes de habilitar o cache do barramento de armazenamento. Consulte a seção Visão geral do recurso para obter detalhes dos campos.

  3. Verificar o status da unidade.

    Get-PhysicalDisk
    

    A saída deve ser semelhante à imagem a seguir, em que a coluna Número mostra valores abaixo de 500 e a coluna CanPool mostra True para todas as unidades que não são de inicialização.

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

  4. Habilitar o cache do barramento de armazenamento.

    Enable-StorageBusCache
    

    Esta etapa vai:

    • Criar um pool de armazenamento com todas as unidades disponíveis.
    • Associar a mídia rápida e lenta e formar o cache.
    • Adicionar o cache do barramento de armazenamento com configurações padrão ou personalizadas.

    Você pode executar Get-StoragePool para ver o nome do pool de armazenamento e Get-PhysicalDisk novamente para ver os efeitos da habilitação do cache do barramento de armazenamento. A saída deve ser semelhante à imagem a seguir. A coluna Number mostra valores acima de 500, indicando que o barramento de armazenamento reivindicou a unidade. A coluna CanPool agora mostra False para todas as unidades não de inicialização. Se o ProvisionMode tiver sido definido como Cache antes de habilitar, a coluna Usage será exibida como Journal para as unidades mais rápidas.

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

  5. Verificar o estado do cache do barramento de armazenamento.

    Verifique se os campos estão corretos e se o campo Habilitado agora está definido como true.

    Get-StorageBusCache 
    

    A saída deve ser assemelhar ao exemplo a seguir:

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

Como o cache do barramento de armazenamento foi habilitado com êxito, a próxima etapa é criar um volume.

Criar um volume

O volume que você deve criar depende de se você está criando esse volume com ou sem resiliência.

Volumes com resiliência

O cmdlet do PowerShell a seguir cria um volume de paridade acelerada por espelho de 1 TiB com uma taxa de Espelho:Paridade de 20:80, que é a configuração que você deve usar para a maioria das cargas de trabalho. Para mais informações, confira Paridade acelerada por espelho.

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

Volumes sem resiliência

O cmdlet do PowerShell a seguir cria um volume de 1 TB Simples que não pode tolerar nenhuma falha de disco. Há suporte para cache de leitura e gravação.

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

Fazer alterações depois de habilitar o cache do barramento de armazenamento

Depois de executar Enable-StorageBusCache, o modo de provisionamento, o percentual de cache compartilhado, os bytes de reserva de metadados de cache, o HD do modo cache, o SSD do modo cache e o tamanho da página Cache não podem ser modificados. Alterações limitadas podem ser feitas na configuração física. Para saber mais, confira os cenários comuns a seguir.

Adicionar ou substituir unidades de capacidade (HDDs)

Depois que a unidade tiver sido adicionada manualmente, execute o cmdlet a seguir para concluir o processo de entrada.

Update-StorageBusCache

Adicionar ou substituir unidades de cache (NVMes ou SSDs)

Não há cmdlets para desassociar/reassociar as associações existentes e equilibrar a relação. As etapas a seguir levarão à perda do cache de leitura existente.

Remove-StorageBusBinding
New-StorageBusBinding 

Verificar e equilibrar as associações de cache e capacidade

Use o cmdlet a seguir para verificar as associações de cache e capacidade.

Get-StorageBusBinding

No exemplo a seguir, a primeira coluna lista as unidades de capacidade e a terceira coluna lista as unidades de cache às quais elas estão associadas. Siga as instruções em Adicionar ou substituir unidades de cache para balancear para que o cache existente não seja preservado.

Screenshot showing the output of Get-StorageBusBinding.

Perguntas frequentes sobre o cache do barramento de armazenamento

Esta seção responde a perguntas frequentes sobre o cache do barramento de armazenamento no Windows Server 2022.

Por que o recurso Clustering de Failover precisa ser instalado quando o servidor não faz parte de um Cluster de Failover?

Esse recurso foi projetado para servidores autônomos, mas criado com base no cache SBL (camada de barramento de armazenamento) para Espaços de Armazenamento Diretos. O recurso Clustering de Failover precisa ser instalado à medida que os componentes de clustering são necessários.

O cache do barramento de armazenamento funcionará com uma configuração totalmente em flash?

Não, esse recurso só funciona quando houver dois tipos de mídia, um dos quais deve ser HD. Este recurso não funciona com sistemas RAID, SAN ou flash.

Como as configurações de cache do barramento de armazenamento podem ser alteradas?

Veja o exemplo a seguir para alterar o modo de provisionamento de Compartilhado (padrão) para Cache. As configurações padrão são recomendadas e todas as alterações devem ser feitas antes da habilitação do cache do barramento de armazenamento.

Set-StorageBusCache -ProvisionMode Cache