5.3 Implement Storage Spaces Direct
5.3.1 Determine scenario requirements for implementing Storage Spaces Direct
5.3.2 Enable Storage Spaces Direct using Windows PowerShell
5.3.3 Implement a disaggregated Storage Spaces Direct scenario
5.3.4 Implement a hyper-converged Storage Spaces Direct scenario
5.3.1 Determine scenario requirements for implementing Storage Spaces Direct
Storage Spaces Direct (S2D) er en videreutvikling av Storage Spaces som først dukket opp i WIndows Server 2012 R2. Storage spaces kan opprette storage pools fra en gruppe med fysiske disker, og så opprette virtuelle disker og volum fra storage poolen. Storage Spaces Direct gjør det samme i et clustered miljø. Man kan opprette delte pools ved å bruke SAS, SATA, eller NVMe drivere i nodene. Før man vurderer S2D bør man tenke over følgende:
NB. Merk at Storage Spaces Direct kun er tilgjengelig i WIndows Server 2016 Datacenter.
Servere
Et S2D cluster kan bestå av opp til 16 noder, med opp til 400 disker. Selv om S2D fungerer med standard komponenter, må servere i clusteret støtte store antall disker og flere nettverksinterface.
Disker
Det er anbefalt med minimum 6 disker i en S2D cluster node, med minst 2 SSD og minst 4 HDD. Ingen av diskene kan ha RAID, eller andre smarte funksjoner som ikke kan deaktiveres. S2D tilbyr feiltoleranse og høy ytelse, men hvis den må konkurere med hardware RAID etv. vil det gå ut over ytelsen til clusteret. For at disker skal oppdages må de være initialisert med GPT, men ikke partisjonert.
Nettverk
Nøkkelen til S2D er en software storage bus, en logisk nettverkskrets som forbinder lokale disker i alle nodene i clusteret. Siden S2D lager en storage pool fra lokale disker på alle nodene, blir all lagringstrafikk ført over Ethernet med SMB3 og RDMA. Det gjør at trafikkstyring er en kritisk del av ethvert S2D production cluster.
På det fysiske laget anbefaler Microsoft å bruke minst to 10 Gbit/s Ethernet adaptere per node, helst adaptere som bruker RDMA, så de kan avlaste prosessorene.
S2D bruker SMB3 for kommunikasjon mellom noder, og bruker avanserte features, som SMB Direct og SMB Multichannel, der det er mulig.
5.3.2 Enable Storage Spaces Direct using Windows PowerShell
# Oppretter cluster uten lagring
New-Cluster -Name Cluster1 -Node Storage1, Storage2 -NoStorage
# AKtiver S2D på clusteret: finner disker, lager cache og oppretter en pool
Enable-ClusterStorageSpacesDirect
Man kan så fortsette med å opprette virtuelle disker fra poolen. S2D virtuelle disker støtter simple, mirror, og parity for feiltoleranse.
For mer fleksiblitet kan man bruke PowerShell:
# Oppretter virtuell disk og volum
New-Volume -StoragePoolFriendlyName S2D* -FriendlyName SharedVolume -FileSystem CSVFS_ReFS -ResiliencySettingName Mirror -Size 100GB
5.3.3 Implement a disaggregated Storage Spaces Direct scenario
Microsoft har definert to scenarioer for Storage Spaces Direct, hvor S2D støtter opp under et Hyper-V cluster. I det første scenarioet, kalt disaggregated eller converged deployment, er det to distinkte clustere. S2D bidrar med lagring til Hyper-V clusteret, det er altså en erstattning for SAN. Siden det er to clustere, krever det flere servere, og er dyrere. Fordelen er at de to clusterene er uavhengig av hverandre, og kan derfor skalere uavhengig av hverandre.
For å implementere dette gjør man som tidligere når man oppretter et S2D cluster, men man må også legge til rollen Scale-Out File Server (SoFS). Det andre clusteret er et standard Hyper-V cluster.
5.3.4 Implement a hyper-converged Storage Spaces Direct scenario
Det andre scenarioet er kalt hyper-converged, fordi det kombinerer Storage Spaces Direct med Hyper-V i et enkelt cluster. Det er mindre hardware involvert, det genererer mindre nettverkstrafikk, krever langt mindre vedlikehold, og er mye billigere.
Ulempen med denne er at man ike kan skalere SoFS og Hyper-V uavhengig av hverandre.
NB. I Windows Server 2016 er det mulig å lage et hyper-converged S2D cluster på en enkelt Hyper-V server, for test eller labformål. Man kan opprette to VM med mange VHDX disker, konfigurere cluster på de, og aktivere S2D. Ved å aktivere virtualization extensions, kan man installere Hyper-V på VMene, opprette nestede VMer på de, og clustre de nestede VMene. Det er langt fra optimalt, men det fungerer.