Partilhar via


Tutorial: Habilitar o cache do barramento de armazenamento com espaços de armazenamento em servidores autónomos

A cache do barramento de armazenamento para servidores autónomos pode melhorar significativamente o desempenho de leitura e gravação, mantendo a eficiência do armazenamento e os custos operacionais baixos. Esta funcionalidade liga suportes mais rápidos (por exemplo, SSD) com suportes mais lentos (por exemplo, HDD) para criar camadas. Para obter mais informações, consulte 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) Ler e escrever
Paridade acelerada por espelhamento Ler

Se o seu sistema não requer resiliência ou tem backups externos, o cache do barramento de armazenamento suporta operações de leitura e gravação. Para sistemas resilientes, o cache do barramento de armazenamento serve apenas como um cache de leitura, e deve escolher o Sistema de Ficheiros Resiliente (ReFS) com paridade acelerada por espelho como a resiliência do volume. Essa combinação melhora o desempenho de leitura aleatória à medida que os dados são lidos da camada de paridade e armazenados em cache na camada de espelho mais rápida. A camada de espelho também oferece funcionalidades de cache de gravação se o Modo de Provisionamento estiver definido como Partilhado (padrão).

Diagrama de caminhos de leitura e gravação do cache do barramento de armazenamento.

Neste tutorial, você aprenderá sobre:

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

Pré-requisitos

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

  • Seu servidor executa o Windows Server 2022; e ainda
  • O seu servidor tem 2 tipos de media/unidade, um dos quais deve ser HDD (por exemplo: SSD+HDD ou NVMe+HDD); e ainda
  • Seu servidor tem o recurso Clustering de Failover instalado

Não é possível usar o cache do barramento de armazenamento se o seu ambiente apresentar alguma das seguintes características:

  • Seu servidor executa o Windows Server 2016 ou 2019; quer
  • O seu servidor tem uma configuração completamente em flash.
  • Seu servidor é membro de um Cluster de Failover

Observação

Esse recurso requer que o servidor tenha a funcionalidade de Cluster de Failover instalada, mas o servidor não pode fazer parte de um Cluster de Failover.

Visão geral das funcionalidades

Esta secção explica quais são os campos configuráveis do cache do barramento de armazenamento e os respetivos valores aplicáveis.

Get-StorageBusCache

Quando não habilitada, a saída deve 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. Quaisquer alterações devem ser feitas antes de habilitar o cache do barramento de armazenamento.

Modo de Provisionamento

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

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

Porcentagem de cache compartilhado

Este campo só é aplicável quando o Modo de Provisão está definido como Partilhado. O valor padrão é 15%e o campo pode ser definido de 5% a 90%. Você não deve usar um valor superior a 50% ao usar volumes de paridade acelerados por espelho porque precisa haver um equilíbrio entre o cache e a camada de espelho.

Ativado

Este campo refere-se ao estado da memória cache do barramento de armazenamento e pode ser verdadeiro ou falso.

Campos avançados

Importante

Não são recomendadas alterações a estes campos. Não é possível fazer ajustes uma vez ativado 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 Armazenagem. Este campo só é aplicado se o Modo de Fornecimento for Cache.

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

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

  • Cache tamanho da página KBytes: Este campo pode ser definido como 8, 16 (padrão), 32 e 64.

Habilitar cache de barramento de armazenamento no PowerShell

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

  1. Importe o módulo.

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

    Você deve usar as configurações padrão. Se o fizer, salte esta etapa para continuar com as definições padrão.

    Importante

    Se a configuração for necessária, faça-o antes de ativar o cache do barramento de armazenamento. Consulte a secção Visão geral da funcionalidade para obter detalhes dos campos.

  3. Verifique o estado da unidade.

    Get-PhysicalDisk
    

    A saída deve ser semelhante à imagem a seguir, onde 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.

    Captura de tela mostrando o resultado do Get-PhysicalDisk antes de ativar o cache do barramento de armazenamento.

  4. Habilite o cache do barramento de armazenamento.

    Enable-StorageBusCache
    

    Esta etapa irá:

    • Crie um pool de armazenamento com todas as unidades disponíveis.
    • Vincule a mídia rápida e lenta e forme o cache.
    • Adicione a cache do bus de armazenamento com as definiçõ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 ativação do cache de barramento de armazenamento. A saída deve ser semelhante à imagem a seguir. A coluna Número mostra valores superiores a 500, indicando que o barramento de armazenamento assumiu o controlo da unidade. A coluna CanPool agora mostra False para todas as unidades que não são de inicialização. Se o ProvisionMode estiver definido para Cache antes de ser ativado, a coluna de uso será exibida como Registo para as unidades mais rápidas.

    Captura de tela mostrando os resultados de Get-StoragePool e Get-PhysicalDisk depois de habilitar o cache do barramento de armazenamento.

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

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

    Get-StorageBusCache 
    

    A saída deve ser semelhante ao seguinte exemplo:

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

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

Criar um volume

O volume que deves criar depende se estás a criar esse volume com ou sem resiliência.

Volumes com resiliência

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

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

Volumes sem resiliência

O cmdlet PowerShell a seguir cria um volume simples de 1 TB 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 ativar a cache do barramento de armazenamento

Depois de executar Enable-StorageBusCache, o Modo de Provisionamento, a Porcentagem de cache compartilhada, os bytes de reserva de metadados de cache, o HDD do modo de cache, o SSD do modo de cache e o tamanho da página de cache não podem ser modificados. Alterações limitadas podem ser feitas na configuração física. Para obter mais informações, consulte os seguintes cenários comuns.

Adicionar ou substituir unidades de capacidade (HDD)

Depois que a unidade for adicionada manualmente, execute o cmdlet a seguir para concluir o processo de integração.

Update-StorageBusCache

Adicionar ou substituir unidades de cache (NVMes ou SSDs)

Não há nenhum cmdlet para desvincular/revincular associações existentes e equilibrar a relação. As etapas a seguir fazem com que o cache de leitura existente seja perdido.

Remove-StorageBusBinding
New-StorageBusBinding 

Verifique e ajuste os vínculos de cache e capacidade.

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

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 vinculadas. Siga as instruções ao adicionar ou substituir unidades de cache para garantir que as atribuições de unidade de cache antigas sejam limpas antes que novas sejam configuradas. Ignorar esta etapa pode impedir que o sistema use as atribuições de cache antigas, o que pode interferir na obtenção de uma configuração equilibrada.

Captura de tela mostrando a saída de Get-StorageBusBinding.

Perguntas frequentes sobre cache de 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 construído sobre o cache SBL (Storage Bus Layer) para Espaços de Armazenamento Diretos. O recurso Clustering de Failover precisa ser instalado, pois os componentes de clustering são necessários.

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

Não, esta funcionalidade só funciona quando existem dois tipos de suporte, um dos quais tem de ser HDD. Esse recurso não funciona com sistemas RAID, SAN ou flash.

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

Consulte 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 quaisquer alterações devem ser feitas antes que o cache do barramento de armazenamento seja habilitado.

Set-StorageBusCache -ProvisionMode Cache