存储空间直接准则

我最近在4x DL380 G7上部署了WS2016 DC用于PoC用途。 每个服务器都有4个300GB 10K SAS驱动器,另外,我有几个英特尔SSD可以暂时从我公司借用。 我的主要目标是testing不同的存储副本“模式”,并在Storage Spaces Direct上部署横向扩展文件服务器angular色。

大概在一个月前,我很难在不同的硬件configuration(2个Supermicro服务器)上部署2节点Storage Spaces Direct。 说实话,安装过程远非“直截了当”。 WinRM出现了一个问题,当我尝试创build一个新的分层空间时,尝试“-Enable-ClusterS2D”和几个问题后,“不支持的总线types”错误。

本质上,我正在寻找关于如何使用Powershell在4节点环境中设置Storage Spaces Direct的最新指导。 弹性types并不重要,因为我想testing不同的弹性设置。

感谢您的帮助!

    简而言之,部署顺序如下所示:

    1. 部署必要的WSangular色和function
    2. validation故障转移群集
    3. 创build故障转移群集
    4. 直接启用存储空间

    -EnableStorageS2D

    1. 创build和configuration存储池

    示例input:

    New-StoragePool -StorageSubSystemName #CLUSTER_NAME# -FriendlyName #POOL_NAME# -WriteCacheSizeDefault 0 -ProvisioningTypeDefault Fixed -ResiliencySettingNameDefault Simple -PhysicalDisk (Get-StorageSubSystem -Name #CLUSTER_NAME# | Get-PhysicalDisk)

    1. 创build和configuration虚拟磁盘

    示例input:

    New-Volume -StoragePoolFriendlyName #POOL_NAME# -FriendlyName #VD_NAME# -PhysicalDiskRedundancy 2 -FileSystem CSVFS_REFS –Size 100GB

    1. 部署SOFS
    2. 创build文件共享就是这样!

    这里有两篇文章,我发现有帮助:

    Link1 https://www.starwindsoftware.com/blog/microsoft-storage-spaces-direct-4-node-setup-2

    Link2 https://technet.microsoft.com/en-us/windows-server-docs/storage/storage-spaces/hyper-converged-solution-using-storage-spaces-direct

    我目前的评估存储空间直接脚本

     # windows server installation Install-WindowsFeature Hyper-V, Data-Center-Bridging, Failover-Clustering, RSAT-Clustering-Powershell, Hyper-V-PowerShell -IncludeManagementTools # Create the cluster New-Cluster -Name w16hyper -Node w16hyper1, w16hyper2, w16hyper3 -NoStorage -StaticAddress 192.168.2.100 # hack to use RAID cards as JBOD (Get-Cluster).S2DBusTypes=0x100 Enable-ClusterStorageSpacesDirect -CacheState Disabled Get-StorageSubSystem Cluster* Get-StorageSubSystem Cluster* | Get-Volume #statistics Get-StorageSubSystem Cluster* | Get-StorageHealthReport #jobs running on background (eg. rebuild) Get-StorageJob | ? JobState -Eq Running #status Get-StoragePool S2D* | Get-PhysicalDisk | Group OperationalStatus -NoElement Get-StoragePool S2D* | Get-PhysicalDisk | Sort Model, OperationalStatus #get log info Get-StorageSubSystem Cluster* | Debug-StorageSubSystem Get-VirtualDisk Get-PhysicalDisk -Usage Retired #create new mirrored volume (survive 1 fail for 2node system, 2 simultaneous fails for more nodes) New-Volume -FriendlyName "Volume A" -FileSystem CSVFS_ReFS -StoragePoolFriendlyName S* -Size 1TB #create hybrid volume (mirror + parity) with recommended 10% mirror part size New-Volume -FriendlyName "Volume A" -FileSystem CSVFS_ReFS -StoragePoolFriendlyName S* -StorageTierFriendlyNames Performance, Capacity -StorageTierSizes 100GB, 900GB #cleanup (pool has to be deleted on each node) Disable-ClusterStorageSpacesDirect Get-StoragePool S2D* | Set-StoragePool -IsReadOnly $false Get-StoragePool S2D* | Remove-StoragePool