Aggiunta di server o unità a Spazi di archiviazione diretta

Si applica a: Windows Server 2022, Windows Server 2019, Windows Server 2016

In questo argomento viene descritto come aggiungere server o unità a Spazi di archiviazione diretta.

Aggiunta di server

L'aggiunta di server, spesso denominata scalabilità orizzontale, aggiunge capacità di archiviazione e può migliorare le prestazioni di archiviazione e migliorare l'efficienza di archiviazione. Se la distribuzione è iperconvergente, l'aggiunta di server fornisce anche altre risorse di calcolo per il carico di lavoro.

Animation of adding a server to a four-node cluster

Le distribuzioni tipiche sono semplici da aumentare tramite l'aggiunta di server. Ci sono solo due passaggi:

  1. Eseguire la convalida guidata del cluster usando lo snap-in Cluster di failover o con il cmdlet Test-Cluster in PowerShell (eseguito come Amministrazione istrator). Includere il nuovo server <NewNode> da aggiungere.

    Test-Cluster -Node <Node>, <Node>, <Node>, <NewNode> -Include "Storage Spaces Direct", Inventory, Network, "System Configuration"
    

    Ciò verifica che il nuovo server esegua Windows Server 2016 Datacenter Edition, abbia aggiunto lo stesso dominio Dominio di Active Directory Services dei server esistenti, abbia tutti i ruoli e le funzionalità necessari e che la rete sia configurata correttamente.

    Importante

    Se si usano nuovamente unità che contengono dati o metadati obsoleti non sono più necessari, cancellarli usando Gestione disco o il cmdlet Reset-PhysicalDisk. Se vengono rilevati dati o metadati obsoleti, le unità non vengono raggruppate.

  2. Eseguire il cmdlet seguente nel cluster per completare l'aggiunta del server:

Add-ClusterNode -Name NewNode

Nota

Il pooling automatico dipende dalla presenza di un unico pool. Se è stata aggirata la configurazione standard per creare più pool, sarà necessario aggiungere nuove unità al pool preferito usando Add-PhysicalDisk.

Da 2 a 3 server: sblocco del mirroring a tre vie

adding a third server to a two-node cluster

Con due server, è possibile creare solo volumi con mirroring bidirezionale (confronto con RAID-1 distribuito). Con tre server, è possibile creare volumi con mirroring a tre vie per una migliore tolleranza di errore. È consigliabile usare il mirroring a 3 vie ogni volta che sia possibile.

I volumi con mirroring bidirezionale non possono essere aggiornati sul posto al mirroring a tre vie. È invece possibile creare un nuovo volume ed eseguire la migrazione (copia, ad esempio usando Archiviazione Replica) i dati e quindi rimuovere il volume precedente.

Per iniziare a creare volumi con mirroring a tre vie, sono disponibili diverse opzioni valide. È possibile usare qualsiasi cosa si preferisca.

Opzione 1

Specificare PhysicalDiskRedundancy = 2 per ogni nuovo volume al momento della creazione.

New-Volume -FriendlyName <Name> -FileSystem CSVFS_ReFS -StoragePoolFriendlyName S2D* -Size <Size> -PhysicalDiskRedundancy 2

Opzione 2

È invece possibile impostare PhysicalDiskRedundancyDefault = 2 nell'oggetto ResiliencySetting del pool denominato Mirror. Tutti i nuovi volumi con mirroring useranno quindi automaticamente il mirroring a tre vie anche se non lo si specifica.

Get-StoragePool S2D* | Get-ResiliencySetting -Name Mirror | Set-ResiliencySetting -PhysicalDiskRedundancyDefault 2

New-Volume -FriendlyName <Name> -FileSystem CSVFS_ReFS -StoragePoolFriendlyName S2D* -Size <Size>

Opzione 3

Impostare PhysicalDiskRedundancy = 2 nel modello Archiviazione Tier denominato Capacity e quindi creare volumi facendo riferimento al livello.

Set-StorageTier -FriendlyName Capacity -PhysicalDiskRedundancy 2

New-Volume -FriendlyName <Name> -FileSystem CSVFS_ReFS -StoragePoolFriendlyName S2D* -StorageTierFriendlyNames Capacity -StorageTierSizes <Size>

Da 3 a 4 server: sblocco della doppia parità

adding a fourth server to a three-node cluster

Con quattro server, è possibile usare la doppia parità, detta anche codifica di cancellazione (confronto con RAID-6 distribuito). Ciò garantisce la stessa tolleranza di errore del mirroring a tre vie, ma con una migliore efficienza di archiviazione. Per altre informazioni, vedere Tolleranza di errore ed efficienza di archiviazione.

Se si proviene da una distribuzione più piccola, sono disponibili diverse opzioni valide per iniziare a creare volumi di doppia parità. È possibile usare qualsiasi cosa si preferisca.

Opzione 1

Specificare PhysicalDiskRedundancy = 2 e ResiliencySettingName = Parità in ogni nuovo volume al momento della creazione.

New-Volume -FriendlyName <Name> -FileSystem CSVFS_ReFS -StoragePoolFriendlyName S2D* -Size <Size> -PhysicalDiskRedundancy 2 -ResiliencySettingName Parity

Opzione 2

Impostare PhysicalDiskRedundancy = 2 nell'oggetto ResiliencySetting del pool denominato Parity. Quindi, tutti i nuovi volumi di parità useranno automaticamente la doppia parità anche se non lo si specifica

Get-StoragePool S2D* | Get-ResiliencySetting -Name Parity | Set-ResiliencySetting -PhysicalDiskRedundancyDefault 2

New-Volume -FriendlyName <Name> -FileSystem CSVFS_ReFS -StoragePoolFriendlyName S2D* -Size <Size> -ResiliencySettingName Parity

Con quattro server, è anche possibile iniziare a usare la parità accelerata con mirroring, in cui un singolo volume è parte mirror e parità di parte.

A questo scopo, sarà necessario aggiornare i modelli di Archiviazione Tier in modo che abbiano sia livelli di prestazioni che di capacità, come sarebbero stati creati se fosse stato eseguito per la prima volta Enable-ClusterS2D a quattro server. In particolare, entrambi i livelli devono avere mediaType dei dispositivi di capacità (ad esempio SSD o HDD) e PhysicalDiskRedundancy = 2. Il livello Performance deve corrispondere a ResiliencySettingName = Mirror e il livello Capacity deve corrispondere a ResiliencySettingName = Parity.

Opzione 3

È possibile che sia più semplice rimuovere semplicemente il modello di livello esistente e crearne i due nuovi. Ciò non influirà sui volumi preesistenti creati facendo riferimento al modello di livello: si tratta solo di un modello.

Remove-StorageTier -FriendlyName Capacity

New-StorageTier -StoragePoolFriendlyName S2D* -MediaType HDD -PhysicalDiskRedundancy 2 -ResiliencySettingName Mirror -FriendlyName Performance
New-StorageTier -StoragePoolFriendlyName S2D* -MediaType HDD -PhysicalDiskRedundancy 2 -ResiliencySettingName Parity -FriendlyName Capacity

Ecco fatto! È ora possibile creare volumi di parità con accelerazione mirror facendo riferimento a questi modelli di livello.

Esempio

New-Volume -FriendlyName "Sir-Mix-A-Lot" -FileSystem CSVFS_ReFS -StoragePoolFriendlyName S2D* -StorageTierFriendlyNames Performance, Capacity -StorageTierSizes <Size, Size>

Oltre 4 server: maggiore efficienza di parità

Con la scalabilità superiore a quattro server, i nuovi volumi possono trarre vantaggio dall'efficienza di codifica della parità sempre maggiore. Ad esempio, tra sei e sette server, l'efficienza migliora dal 50,0% al 66,7% in quanto diventa possibile usare Reed-Solomon 4+2 (anziché 2+2). Non sono previsti passaggi da eseguire per usufruire di questa nuova efficienza. La codifica più efficiente viene determinata automaticamente ogni volta che si crea un volume.

Tuttavia, i volumi esistenti non vengono "convertiti" alla nuova codifica più ampia. Un valido motivo è che questa operazione richiederebbe un calcolo di grandissima portata, che interesserebbe letteralmente ogni singolo bit dell'intera distribuzione. Se si vuole che i dati preesistenti siano codificati con una maggiore efficienza, è possibile eseguire la migrazione a nuovi volumi.

Per altri dettagli, vedere Tolleranza di errore ed efficienza di archiviazione.

Aggiunta di server quando si usa chassis o tolleranza di errore rack

Se la distribuzione usa la tolleranza di errore dello chassis o del rack, è necessario specificare lo chassis o il rack di nuovi server prima di aggiungerli al cluster. Questo comunica a Spazi di archiviazione diretta il modo più efficiente per distribuire i dati ottimizzando la tolleranza di errore.

  1. Creare un dominio di errore temporaneo per il nodo aprendo una sessione di PowerShell con privilegi elevati e quindi usando il comando seguente, dove <NewNode> è il nome del nuovo nodo del cluster:

    New-ClusterFaultDomain -Type Node -Name <NewNode>
    
  2. Spostare questo dominio di errore temporaneo nello chassis o nel rack in cui si trova il nuovo server nel mondo reale, come specificato da ParentName>:<

    Set-ClusterFaultDomain -Name <NewNode> -Parent <ParentName>
    

    Per altre informazioni, vedere Fault domain awareness in Windows Server 2016 (Informazioni sulla presenza di un dominio di errore in Windows Server 2016).

  3. Aggiungere il server al cluster come descritto in Aggiunta di server. Quando il nuovo server aggiunge il cluster, viene automaticamente associato (usando il relativo nome) al dominio di errore segnaposto.

Aggiunta di unità

L'aggiunta di unità, nota anche come aumento delle prestazioni, aggiunge capacità di archiviazione e può migliorare le prestazioni. Se sono disponibili slot, è possibile aggiungere unità a ogni server per espandere la capacità di archiviazione senza aggiungere server. È possibile aggiungere unità cache o unità di capacità in modo indipendente in qualsiasi momento.

Importante

È consigliabile che tutti i server abbiano configurazioni di archiviazione identiche.

Animation showing adding drives to a sytem

Per eseguire la scalabilità verticale, connettere le unità e verificare che Windows le individui. Dovrebbero essere visualizzati nell'output del cmdlet Get-PhysicalDisk in PowerShell con la proprietà CanPool impostata su True. Se vengono visualizzati come CanPool = False, è possibile vedere perché controllando la proprietà CannotPoolReason .

Get-PhysicalDisk | Select SerialNumber, CanPool, CannotPoolReason

Entro breve tempo, le unità idonee verranno richieste automaticamente da Spazi di archiviazione diretta, aggiunte al pool di archiviazione e i volumi verranno ridistribuiti automaticamente in tutte le unità. A questo punto, si è pronti per estendere i volumi o crearne di nuovi.

Se le unità non vengono visualizzate, analizzare manualmente le modifiche hardware. Per eseguire questa operazione usare Gestione dispositivi nel menu Azione. Se le unità contengono dati o metadati obsoleti, considerare la possibilità di riformattarle. Questa operazione può essere eseguita usando Gestione disco o con il cmdlet Reset-PhysicalDisk .

Nota

Il pooling automatico dipende dalla presenza di un unico pool. Se è stata aggirata la configurazione standard per creare più pool, sarà necessario aggiungere nuove unità al pool preferito usando Add-PhysicalDisk.

Ottimizzazione dell'utilizzo delle unità dopo l'aggiunta di unità o server

Nel corso del tempo, man mano che le unità vengono aggiunte o rimosse, la distribuzione dei dati tra le unità nel pool può diventare non uniforme. In alcuni casi, questo può comportare la piena piena di alcune unità mentre altre unità nel pool hanno un consumo molto inferiore.

Per mantenere l'allocazione delle unità anche nel pool, Spazi di archiviazione diretta ottimizza automaticamente l'utilizzo delle unità dopo l'aggiunta di unità o server al pool (si tratta di un processo manuale per Archiviazione sistemi Spaces che usano enclosure sas condivise). L'ottimizzazione inizia 15 minuti dopo l'aggiunta di una nuova unità al pool. L'ottimizzazione del pool viene eseguita come operazione in background con priorità bassa, quindi il completamento può richiedere ore o giorni, soprattutto se si usano dischi rigidi di grandi dimensioni.

L'ottimizzazione usa due processi, uno denominato Optimize e uno denominato Ribilancia , ed è possibile monitorarne lo stato con il comando seguente:

Get-StorageJob

È possibile ottimizzare manualmente un pool di archiviazione con il cmdlet Optimize-Archiviazione Pool. Ecco un esempio:

Get-StoragePool <PoolName> | Optimize-StoragePool