如何配置存儲空間直通

Jacki

如何在 Windows Server 2025 上配置存儲空間直通

如何在 Windows Server 2025 中配置存儲空間直通

如果您希望了解如何配置 Storage Space Direct 以使您的環境具有高可用性,

在這篇文章中,我將引導您在簡單的兩節點融合集群中部署和配置 Storage Space Direct (S2D)。

當涉及到高可用性以及在高可用存儲中部署虛擬機時,S2D 可以具有強大的功能。

您可以在不中斷任何操作的情況下執行虛擬機的實時遷移。

在融合虛擬機上運行您的工作負載並使其高度可用。

什麼是存儲空間直通 (S2D)

想像一下您的辦公室裡有幾台服務器。

每台服務器都有自己的硬盤或SSD。通常,這些驅動器只能由該單個服務器使用。

存儲空間直接 (S2D)是一項 Windows Server 功能,可讓您將所有這些獨立的驅動器組合成一個大型、共享且可靠的存儲系統

這就像從所有服務器中取出存儲,將其組合在一起,使其像一個強大的存儲盒一樣工作。

如果一台服務器或一個磁盤發生故障,您的數據仍然安全,因為 S2D 會自動在其他服務器上保留副本

因此,它非常適合虛擬機,降低 SAN 成本

此外,它快速、可靠、高度可用且易於擴展。

存儲空間直接先決條件

兩台或更多服務器跑步Windows Server 數據中心版(2019/2022/2025)。

每個服務器應該有:

至少1 個 SSD 或 NVMe(用於緩存)和額外的 4 個 HDD/SSD 用於容量。

兩個 NIC(1 Gbps 或更高 — 建議生產使用 10/25 GbE)。

加入域的服務器具有正確的 DNS 和 Active Directory 設置。

故障轉移集群和 Hyper-V可用的功能(將在下面安裝它們)。

遠程管理權限(PowerShell/服務器管理器)。

安裝了最新的 Windows 更新。

對於企業設置,請檢查硬件要求

不支持:不支持SAS物理存儲設備或SAN(光纖通道、iSCSI、FCoE)存儲直通的RAID卡。主機總線適配器 (HBA) 卡必須為用於存儲空間直通的任何存儲設備實現簡單直通模式。

S2D 所需的角色和功能

Install-WindowsFeature -Name FS-FileServer, Failover-Clustering, Hyper-V, Data-Center-Bridging, RSAT-Clustering-PowerShell, Hyper-V-PowerShell -IncludeManagementTools –Restart

我們的場景

這裡我們將創建一個兩節點集群,我們的操作系統是Windows Server 2025 Datacenter版本。

我們的 Hyper-V 節點名稱為 Node1 和 Node2,集群名稱為 FirstCluster

我們使用 Dell-420 服務器作為主機,並在其上安裝了三台虛擬機。

一個是域控制器,名稱為MYDC01,另外兩個是集群節點,名稱為節點1節點2

我們啟用了嵌套VM環境以在VM內部創建VM。

因此,為 Node1 和 Node2 虛擬機分配了 3 個虛擬網卡

如果您有相同的配置並想要啟用嵌套虛擬化。

您可以運行以下命令來啟用它。

Set-VMProcessor -VMName "YourVMName" -ExposeVirtualizationExtensions $true

注意:在主主機上運行以下命令,而不是在虛擬機上運行。另外,請確保您的虛擬機處於關閉狀態。

如何配置存儲空間直通的步驟

首先,確保兩個節點都加入 Active Directory 域。

所有服務器都設置相同的時區並且完全更新。

此外,還安裝了多個網卡,至少兩個。

此外,除了操作系統之外,每台服務器上至少安裝了四個磁盤。

所有存儲磁盤都應該是原始且乾淨的,沒有任何先前的分區。

S2D 的網絡設置

這裡,我們的節點 1 和節點 2 上有三個網卡,其 IP 尋址如下

節點 1 節點 2

192.168.12.121 192.168.12.123

192.168.12.122 192.168.12.124

10.0.0.10 10.0.0.3

子網 192.168.12.0/24 用於虛擬機流量

因此,10.0.0.0/24子網專用於虛擬機熱遷移

注意:為您的網卡啟用 RDMA(如果可用)(推薦支持 RDMA 的網卡)

清潔連接的驅動器

在啟用存儲空間直通之前,請確保您的驅動器為空:其中不存在舊分區或其他數據

運行以下 cmdlet 來清理驅動器

# Fill in these variables with your values
$ServerList = "Node1", "Node2"

foreach ($server in $serverlist) {
    Invoke-Command ($server) {
        # Check for the Azure Temporary Storage volume
        $azTempVolume = Get-Volume -FriendlyName "Temporary Storage" -ErrorAction SilentlyContinue
        If ($azTempVolume) {
            $azTempDrive = (Get-Partition -DriveLetter $azTempVolume.DriveLetter).DiskNumber
        }

# Clear and reset the disks
        $disks = Get-Disk | Where-Object {
            ($_.Number -ne $null -and $_.Number -ne $azTempDrive -and !$_.IsBoot -and !$_.IsSystem -and $_.PartitionStyle -ne "RAW")
        }
        $disks | ft Number,FriendlyName,OperationalStatus
        If ($disks) {
            Write-Host "This action will permanently remove any data on any drives other than the operating system boot drive!`nReset disks? (Y/N)"
            $response = read-host
            if ( $response.ToLower() -ne "y" ) { exit }

$disks | % {
            $_ | Set-Disk -isoffline:$false
            $_ | Set-Disk -isreadonly:$false
            $_ | Clear-Disk -RemoveData -RemoveOEM -Confirm:$false -verbose
            $_ | Set-Disk -isreadonly:$true
            $_ | Set-Disk -isoffline:$true
        }

#Get-PhysicalDisk | Reset-PhysicalDisk

}
        Get-Disk | Where-Object {
            ($_.Number -ne $null -and $_.Number -ne $azTempDrive -and !$_.IsBoot -and !$_.IsSystem -and $_.PartitionStyle -eq "RAW")
        } | Group -NoElement -Property FriendlyName
    }
}

測試和創建集群

在繼續創建集群之前,請確保通過運行以下 cmdlet 來驗證集群。

測試集群-節點Node1、Node2-包括“存儲空間直接”、“庫存”、“網絡”、“系統配置”

一旦發現一切正常,您可以通過運行以下 cmdlet 創建集群並為其分配靜態 IP

New-Cluster -Name FirstCluster -Node Node1,Node2 -NoStorage -StaticAddress 192.168.12.25

創建集群後,創建見證服務器。

在這裡,我們使用 DC 計算機作為見證服務器。

最後,現在通過以下 cmdlet 啟用存儲空間直通

Enable-ClusterStorageSpacesDirect -CimSession FirstCluster

(可選)通過運行以下 cmdlet 啟用 CSV 緩存

$ClusterName = "FirstCluster"

$CSVCacheSize = 1024 #Size in MB

Write-Output "Setting the CSV cache..."

(Get-Cluster $ClusterName).BlockCacheSize = $CSVCacheSize

$CSVCurrentCacheSize = (Get-Cluster $ClusterName).BlockCacheSize

Write-Output "$ClusterName CSV cache size: $CSVCurrentCacheSize MB"

完成此操作後,檢查故障轉移集群內的池

創建虛擬驅動器和卷

現在集群已經創建完畢

下一步是創建虛擬磁盤捲。

您可以通過從故障轉移群集中單擊“新建虛擬磁盤”來創建虛擬磁盤,然後創建鏡像卷並對其進行格式化。

現在您已經有了一個鏡像卷,並且可以將其轉換為 CSV 存儲。

之後,您可以在該存儲上為高可用虛擬機創建融合虛擬機。

此外,如果您的 VM 已創建,您可以測試從 Node1 到另一個節點的實時遷移,反之亦然。

如果成功,則您已正確配置存儲空間直通。

閱讀更多:如何修復顯示 0 已用空間和 0 可用空間的硬盤

結論

存儲空間可以幫助您實現存儲的高可用環境,並且您還可以在該存儲上安裝虛擬機,這是高可用的,並且可以在不停機的情況下執行實時遷移。

因此,您還可以創建橫向擴展文件服務器並創建高可用的網絡共享。

另外,您可能喜歡其他 Windows Server 教程

如果有任何與本文相關的問題,請隨時聯繫我們:[電子郵件受保護]

此外,如果您想查看完整的帖子的實際效果。

觀看下面的 YouTube 視頻,了解如何在 Windows Server 2025 上逐步配置存儲空間直通的步驟