back after appr. 7 years
I am stuck in the setup of a 3-way-HA cluster.
I started with 3 VMs (HyperV) with 8 cores, and 3 NICs based on this drive: sw-vsa-hyper-v-build-15020.vhdx.
The 3 machines are up and running, the NICs are configured
10.0.10.18x MGMT
10.0.50.18x iSCSI
10.0.56.18x SYNC
x{1,2,3}
On every VM I created
- a RAID device
- a VDO device
Which is mounted on /mnt
I installed the Powershell package on a Server 2019 machine and adapted the creatHA_3.ps1
Code: Select all
param($addr="10.0.10.181", $port=3261, $user="root", $password="starwind",
$addr2="10.0.10.182", $port2=$port, $user2=$user, $password2=$password,
$addr3="10.0.10.183", $port3=$port, $user3=$user, $password3=$password,
#common
$initMethod="SyncFromFirst",
$size=1000,
$sectorSize=512,
$failover=0,
#$bmpType=1,
#$bmpStrategy=0,
#primary node
$imagePath="VSA Storage\mnt",
$imageName="masterImg31",
$createImage=$true,
$targetAlias="targetha31",
$autoSynch=$true,
$poolName="Pool1",
$storageName="",
$syncSessionCount=1,
$aluaOptimized=$true,
$cacheMode="wb",
$cacheSize=128,
$syncInterface="#p2=10.0.56.182:3260;#p3=10.0.56.183:3260",
$hbInterface="#p2=10.0.10.182:3260,10.0.50.182:3260;#p3=10.0.10.183:3260,10.0.50.183:3260",
#$bmpFolderPath="",
#secondary node
$imagePath2="VSA Storage\mnt",
$imageName2="partnerImg32",
$createImage2=$true,
$targetAlias2="partnerha32",
$autoSynch2=$true,
$poolName2="Pool1",
$storageName2="",
$syncSessionCount2=1,
$aluaOptimized2=$false,
$cacheMode2=$cacheMode,
$cacheSize2=$cacheSize,
$syncInterface2="#p1=10.0.56.181:3260;#p3=10.0.56.183:3260",
$hbInterface2="#p1=10.0.10.181:3260,10.0.50.181:3260;#p3=10.0.10.183:3260,10.0.50.183:3260",
#$bmpFolderPath2="",
#third node
$imagePath3="VSA Storage\mnt",
$imageName3="partnerImg33",
$createImage3=$true,
$targetAlias3="partnerha33",
$autoSynch3=$true,
$poolName3="Pool1",
$storageName3="",
$syncSessionCount3=1,
$aluaOptimized3=$false,
$cacheMode3=$cacheMode,
$cacheSize3=$cacheSize,
$syncInterface3="#p1=10.0.56.181:3260;#p2=10.0.56.182:3260",
$hbInterface3="#p1=10.0.10.181:3260,10.0.50.181:3260;#p2=10.0.10.182:3260,10.0.50.182:3260"
#$bmpFolderPath3=""
)
Import-Module StarWindX
try
{
Enable-SWXLog
$server = New-SWServer -host $addr -port $port -user $user -password $password
$server.Connect()
$firstNode = new-Object Node
$firstNode.HostName = $addr
$firstNode.HostPort = $port
$firstNode.ImagePath = $imagePath
$firstNode.ImageName = $imageName
$firstNode.Size = $size
$firstNode.CreateImage = $createImage
$firstNode.TargetAlias = $targetAlias
$firstNode.AutoSynch = $autoSynch
$firstNode.SyncInterface = $syncInterface
$firstNode.HBInterface = $hbInterface
$firstNode.PoolName = $poolName
$firstNode.SyncSessionCount = $syncSessionCount
$firstNode.ALUAOptimized = $aluaOptimized
$firstNode.SectorSize = $sectorSize
$firstNode.CacheMode = $cacheMode
$firstNode.CacheSize = $cacheSize
$firstNode.FailoverStrategy = $failover
#$firstNode.BitmapStoreType = $bmpType
#$firstNode.BitmapStrategy = $bmpStrategy
#$firstNode.BitmapFolderPath = $bmpFolderPath
$secondNode = new-Object Node
$secondNode.HostName = $addr2
$secondNode.HostPort = $port2
$secondNode.Login = $user2
$secondNode.Password = $password2
$secondNode.ImagePath = $imagePath2
$secondNode.ImageName = $imageName2
$secondNode.CreateImage = $createImage2
$secondNode.TargetAlias = $targetAlias2
$secondNode.AutoSynch = $autoSynch2
$secondNode.SyncInterface = $syncInterface2
$secondNode.HBInterface = $hbInterface2
$secondNode.SyncSessionCount = $syncSessionCount2
$secondNode.ALUAOptimized = $aluaOptimized2
$secondNode.CacheMode = $cacheMode2
$secondNode.CacheSize = $cacheSize2
$secondNode.FailoverStrategy = $failover
#$secondNode.BitmapFolderPath = $bmpFolderPath2
$thirdNode = new-Object Node
$thirdNode.HostName = $addr3
$thirdNode.HostPort = $port3
$thirdNode.Login = $user3
$thirdNode.Password = $password3
$thirdNode.ImagePath = $imagePath3
$thirdNode.ImageName = $imageName3
$thirdNode.CreateImage = $createImage3
$thirdNode.TargetAlias = $targetAlias3
$thirdNode.AutoSynch = $autoSynch3
$thirdNode.SyncInterface = $syncInterface3
$thirdNode.HBInterface = $hbInterface3
$thirdNode.SyncSessionCount = $syncSessionCount3
$thirdNode.ALUAOptimized = $aluaOptimized3
$thirdNode.CacheMode = $cacheMode3
$thirdNode.CacheSize = $cacheSize3
$thirdNode.FailoverStrategy = $failover
#$thirdNode.BitmapFolderPath = $bmpFolderPath3
$device = Add-HADevice -server $server -firstNode $firstNode -secondNode $secondNode -thirdNode $thirdNode -initMethod $initMethod
$syncState = $device.GetPropertyValue("ha_synch_status")
write-host "Start Sync..."
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()
}
Message after completion only:
Any ideas, what could be wrong with my script or my setup?Request to 10.0.10.181 ( 10.0.10.181 ) : 3261
Thx in adcance, cheers,
Jörg
PS.: with the TRIAL version of vsan and the same setup of VMs (differnt VHDX of course, but same NICs, Procs, RAM) everything is fine.