如何配置 StarWind Virtual SAN Free

如何配置 StarWind Virtual SAN Free

我在 30 天的試用期間測試了我的環境,並且非常喜歡它,但現在我想讓它與免費版本一起使用。我重新開始並遵循 Starwind 中的這些演練使用 StarWind Virtual SAN Free 建立 HA 設備具有 Hyper-V 叢集的 StarWind Virtual SAN 超融合 3 節點場景

我在 3 個節點上有 2 個裝置(儲存和見證),我的所有目標都是使用 Starwind 的腳本建立的,我能夠發現它們是同步的。

我的問題之一是我無法向目標添加多於一條路徑。我可以將兩個節點配置為使用 10.0.0.0 位址,但不能使用位址 10.0.0.128,第三個節點可以使用 10.0.0.128,但不能使用 10.0.0.0

另一個問題是,如果我繼續並遵循超融合鏈接,在“多路徑配置”下,它說要為 MPIO 配置所有設備,但我的設備沒有任何連接?

我在試用時只用一條路徑進行了嘗試,並且沒有出現此類問題,所以我知道這是某個地方的配置錯誤,但我似乎找不到它。

我使用的腳本:

  • CreateHA(建立裝置)
  • enumDevicesTargets(確認設備和目標存在)
  • haSyncPriority(名字說明了一切)
  • SyncHaDeviceAdvanced(檢查它們是否同步,如果不同步則要做的事情)

我重新安裝了starwind,看看是否有錯誤,但問題仍然存在。

這是“CreateHA”配置:

Import-Module StarWindX

try
{
    $server = New-SWServer -host 127.0.0.1 -port 3261 -user root -password starwind

    $server.Connect()

    $firstNode = new-Object Node

    $firstNode.HostName = "127.0.0.1"
    $firstNode.ImagePath = "My computer\S\Storage"
    $firstNode.ImageName = "Storage"
    $firstNode.Size = 1536000
    $firstNode.CreateImage = $true
    $firstNode.TargetAlias = "Storage"
    $firstNode.AutoSynch = $true
    $firstNode.SyncInterface = "#p2=10.0.0.2:3260;#p3=10.0.0.3:3260"
    $firstNode.HBInterface = "#p2=10.0.0.130:3260;#p3=10.0.0.131:3260"
    $firstNode.PoolName = ""
    $firstNode.SyncSessionCount = 1
    $firstNode.ALUAOptimized = $true
    $firstNode.SectorSize = 4096

    $secondNode = new-Object Node

    $secondNode.HostName = "192.168.0.42"
    $secondNode.HostPort = "3261"
    $secondNode.Login = "root"
    $secondNode.Password = "starwind"
    $secondNode.ImagePath = "My computer\S\Storage"
    $secondNode.ImageName = "Storage"
    $secondNode.Size = 1536000
    $secondNode.CreateImage = $true
    $secondNode.TargetAlias = "Storage"
    $secondNode.AutoSynch = $true
    $secondNode.SyncInterface = "#p1=10.0.0.1:3260;#p3=10.0.0.3:3260"
    $secondNode.HBInterface = "#p1=10.0.0.129:3260;#p3=10.0.0.131:3260"
    $secondNode.SyncSessionCount = 1
    $secondNode.ALUAOptimized = $true

    $thirdNode = new-Object Node

    $thirdNode.HostName = "192.168.0.43"
    $thirdNode.HostPort = "3261"
    $thirdNode.Login = "root"
    $thirdNode.Password = "starwind"
    $thirdNode.ImagePath = "My computer\S\Storage"
    $thirdNode.ImageName = "Storage"
    $thirdNode.Size = 1536000
    $thirdNode.CreateImage = $true
    $thirdNode.TargetAlias = "Storage"
    $thirdNode.AutoSynch = $true
    $thirdNode.SyncInterface = "#p1=10.0.0.1:3260;#p2=10.0.0.2:3260"
    $thirdNode.HBInterface = "#p1=10.0.0.129:3260;#p2=10.0.0.130:3260"
    $thirdNode.SyncSessionCount = 1
    $thirdNode.ALUAOptimized = $true

    $device = Add-HADevice -server $server -firstNode $firstNode -secondNode $secondNode -thirdNode $thirdNode -initMethod "Clear"

    $syncState = $device.GetPropertyValue("ha_synch_status")

    while ($syncState -ne "1")
    {
        #
        # Refresh device info
        #
        $device.Refresh()

        $syncState = $device.GetPropertyValue("ha_synch_status")
        $syncPercent = $device.GetPropertyValue("ha_synch_percent")

        Start-Sleep -m 2000

        Write-Host "Synchronizing: $($syncPercent)%" -foreground yellow
    }
}
catch
{
    Write-Host $_ -foreground red
}
finally
{
    $server.Disconnect()
}

答案1

首先,擺脫儲存和同步網路的 NIC 團隊。 ISCSI 網路利用 MPIO,無需中繼、分組、綁定等。

假設您想要使用 10.0.0.x 網路進行 iSCSI 流量,您的 ISCSI 啟動器配置應如下所示:

以節點1為例

ISCSI 發現入口網站:

127.0.0.1(啟動器 IP - 預設)

10.0.0.130(啟動器 IP - Node1 和 Node2 之間 ISCSI 網路的本機 IP)

10.0.0.131(啟動器 IP - Node1 和 Node3 之間 ISCSI 網路的本機 IP)

然後,您需要在“目標”標籤下連接每個目標。

本地目標必須透過 127.0.0.1(環回)連接。夥伴節點 2 和 3 上的目標必須透過對應的 iSCSI 網路進行連線。

有關如何連接每個目標的詳細指南可以在他們的網站上找到。

順便說一句,你提到的指南看起來已經過時了。他們有一個更新的:https://www.starwindsoftware.com/resource-library/starwind-virtual-san-hyper-converged-3-nodes-scenario-with-hyper-v-cluster

發現入口網站並連接所有三個節點上的每個目標後,您應該正確配置 MPIO 路徑。只需遵循其餘指南即可實現此目的。

PS:3 路「主動-主動-主動」複製配置是最複雜的配置,因此請準備一大杯咖啡,高度集中註意力並仔細遵循指南中的每個步驟。

答案2

與支援人員交談後,問題出在使用的 Starwind Free 版本。升級到舊版後問題就解決了。最新的 Starwind Free 不再有這個問題(據我所知)。

相關內容