Rolling upgrade SQL server Cluster


Tag : SQL,Powershell,script,SQL Server,Tips

När man kör en rolling upgrade av SQL Server i ett kluster kommer klustret då av säkerhetsskäl ta bort possible owner på två resurser som finns under SQL gruppen.

Det är de två resurser under servername i SQL gruppen där possible owner ändras. Ipnummer och network name som det hette förut nu står det bara name i FailoverClustermanager


För att kontrollera detta kan man i powershell köra

Get-ClusterResource | Get-ClusterOwnerNode

alternativt via eleverad Dos prompt

cluster res "Resource Name" /listowners

För att då sätta possible owner kör man följande

För att först kontrollera vad noderna i klustret heter

Via powershell
Get-ClusterNode
Via dos prompt
cluster node


Sätt sedan possible owner
Via powershell
Set-ClusterOwnerNode -Resource Resource Name -Owners node1,node2

Via dosprompt, nackdelen via dos är att du bara kan sätta en nod åt gången
cluster res "resursnamn" /addowner:Node1

För att göra det enklare har jag skapat ett powershellscript som ordnar detta med automatik

$owner = Get-ClusterResource | Get-ClusterOwnerNode

foreach ($node in $owner){ $numberofowner=$node.ownernodes.count

$Numberofnodes = Get-ClusterNode $server = $Numberofnodes.name.count

if ($numberofowner -lt $server) { Write-Host $node.Clusterobject "Saknar en eller flera noder" Set-ClusterOwnerNode -Resource $node.Clusterobject -Owners $Numberofnodes.name

} Else { Write-Host $node.Clusterobject "har följande possible owners " $node.Ownernodes

write-host "`n" } }

About

Det här är min digitala anteckningsbok för allt som har med databaser, automatisering och teknik att göra.
Här samlar jag alla de där skripten, lösningarna och knepen jag byggt på mig under åren – främst inom SQL Server och PowerShell.
Istället för att de ska ligga och damma i en glömd mapp delar jag med mig av dem här, så att både jag själv (när minnet sviker) och du förhoppningsvis kan spara några timmars klickande.