Die Core Leute

Warning: This blog is not maintained any more (no update of content or links – as well as information are might deprecated / not valid any more).

Aktivierung der Schattenkopien auf non-CSV clustered Volumes per Powershell in Windows Server 2008 R2

Das Ergebnis einer coolen Initiative eines unserer Kunden ist ein Skript für das Erstellen von Schattenkopien auf non-CSV clustered Volumes.

So konfiguriert man das in der GUI:

Was im Hintergrund passiert:

 

Und wie man das dann per Powershell konfigurieren kann:

–          Variabeln

$diskname = “VolumeName
$VolumeWmi = gwmi Win32_Volume -Namespace root/cimv2 | ?{ $_.Label -eq $diskname }
$DeviceID = $VolumeWmi.DeviceID.ToUpper().Replace(“\\?\VOLUME”, “”).Replace(“\”,””)
$ResName = “ShadowCopyVolume” + $DeviceID

$ResParams = “\\?\Volume” + $DeviceID  + “\\”

 

–          Anlegen der VSS Cluster Resource:

Add-ClusterResource –name $ResName –ResourceType “Volume Shadow Copy Service Task ” –group “FileClusterGroup

 

–          Setzen der private Properties der Cluster VSS Resource:

Get-ClusterResource $ResName | Set-ClusterParameter ApplicationName %systemroot%\system32\vssadmin.exe

Get-ClusterResource $ResName | Set-ClusterParameter ApplicationParams “Create Shadow /AutoRetry=15 /For=$ResParams”

 

–          Dependency setzen auf die entsprechende Cluster Disk:

Set-ClusterResourceDependency $ResName “[Cluster Disk X]”

 

–          VSS Resource starten:

Start-ClusterResource $ResName

 

Für das erstellen des Schedules per Powershell muss man noch die TriggerArray Eigenschaft setzen.

–          Volume Shadow Copy Service Task Private Properties 

Referenz:

–          das Erstellen der “Volume Shadow Copy Service Task” Ressourcen per cluster.exe ist nicht supported:

Checklist: Installing a Volume Shadow Copy Service Task resource  

Standalone Server

Das Aktivieren von Schattenkopien auf Volumes für stand-alone Server

$diskname = “VolumeName
$VolumeWmi = gwmi Win32_Volume -Namespace root/cimv2 | ?{ $_.Label -eq $diskname }
$DeviceID = $VolumeWmi.DeviceID.ToUpper().Replace(“\\?\VOLUME”, “”).Replace(“\”,””)
$TaskName = “ShadowCopyVolume” + $DeviceID
$TaskFor = “\\?\Volume” + $DeviceID + “\\”
$Task = “%systemroot%\system32\vssadmin.exe Create Shadow /AutoRetry=15 /For=$TaskFor”
 
Write-Host -foreground green “Task” $TaskName “wird für” $diskname “eingerichtet.”
schtasks /create /RU SYSTEM /SC DAILY /ST 03:00 /TN $TaskName /TR $Task /V1

 

Mehrere Details, Aktivitäten und erweiterte Scripts sind hier zu finden: Shadow Copy Schedule per Script 

Oni Sandru

Platforms Core Team