Verwalten der Funktion „Speicherreplikat“ in VMM
Wichtig
Diese Version von Virtual Machine Manager (VMM) hat das Supportende erreicht. Sie sollten ein Upgrade auf VMM 2019 durchführen.
Windows Server 2016 bietet erstmals die Funktion „Speicherreplikat“. Es ermöglicht eine speicheragnostische, synchrone Replikation auf Blockebene zwischen Clustern oder Servern im Hinblick auf Notfallvorsorge und -wiederherstellung sowie das Stretching eines Failoverclusters auf mehrere Websites für Hochverfügbarkeit. Die synchrone Replikation ermöglicht die Spiegelung von Daten an physischen Standorten mit ausfallsicheren Volumes, um auf Dateisystemebene sicherzustellen, dass kein Datenverlust auftritt. Die asynchrone Replikation ermöglicht die Standorterweiterung über regionale Bereiche hinaus mit der Möglichkeit von Datenverlusten.
Erfahren Sie mehr und überprüfen Sie Häufig gestellte Fragen.
Der Artikel erläutert, wie die Funktion „Speicherreplikat“ in System Center – Virtual Machine Manager (VMM) integriert wird, und beschreibt die Einrichtung der Funktion „Speicherreplikat“ mithilfe von PowerShell zum Replizieren von Speicher im VMM-Fabric.
Funktion „Speicherreplikat“ in VMM
Sie können ein Speicherreplikat zum Replizieren von Hyper-V-Clusterdaten oder Dateidaten. Die Verwendung der Funktion „Speicherreplikat“ in VMM bietet eine Reihe geschäftlicher Vorteile:
- Eliminieren von Kosten und Komplexität im Zusammenhang mit synchronen Replikationslösungen wie z.B. SAN.
- Synchrone Replikation minimiert Ausfallzeiten und Datenverluste. Sie bietet einen RPO-Wert von 0 (kein Datenverlust). RTO (Daten nicht verfügbar) tritt nur während des Zeitraums auf, in dem ein primärer Standort ausfällt und ein sekundärer Standort gestartet wird.
- Quell- und Ziel-Speicherhardware müssen nicht identisch sein.
Vorbereitung
- VMM muss auf Windows Server 2016 Datacenter Edition ausgeführt werden.
- Hyper-V muss auf Windows Server 2016 Datacenter, Server Core oder Nano ausgeführt werden.
- Nur die synchrone Replikation wird unterstützt. Asynchrone Replikation wird nicht unterstützt.
- Sie benötigen zwei Speichersätze, entweder Volume- oder Dateispeicher. Quell- und Zielstandort müssen die gleiche Art von Speicher (Datei oder Volume) aufweisen, jedoch kann der tatsächliche Speicher gemischt sein. Sie könnten z.B. Fibre Channel-SAN an einem Ende und Direkte Speicherplätze (im hyperkonvergenten oder disaggregierten Modus) am anderen Ende haben.
- Jeder Speichersatz sollte in jedem der Cluster verfügbar sein. Clusterspeicher sollte nicht freigegeben sein.
- Quell- und Ziel-Volumes (einschließlich Protokollvolumes) müssen in Größe und Blockgröße identisch sein. Der Grund dafür ist, dass bei der Funktion „Speicherreplikat“ Blockreplikation verwendet wird.
- Auf jedem Speicherserver benötigen Sie mindestens eine 1GbE-Verbindung, vorzugsweise 10GbE, iWARP oder InfiniBand.
- Jeder Dateiserver oder Clusterknoten benötigt Firewallregeln, die bidirektionalen Datenverkehr über ICMP, SMB (Port 445 sowie 5445 für SMB Direct) und WS-MAN (Port 5985) zwischen allen Knoten zulassen.
- Sie müssen auf jedem Clusterknoten Mitglied der Administratorgruppe sein.
- Die Funktion „Speicherreplikat“ kann nur mithilfe von Windows PowerShell eingerichtet werden.
- Quell- und Zielspeicher müssen von dem gleichen VMM-Server verwaltet werden.
- Die Integration von VMM in Azure Site Recovery wird nicht unterstützt.
- Die Festlegung von Schreibreihenfolge und Konsistenzgruppen wird nicht unterstützt.
Bereitstellungsschritte
Speicher identifizieren: Identifizieren Sie den Quell- und Zielspeicher, den Sie verwenden möchten.
Ermitteln und klassifizieren: Wenn der Speicher derzeit nicht im VMM-Fabric enthalten ist, müssen Sie ihn mit VMM ermitteln. Quell- und Ziel-Speicher müssen von demselben VMM-Server verwaltet werden. Nach der Ermittlung müssen Sie einen Speicherpool und eine Speicherklassifizierung hierfür erstellen. Weitere Informationen
Paarbildung: Stellen Sie Quell- und Zielspeicherarray zu einem Paar zusammen.
Bereitstellen: Nach der Paarung des Speichers müssen Sie identische Daten- und Protokollvolumes aus den Quell- und Zielspeicherpools, die auf den jeweiligen Speicherarrays erstellt wurden, bereitstellen. Außer einem Volume für Daten, die repliziert werden, müssen Sie auch ein Volume für Replikationstransaktionsprotokolle bereitstellen. Wenn die Daten auf dem Quellspeicher aktualisiert werden, wird das Transaktionsprotokoll angefügt, und Deltaänderungen (mit synchroner Replikation) werden mit dem Zielspeicher synchronisiert.
Replikationsgruppen erstellen: Nach Einrichtung der Volumes erstellen Sie Replikationsgruppen. Replikationsgruppen sind logische Gruppen, die mehrere Volumes enthalten. Die Replikationsgruppen müssen identisch sein und die Daten- und Protokollvolumes für die Quell- und Zielstandorte enthalten.
Replikation aktivieren: Nun können Sie die Replikation zwischen den Quell- und Zielreplikationsgruppen aktivieren.
Aktualisieren: Um die Erstellung der Replikationsgruppen abzuschließen und die erste Datenreplikation auszulösen, müssen Sie den primären und sekundären Speicheranbieter aktualisieren. Die Daten werden im Zielspeicher repliziert.
Status überprüfen: Nun können Sie den Status der primären Replikationsgruppe überprüfen. Sie sollte den Status „Replikation“ aufweisen.
VMs hinzufügen: Wenn die Deltareplikation eingerichtet ist und ausgeführt wird, können Sie VMs hinzufügen, die den in der Replikationsgruppe enthaltenen Speicher verwenden. Wenn Sie die VMs hinzufügen, werden sie erkannt, und die Replikation wird automatisch angestoßen.
Failover ausführen: Nach der Replikation im Synchronisierungsstatus können Sie ein Failover ausführen und überprüfen, ob es wie erwartet funktioniert. Momentan gibt es noch keinen Mechanismus zum Testen des Failovers, sodass Sie nach geplanten oder ungeplanten Ausfällen ein manuelles Failover ausführen müssen. Nach dem Failover können Sie die VM (falls noch vorhanden) am Quellstandort löschen und unter Verwendung der replizierten Daten eine VM am Zielstandort erstellen.
Failback ausführen: Nachdem das Failover abgeschlossen ist und Replikat-VMs eingerichtet sind und ausgeführt werden, können Sie nach Bedarf ein Failback ausführen. Beachten Sie dabei Folgendes:
- Wenn Sie ein ungeplantes Failover ausgeführt haben und der Quellstandort nicht verfügbar ist, führen Sie ein Failover zum Failback vom sekundären zum primären Standort aus, und erstellen Sie dann die VM am primären Standort.
- Wenn Sie ein geplantes Failover ausgeführt haben und die Quell-VM noch verfügbar ist, müssen Sie die Replikation stoppen, die Quell-VM entfernen, die VM am sekundären Standort erstellen und dann die Replikation neu starten. Anschließend können Sie am primären Standort die VM mit den gleichen Einstellungen wie bei der ursprünglichen VM erstellen.
Abrufen von PowerShell-Objekten
Bevor Sie beginnen, rufen Sie die Namen der PowerShell-Objekte ab, die Sie verwenden werden.
Rufen Sie den Namen des primären Speicherarrays ab, und ordnen Sie eine Variable zu.
$PriArray = Get-SCStorageArray - Name $PriArrayNameRufen Sie den Namen des sekundären Speicherarrays ab, und ordnen Sie eine Variable zu.
RecArray = Get-SCStorageArray - Name $RecArrayNameRufen Sie den Namen des primären Speicherpools ab, und ordnen Sie eine Variable zu.
$ $ PriPoolName $RecPool = Get-SCStoragePool -Name $Rufen Sie den Namen des sekundären Speicherpools ab, und ordnen Sie eine Variable zu.
$ $PriPoolName $RecPool = Get-SCStoragePool -Name $
Paarbildung der Speicherarrays
Bilden Sie aus dem primären und sekundären Speicherarray anhand der Variablen für die Speicherarraynamen ein Paar. Beachten Sie, dass der Arrayname mit dem Namen des Clusters identisch sein sollte.
Set-SCStorageArray -StorageArray $PriArray -PeerStorageArrayName $RecArray.name
Wenn Sie den Cluster außerhalb von VMM erstellt und den Arraynamen entsprechend dem verwendeten Clusternamen ändern müssen: PowerShell Get-SCStorageArray -Name "existing-name" | Set-SCStorageArray -Name "new-name"
Bereitstellen von LUNs und Erstellen von Speichergruppen
Stellen Sie eine LUN aus dem Speicherpool für Daten und für das Protokoll bereit. Erstellen Sie dann Replikationsgruppen.
Führen Sie die Bereitstellung und Erstellung an der Quelle durch.
Set-SCStorageArray -StorageArray $PriArray -PeerStorageArrayName $RecArray.name $PrimaryVol = New-SCStorageVolume -StorageArray $PriArray -StoragePool $PriPool -Name PrimaryVol -SizeInBytes $VolSize -RunAsynchronously -PhysicalDiskRedundancy "1" -FileSystem "CSVFS_NTFS" -DedupMode "Disabled" $PrimaryLogVol = New-SCStorageVolume -StorageArray $PriArray -StoragePool $PriPool -Name PrimaryLogVol -SizeInBytes $LogVolSize -GuidPartitionTable -RunAsynchronously -FileSystem "NTFS" $PriRG = New-SCReplicationGroup -Name PriRG -StorageVolume $PrimaryVol -LogStorageVolume $PrimaryLogVolFühren Sie die Bereitstellung und Erstellung am Ziel durch.
$RecoveryVol = New-SCStorageVolume -StorageArray $RecArray -StoragePool $RecPool -Name RecoveryVol -SizeInBytes $VolSize -RunAsynchronously -PhysicalDiskRedundancy "1" -FileSystem "CSVFS_NTFS" -DedupMode "Disabled" $RecoveryLogVol = New-SCStorageVolume -StorageArray $RecArray -StoragePool $RecPool -Name RecoveryLogVol -SizeInBytes $LogVolSize -GuidPartitionTable -RunAsynchronously -FileSystem "NTFS" $RecRG = New-SCReplicationGroup -Name RecRG -CreateOnArray -ProtectionMode Synchronous -StorageVolume $RecoveryVol -LogStorageVolume $RecoveryLogVol
Aktivieren der Replikation
Nun können Sie die synchrone Replikation zwischen den Quell- und Zielreplikationsgruppen aktivieren.
Set-SCReplicationGroup -ReplicationGroup $PriRG -Operation EnableProtection -TargetReplicationGroup $RecRG -EnableProtectionMode Synchronous
Aktualisieren der Speicheranbieter
- Öffnen Sie die VMM-Konsole.
- Klicken Sie auf Fabric-RessourcenAnbieter. Klicken Sie mit der rechten Maustaste auf den Anbieter und dann auf >>.
Überprüfen des Replikationsstatus
Rufen Sie den Replikationsstatus für die Quell-Replikationsgruppe ab, um sicherzustellen, dass die Replikation wie erwartet funktioniert.
Get replication status Get-SCReplicationGroup | where {($_.Name.EndsWith("PriRG")) -or ($_.Name.EndsWith("RecRG"))} | fl Name, IsPrimary, ReplicationState, ReplicationHealth
Erstellen einer VM
Erstellen Sie eine VM mithilfe einer LUN in der Quellreplikationsgruppe. Alternativ können Sie eine VM in der VMM-Konsole erstellen.
New-SCVirtualMachine -Name "DemoVM" -VMHost <HostName> -Path $PrimaryVol -VMTemplate <VMTemplate>
Ausführen eines Failovers
Führen Sie ein Failover aus.
Set-SCReplicationGroup -ReplicationGroup $PriRG -Operation PrepareForFailover
Set-SCReplicationGroup -ReplicationGroup SRecRG -Operation Failover
Ausführen eines Failbacks
Bevor Sie ein Failback ausführen, entfernen Sie in der VMM-Konsole die Quell-VMs, sofern sie weiterhin verfügbar sind. Sie können kein Failback auf die gleiche VM ausführen.
Führen Sie nun das Failback aus:
Set-SCReplicationGroup -ReplicationGroup $PriRG -Operation ReverseRoles -EnableProtectionMode Synchronous -TargetReplicationGroup $RecRG
Nachdem Sie das Failback ausgeführt haben, können Sie anhand der VHD-/Konfigurationsdateien aus dem erfolgreichen Failback VMs am Quellstandort erstellen.
Beenden der Replikation
Wenn Sie die Replikation stoppen möchten, müssen Sie dieses Cmdlet an der Quelle und am Ziel ausführen.
Set-SCReplicationGroup -ReplicationGroup $RecRG -Operation TearDown Tear down need to be done on both RGs
Weitere Informationen
- Erfahren Sie mehr über das Speicherreplikat
- Erfahren Sie mehr über das Hinzufügen von Speicher zu Hyper-V-Hosts und -Clustern.
- Weitere Informationen zum Migrieren von Speicher