我在 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 不再有這個問題(據我所知)。