Verwenden Sie Data Box, um von Network Attached Storage (NAS) auf Azure-Dateifreigaben zu migrieren

✔️ Gilt für: Klassische SMB-Dateifreigaben, die mit dem Microsoft.Storage-Ressourcenanbieter erstellt wurden

✖️ Gilt nicht für: alle NFS-Dateifreigaben, einschließlich Dateifreigaben, die mit dem Ressourcenanbieter Microsoft.FileShares erstellt wurden, oder klassischer Dateifreigaben, die mit dem Ressourcenanbieter Microsoft.Storage erstellt wurden

Dieser Migrationsartikel ist einer von mehreren Artikeln, die die Schlüsselwörter NAS und Azure Data Box verwenden. Überprüfen Sie, ob dieser Artikel für Ihr Szenario zutrifft:

  • Datenquelle: Network Attached Storage (NAS)
  • Migrationsroute: NAS ⇒ Data Box ⇒ Azure Dateifreigabe
  • Keine lokale Zwischenspeicherung von Dateien: Da das endgültige Ziel darin besteht, die Azure-Dateifreigaben direkt in der Cloud zu verwenden, ist nicht geplant, die Azure-Dateisynchronisierung zu verwenden.

Wenn Ihr Szenario anders ist, sehen Sie sich die Tabelle mit Migrationsleitfäden an.

Hinweis

Data Box unterstützt NFS als Kopierprotokoll, sodass man damit Daten von einem NAS kopieren kann, das NFS bedient. Allerdings unterstützt Data Box das direkte Importieren von Daten in NFS-Azure-Dateifreigaben nicht. Dieser Leitfaden behandelt nur die Ziele für SMB-Dateifreigabe.

In diesem Artikel wird Schritt für Schritt der gesamte Prozess für die Planung, Bereitstellung und Netzwerkkonfiguration beschrieben, der erforderlich ist, um die Migration von Ihrer NAS-Appliance zu funktionierenden Azure-Dateifreigaben durchzuführen. Dieser Leitfaden verwendet Azure Data Box für den Massendatentransport (Offline-Datentransport).

Migrationsziele

Das Ziel besteht darin, die Freigaben auf Ihrer NAS-Appliance nach Azure zu verschieben und als native Azure-Dateifreigaben bereitzustellen. Sie können native Azure-Dateifreigaben ohne Windows Server verwenden. Diese Migration muss so erfolgen, dass die Integrität der Produktionsdaten und die Verfügbarkeit während der Migration gewährleistet wird. Letzteres erfordert minimale Ausfallzeiten, damit sie in normalen Wartungsfenstern stattfinden kann oder diese nur geringfügig überschreitet.

Übersicht über Migration

Der Migrationsprozess besteht aus mehreren Phasen. Zuerst sollten Sie Azure-Speicherkonten und Dateifreigaben bereitstellen und Netzwerke konfigurieren. Dann migriere deine Dateien mit Azure Data Box und RoboCopy, um mit Änderungen auf dem Laufenden zu bleiben. Stellen Sie abschließend Ihre Benutzer und Anwendungen auf die neu erstellten Azure-Dateifreigaben um. In den folgenden Abschnitten werden die Phasen des Migrationsprozesses ausführlich beschrieben.

Tipp

Wenn Sie zu diesem Artikel zurückkehren, wechseln Sie anhand der Navigation auf der rechten Seite zu der Migrationsphase, in der Sie aufgehört haben.

Phase 1: Ermitteln der Anzahl der benötigten Azure-Dateifreigaben

Bestimmen Sie, wie viele Azure-Dateifreigaben Sie benötigen. Möglicherweise verfügen Sie über weitere Ordner auf Ihren Volumes, die Sie derzeit lokal als SMB-Freigaben für Ihre Benutzer und Apps freigeben. Je nach Anzahl der Dateifreigaben, die Sie in die Cloud migrieren möchten, wählen Sie entweder eine 1:1-Zuordnung oder eine Gruppierung von Freigaben.

Verwenden einer 1:1-Zuordnung

Wenn du eine kleine Anzahl von Anteilen hast, verwende eine Eins-zu-eins-Zuordnung. Am einfachsten können Sie sich dieses Szenario vorstellen, wenn Sie sich eine lokale Freigabe vorstellen, die sich eins zu eins einer Azure-Dateifreigabe zuordnen lässt.

Verwenden von Freigabegruppierungen

Wenn Sie über eine große Anzahl von Dateifreigaben verfügen, sollten Sie eine Freigabegruppierung in Erwägung ziehen. Wenn Ihre Personalabteilung z. B. über 15 Freigaben verfügt, können Sie in Erwägung ziehen, alle Personaldaten in einer einzelnen Azure-Dateifreigabe zu speichern. Dadurch wird für diese Gruppe lokaler Freigaben nur eine einzige Azure-Dateifreigabe in der Cloud benötigt.

Phase 2: Bereitstellen von Azure Storage-Ressourcen

In dieser Phase stellen Sie die Azure-Speicherkonten und die darin enthaltenen Dateifreigaben bereit.

Denken Sie daran, dass eine Azure-Dateifreigabe in der Cloud in einem Azure Storage-Konto bereitgestellt wird. Bei HDD-(Standard) Dateifreigaben macht dies das Speicherkonto zu einem Skalierungsziel für Leistungswerte wie IOPS und Durchsatz. Das Platzieren mehrerer Dateifreigaben in einem einzelnen Speicherkonto bedeutet, dass Sie einen freigegebenen Pool mit IOPS und Durchsatz für diese Freigaben erstellen.

Als allgemeine Regel können Sie mehrere Azure-Dateifreigaben im selben Speicherkonto zusammenfassen, wenn Sie Archivierungsfreigaben verwenden oder nur eine geringe tägliche Aktivität erwarten. Wenn Sie jedoch hochaktive Dateifreigaben haben (Dateifreigaben, die von vielen Benutzern und Anwendungen verwendet werden), stellen Sie Speicherkonten mit jeweils nur einer Dateifreigabe bereit. Diese Einschränkungen gelten nicht für FileStorage (SSD)-Speicherkonten, bei denen die Leistung für jede Freigabe explizit bereitgestellt und garantiert wird.

Hinweis

Es gilt ein Grenzwert von 250 Speicherkonten pro Abonnement und Azure-Region. Mit einer Kontingenterhöhung können Sie bis zu 500 Speicherkonten pro Region erstellen. Weitere Informationen finden Sie unter Erhöhen von Azure Storage-Kontokontingenten.

Ein weiterer Aspekt, den Sie bei der Bereitstellung eines Speicherkontos berücksichtigen sollten, ist die Redundanz. Weitere Informationen finden Sie unter Azure Files-Redundanz.

Wenn du eine Liste deiner Freigaben erstellst, ordne jede Freigabe dem Speicherkonto zu, auf dem du sie erstellst.

Auch die Namen Ihrer Ressourcen sind wichtig. Wenn Sie zum Beispiel mehrere Freigaben für die Personalabteilung in einem Azure-Speicherkonto gruppieren, benennen Sie das Speicherkonto entsprechend. Ebenso verwenden Sie bei der Benennung Ihrer Azure-Dateifreigaben Namen, die denen ihrer lokalen Gegenstücke ähneln.

Stellen Sie nun die entsprechende Anzahl von Azure Storage-Konten mit der entsprechenden Anzahl von Azure-Dateifreigaben bereit, indem Sie die Anweisungen unter Erstellen einer SMB-Dateifreigabe befolgen. In den meisten Fällen sollten Sie sicherstellen, dass die Region jedes Ihrer Speicherkonten gleich ist.

Phase 3: Bestimmen der Anzahl der benötigten Azure Data Box-Appliances

Beginne diesen Schritt erst, wenn du die vorherige Phase abgeschlossen hast. An diesem Punkt sollten Sie Ihre Azure-Speicherressourcen eingerichtet haben, einschließlich Speicherkonten und Dateifreigaben. Während Ihrer Bestellung der Data Box müssen Sie angeben, in welche Speicherkonten die Data Box die Daten bewegt.

Ordnen Sie in dieser Phase die Ergebnisse des Migrationsplans aus der vorherigen Phase den Grenzen der verfügbaren Data Box-Optionen zu. Diese Überlegungen helfen Ihnen, einen Plan zu erstellen, welche Data Box-Optionen Sie wählen und wie viele Sie benötigen, um Ihre NAS-Shares auf Azure-Dateifreigaben zu übertragen.

Um zu ermitteln, wie viele Geräte welchen Typs Sie benötigen, sollten Sie die folgenden wichtigen Grenzwerte beachten:

  • Jede Azure Data Box kann Daten in bis zu 10 Speicherkonten übertragen.
  • Jede Databox-Option hat ihre eigene nutzbare Kapazität. Weitere Informationen finden Sie unter Data Box-Optionen.

Konsultieren Sie Ihren Migrationsplan für die Anzahl der Speicherkonten, die Sie erstellt haben, und die Anteile in jedem einzelnen. Sehen Sie sich dann die Größe der einzelnen Freigaben in Ihrem NAS an. Durch die Kombination dieser Informationen können Sie entscheiden, welches Gerät Daten an welche Speicherkonten senden soll. Zwei Data Box-Geräte können Dateien auf dasselbe Speicherkonto übertragen, aber teile den Inhalt einer einzelnen Dateifreigabe nicht auf zwei Databox-Geräte auf.

Data Box-Optionen

Für eine Standardmigration wählen Sie eine oder eine Kombination dieser beiden Data Box-Optionen:

  • Data Box Diese Option ist die gebräuchlichste Wahl. Es handelt sich um ein robustes Data Box-Gerät, das ähnlich wie ein NAS funktioniert. Er wird mit einer nutzbaren Kapazität von 80 TiB zu Ihnen geliefert. Weitere Informationen finden Sie in der Dokumentation zu Data Box.
  • Data Box Heavy Diese Option verfügt über ein robustes Data Box-Gerät auf Rädern, das ähnlich wie ein NAS funktioniert, mit einer Kapazität von 1 PiB. Die nutzbare Kapazität ist aufgrund der Verschlüsselung und des Dateisystemoverheads 20 % niedriger. Weitere Informationen finden Sie in der Data Box Heavy-Dokumentation.

Warnung

Data Box Disks werden für Migrationen in Azure-Dateifreigaben nicht empfohlen. Data Box Disks bewahren keine Dateimetadaten auf, wie z. B. Zugriffsberechtigungen (ACLs) und andere Attribute.

Phase 4: Bereitstellen einer temporären Windows Server-Instanz

Während du auf die Ankunft deiner Azure Data Box-Appliances wartest, kannst du bereits einen oder mehrere Windows-Server bereitstellen, die du für RoboCopy-Jobs brauchst. Für Anforderungen an die Betriebssystemversion siehe die wichtige Anmerkung im Abschnitt RoboCopy.

  • Nutze diese Server, um Dateien auf die Data Box zu kopieren.
  • Nutzen Sie diese Server, um Änderungen auf dem NAS-Gerät nachzuholen, während die Data Box transportiert wird. Mit diesem Ansatz wird die Downtime aufseiten der Quelle auf ein Mindestmaß reduziert.

Die Geschwindigkeit, mit der Ihre RoboCopy-Aufträge arbeiten, hängt hauptsächlich von diesen Faktoren ab:

Behalte die genannten Details im Hinterkopf, wenn du den RAM und die Anzahl der Threads für deine temporären Windows Server(n) entscheidest.

Phase 5: Vorbereiten der Nutzung von Azure-Dateifreigaben

Um Zeit zu sparen, fahren Sie mit dieser Phase fort, während Sie auf Ihre Data Box warten. Mit den Informationen in dieser Phase können Sie entscheiden, wie Ihre Server und Nutzer Ihre Azure-Dateifreigaben nutzen dürfen. Wichtigste Entscheidungen:

  • Netzwerk: Ermöglichen Sie für Ihre Netzwerke das Weiterleiten von SMB-Datenverkehr.
  • Authentifizierung: Konfigurieren Sie Azure-Speicherkonten für die Kerberos-Authentifizierung. Microsoft Entra Connect und das Domain-Join Ihres Speicherkontos ermöglichen es Ihren Apps und Nutzern, ihre AD-Identität zur Authentifizierung zu verwenden.
  • Genehmigung: Share-Level-ACLs für jede Azure-Dateifreigabe ermöglichen es AD-Benutzern und -Gruppen, auf eine bestimmte Freigabe zuzugreifen, und innerhalb einer Azure-Dateifreigabe übernehmen native NTFS-ACLs. Die auf Datei- und Ordner-ACLs basierende Autorisierung funktioniert anschließend wie bei lokalen SMB-Freigaben.
  • Geschäftskontinuität: Die Integration von Azure-Dateifreigaben in eine bestehende Umgebung erfordert oft die Erhaltung bestehender Freigabeadressen. Wenn Sie noch keine DFS-Namespaces verwenden, sollten Sie dies in Ihrer Umgebung einrichten. Sie können die Share-Adressen, die Ihre Nutzer und Skripte verwenden, unverändert lassen. Sie nutzen hierbei DFS-N als Namespace-Routingdienst für SMB, indem Sie DFS-Namespaceziele nach deren Migration auf Azure-Dateifreigaben umleiten.

Dieses Video ist eine Anleitung und Demo dazu, wie Azure-Dateifreigaben in fünf einfachen Schritte für Information-Worker und Apps auf sichere Weise direkt verfügbar gemacht werden können.
Das Video verweist auf die dedizierte Dokumentation für die folgenden Themen. Beachten Sie, dass Azure Active Directory jetzt Microsoft Entra ID ist. Weitere Informationen finden Sie unter Neuer Name für Azure AD.

Phase 6: Dateien in Ihre Data Box kopieren

Wenn Ihre Data Box ankommt, richten Sie Ihre Data Box mit ungehinderter Netzwerkverbindung zu Ihrem NAS-Gerät ein. Folge der Einrichtungsdokumentation für den von dir bestellten Databox-Typ.

Je nach Art von Data Box hast du vielleicht Zugriff auf die Kopierwerkzeuge von Data Box. An diesem Punkt wird davon abgeraten, diese für Migrationen zu Azure-Dateifreigaben zu verwenden, da sie Ihre Dateien nicht vollständig originaltreu auf die Data Box kopieren. Verwenden Sie stattdessen Robocopy.

Wenn Ihre Data Box ankommt, sind für jedes von Ihnen bei der Bestellung angegebene Speicherkonto vorab bereitgestellte SMB-Shares verfügbar.

  • Wenn Ihre Dateien in einer SSD-Azure-Dateifreigabe gespeichert werden, gibt es pro SSD-Speicherkonto vom Typ „File Storage“ eine SMB-Freigabe.
  • Wenn deine Dateien auf ein HDD-Speicherkonto gehen, gibt es pro HDD-Pay-as-you-go-Speicherkonto drei SMB-Shares. Für deine Migration ist nur das Dateifreigabe-Ende, das mit _AzFile endet, relevant. Ignorieren Sie alle Block- und Seitenblobfreigaben.

Wie Data Box Ordner den Azure-Dateifreigaben zuordnet

Unter der Freigabe <storage-account-name>_AzFile entspricht jeder Ordner der ersten Ebene einer Azure-Dateifreigabe im Zielspeicherkonto:

  • Der Name des Ordners der ersten Ebene wird während der Erfassung zum Azure-Dateifreigabenamen. Wenn ein Share mit diesem Namen im Zielspeicherkonto noch nicht existiert, erstellt Data Box es. Wenn sie bereits vorhanden ist, kopiert Data Box die Daten in die vorhandene Freigabe.

  • Kopieren Sie Dateien nicht direkt in den Stamm der _AzFile-Freigabe. Alle Daten müssen in einen Ordner der ersten Ebene eingeordnet werden.

  • Für eine 1:1-Zuordnung zu Ihren SMB-Quellfreigaben erstellen Sie für jede Quellfreigabe einen Ordner der ersten Ebene (mit dem gewünschten Namen der Azure-Dateifreigabe), und kopieren Sie jede Quellfreigabe in den entsprechenden Ordner. Beispiel:

    \\<DataBox-IP>\<storage-account-name>_AzFile\Share1
    \\<DataBox-IP>\<storage-account-name>_AzFile\Share2
    \\<DataBox-IP>\<storage-account-name>_AzFile\Share3
    

Weitere Informationen finden Sie unter Connect to Data Box.

Führen Sie die Schritte in der Dokumentation zu Azure Data Box aus:

  1. Herstellen einer Verbindung mit Data Box
  2. Kopieren von Daten auf die Data Box
  3. Überprüfen Sie die RoboCopy-Logdatei auf Fehler, um zu bestätigen, dass alle Dateien erfolgreich kopiert wurden.
  4. Bereiten Sie Ihre Data Box auf die Abreise zu Azure vor

Die verknüpfte Data Box-Dokumentation spezifiziert einen RoboCopy-Befehl. Allerdings ist der Befehl nicht geeignet, um die vollständige Datei- und Ordnertreue zu erhalten. Dieser Befehl wird verwendet /MT:32 , weil es sich um eine lokale LAN-Kopie zur Data Box mit vernachlässigbarer Latenz handelt, daher ist hier eine höhere Thread-Anzahl angemessen als für die WAN-basierte Nachholkopie in Phase 7:

Robocopy /MT:32 /NP /NFL /NDL /B /MIR /IT /COPY:DATSO /DCOPY:DAT /UNILOG:<FilePathAndName> <SourcePath> <Dest.Path> 
  • Weitere Informationen zu den Details der einzelnen Robocopy-Flags finden Sie in der Tabelle, die unten im Robocopy-Abschnitt enthalten ist.
  • Weitere Informationen zum richtigen Dimensionieren der Threadanzahl /MT:n, Optimieren der Robocopy-Geschwindigkeit und Einfügen von Robocopy als problemlose Komponente in Ihrem Rechenzentrum finden Sie im Abschnitt zur Problembehandlung für Robocopy.

Tipp

Als Alternative zu RoboCopy bietet Data Box einen Datenkopierdienst an. Sie können diesen Dienst nutzen, um Dateien mit vollständiger Genauigkeit in Ihre Data Box zu laden. Folgen Sie diesem Lernprogramm zum Datenkopierdienst, und stellen Sie sicher, dass Sie das richtige Ziel für die Azure-Dateifreigabe festlegen.

Phase 7: Bereitstellen der Änderungen in Ihrem NAS mit Robocopy

Nachdem Ihre Data Box meldet, dass alle Dateien und Ordner in die geplanten Azure-Dateifreigaben eingelegt wurden, fahren Sie mit dieser Phase fort. Der Vorgang zum Bereitstellen von Änderungen mit Robocopy ist nur erforderlich, wenn sich die Daten im NAS seit dem Start des Data Box-Kopiervorgangs ggf. geändert haben. In bestimmten Szenarien, in denen Sie eine Freigabe für Archivierungszwecke verwenden, können Sie das Vornehmen von Änderungen auf der Freigabe Ihres NAS unter Umständen so lange zurückhalten, bis die Migration abgeschlossen ist. Möglicherweise können Sie Ihre geschäftlichen Anforderungen auch erfüllen, indem Sie für die NAS-Freigaben während der Migration den Schreibschutz aktivieren.

In Fällen, in denen bei Ihnen für eine Freigabe während der Migration der Schreibschutz aktiviert sein muss und nur ein kleines Downtimefenster zur Verfügung steht, muss die Ausführung dieses RoboCopy-Schritts zum Bereitstellen der Änderungen vollständig abgeschlossen sein, bevor für den Benutzerzugriff das Failover direkt auf die Azure-Dateifreigabe erfolgt.

In diesem Schritt führen Sie Robocopy-Jobs aus, um Ihre Cloudfreigaben mit den neuesten Änderungen auf Ihrem NAS seit dem Zeitpunkt zu synchronisieren, zu dem Sie Ihre Freigaben auf die Data Box kopiert haben. Diese Aktualisierung mit RoboCopy kann je nach Menge der Änderungen, die auf Ihren NAS-Freigaben aufgetreten sind, schnell beendet sein oder eine Weile dauern.

Erstellen Sie die erste lokale Kopie in Ihrem Windows Server-Zielordner:

  1. Identifizieren Sie den ersten Speicherort auf Ihrer NAS-Appliance.
  2. Ermitteln Sie die übereinstimmende Azure-Dateifreigabe.
  3. Binden Sie die Azure-Dateifreigabe als lokales Netzlaufwerk auf Ihrer temporären Windows Server-Instanz ein.
  4. Starten Sie die Kopie mit RoboCopy wie beschrieben.

Einbinden einer Azure-Dateifreigabe

Bevor Sie Robocopy verwenden können, müssen Sie die Azure-Dateifreigabe per SMB zugänglich machen. Die einfachste Möglichkeit besteht darin, die Freigabe als lokales Netzlaufwerk für die Windows Server-Instanz einzubinden, die Sie für Robocopy verwenden möchten.

Wichtig

Bevor Sie eine Azure-Dateifreigabe erfolgreich auf einem lokalen Windows Server bereitstellen können, müssen Sie Phase 5 abschließen: Vorbereiten der Verwendung von Azure-Dateifreigaben.

Lesen Sie sich anschließend den Artikel Verwenden einer Azure-Dateifreigabe mit Windows durch und binden Sie die Azure-Dateifreigabe ein, für die Sie das Bereitstellen der NAS-Änderungen mit RoboCopy starten möchten.

RoboCopy

Der folgende RoboCopy-Befehl kopiert nur die Unterschiede (aktualisierte Dateien und Ordner) von Ihrem NAS-Speicher auf Ihre Azure-Dateifreigabe.

robocopy <SourcePath> <Dest.Path> /MT:20 /R:2 /W:1 /B /MIR /IT /COPY:DATSO /DCOPY:DAT /NP /NFL /NDL /XD "System Volume Information" /UNILOG:<FilePathAndName> 
Schalter Bedeutung
/MT:n Hiermit kann Robocopy mit mehreren Threads ausgeführt werden. Der Standardwert für n ist 8. Das Maximum beträgt 128 Threads. Eine hohe Anzahl von Threads trägt zwar dazu bei, die verfügbare Bandbreite auszuschöpfen, aber dies bedeutet nicht, dass Ihre Migration mit mehr Threads immer schneller ist. Tests mit Azure Files zeigen, dass mit einer Anzahl von 8 bis 20 Threads eine ausgewogene Leistung für einen ersten Kopierlauf erzielt wird. Nachfolgende Ausführungen von /MIR werden zunehmend durch die verfügbare Computeleistung und nicht durch die verfügbare Netzwerkbandbreite beeinflusst. Stimmen Sie bei nachfolgenden Ausführungen den Wert für die Threadanzahl genauer auf die Prozessorkernanzahl und die Threadanzahl pro Kern ab. Überprüfen Sie, ob Kerne für andere Tasks reserviert werden müssen, über die ein Produktionsserver verfügen könnte. Tests mit Azure Files haben gezeigt, dass bis zu 64 Threads eine gute Leistung liefern, aber nur, wenn Ihre Prozessoren sie gleichzeitig aktiv halten können.
/R:n Dies ist die maximale Anzahl der Wiederholungsversuche für eine Datei, bei der beim ersten Kopierversuch ein Fehler auftritt. Robocopy führt n Versuche durch, bevor bei der Ausführung für die Datei ein dauerhafter Kopierfehler auftritt. Sie können die Leistung Ihres Durchlaufs optimieren: Wählen Sie einen Wert von 2 oder 3, wenn Sie annehmen, dass Timeouts in der Vergangenheit zu Fehlern geführt haben. Dies kann bei WAN-Verbindungen häufiger vorkommen. Wählen Sie keine Wiederholung oder den Wert 1, wenn Sie glauben, dass die Datei nicht kopiert werden konnte, weil sie aktiv in Verwendung war. Ein erneuter Versuch ein paar Sekunden später reicht möglicherweise nicht aus, um den Status der Datei zu ändern. Benutzer oder Apps, die die Datei geöffnet haben, benötigen möglicherweise einige Stunden mehr Zeit. Wenn Sie in diesem Fall akzeptieren, dass die Datei nicht kopiert wurde, und dies in einem späteren geplanten Robocopy-Lauf nachholen, kann die Datei möglicherweise erfolgreich kopiert werden. So kann der aktuelle Durchlauf schneller abgeschlossen werden, ohne sich durch zahlreiche Wiederholungsversuche in die Länge zu ziehen, die letztlich dazu führen, dass ein Großteil der Kopiervorgänge fehlschlägt, weil die Dateien nach Ablauf des Zeitlimits für Wiederholungsversuche weiterhin geöffnet sind.
/W:n Hiermit wird die Zeit angegeben, die Robocopy vor dem Versuch wartet, eine Datei zu kopieren, die bei einem vorherigen Versuch nicht erfolgreich kopiert wurde. n entspricht der Anzahl der zwischen Wiederholungsversuchen zu wartenden Sekunden. /W:n wird häufig in Verbindung mit /R:n verwendet.
/B Führt Robocopy in dem Modus aus, den auch eine Sicherungsanwendung verwenden würde. Diese Option ermöglicht Robocopy das Verschieben von Dateien, für die der aktuelle Benutzer keine Berechtigungen hat. Die Sicherungsoption ist abhängig von der Ausführung des Robocopy-Befehls in einer Konsole mit Administratorrechten oder einem PowerShell-Fenster. Wenn Sie Robocopy für Azure Files verwenden, stellen Sie sicher, dass Sie die Azure-Dateifreigabe mit dem Zugriffsschlüssel des Speicherkontos statt einer Domänenidentität mounten. Andernfalls führen Sie die Fehlermeldungen möglicherweise nicht intuitiv zu einer Lösung des Problems.
/MIR (Quelle im Ziel spiegeln) Hiermit hat Robocopy die Möglichkeit, nur Deltas zwischen der Quelle und dem Ziel zu kopieren. Leere Unterverzeichnisse werden kopiert. Elemente (Dateien oder Ordner), die geändert wurden oder nicht im Ziel vorhanden sind, werden kopiert. Elemente, die im Ziel, aber nicht in der Quelle vorhanden sind, werden aus dem Ziel gelöscht. Wenn Sie diese Option verwenden, passen Sie die Quell- und Zielordnerstrukturen genau an. Übereinstimmung bedeutet, dass aus der richtigen Quelle und Ordnerebene in die entsprechende Ordnerebene im Ziel kopiert wird. Nur dann kann ein Kopiervorgang zum „Aufholen“ erfolgreich durchgeführt werden. Wenn die Quelle und das Ziel nicht übereinstimmen, können mithilfe von /MIR umfassende Lösch- und wiederholte Kopiervorgänge durchgeführt werden.
/IT Sorgt dafür, dass die Genauigkeit in bestimmten Spiegelungsszenarien beibehalten wird.
Wenn beispielsweise bei einer Datei zwischen zwei Robocopy-Ausführungen eine ACL-Änderung und ein Attributupdate durchgeführt werden, wird diese als „ausgeblendet“ gekennzeichnet. Ohne /IT bemerkt Robocopy die ACL-Änderung möglicherweise nicht und führt daher auch keine Übertragung an den Zielspeicherort aus.
/COPY:[copyflags] Die Originaltreue der Dateikopie. Standardwert: /COPY:DAT. Kopierflags: D = Daten, A = Attribute, T = Zeitstempel, S = Sicherheit = NTFS-ACLs, O = Besitzerinformationen, U = Überwachungsinformationen. Überwachungsinformationen können nicht in einer Azure-Dateifreigabe gespeichert werden.
/DCOPY:[copyflags] Originaltreue für die Kopie von Verzeichnissen. Standardwert: /DCOPY:DA. Kopierflags: D = Daten, A = Attribute, T = Zeitstempel.
/NP Hiermit wird angegeben, dass der Kopierfortschritt für alle Dateien und Ordner nicht angezeigt wird. Das Anzeigen des Fortschritts reduziert die Kopierleistung erheblich.
/NFL Gibt an, dass Dateinamen nicht protokolliert werden. Hiermit wird die Kopierleistung verbessert.
/NDL Gibt an, dass Verzeichnisnamen nicht protokolliert werden. Hiermit wird die Kopierleistung verbessert.
/XD Gibt die auszuschließenden Verzeichnisse an. Wenn Sie Robocopy im Stammverzeichnis eines Volumes ausführen, erwägen Sie den Ausschluss des ausgeblendeten Ordners System Volume Information. Bei bestimmungsgemäßer Verwendung sind alle darin enthaltenen Informationen für genau diesen Datenträger auf genau diesem System spezifisch und können bei Bedarf wiederhergestellt werden. Das Kopieren dieser Informationen ist in der Cloud oder wenn die Daten jemals auf ein anderes Windows-Volume zurückkopiert werden, nicht hilfreich. Diese Inhalte zurückzulassen bedeutet kein Datenverlust.
/UNILOG:<file name> Hiermit wird der Status als Unicode in die Protokolldatei geschrieben. (Überschreibt das vorhandene Protokoll.)
/L Nur für einen Testlauf
Dateien sollen nur aufgelistet werden. Sie werden nicht kopiert, nicht gelöscht und nicht mit einem Zeitstempel versehen. Wird häufig mit /TEE für die Konsolenausgabe verwendet. Flags aus dem Beispielskript, z. B. /NP, /NFL und /NDL, müssen möglicherweise entfernt werden, um ordnungsgemäß dokumentierte Testergebnisse zu erzielen.
/Z Vorsicht:
Kopiert Dateien im Neustartmodus. Diese Option wird nur in einer instabilen Netzwerkumgebung empfohlen. Sie reduziert die Kopierleistung aufgrund der zusätzlichen Protokollierung erheblich.
/ZB Vorsicht:
Verwendet den Neustartmodus. Wenn der Zugriff verweigert wird, wird der Sicherungsmodus verwendet. Diese Option reduziert die Kopierleistung aufgrund der Prüfpunkte erheblich.

Wichtig

Wenn möglich, verwenden Sie Windows Server 2022 oder neuer. Wenn Sie Windows Server 2019 verwenden, stellen Sie sicher, dass das neueste Patch-Level oder zumindest das Betriebssystem-Update KB5005103 installiert ist. Dieses Update enthält wichtige Korrekturen für bestimmte Robocopy-Szenarien.

Tipp

Lesen Sie sich den Abschnitt zur Problembehandlung durch, wenn RoboCopy Ihre Produktionsumgebung beeinträchtigt, viele Fehler meldet oder nicht so schnell wie erwartet ausgeführt wird.

Benutzerübernahme

Wenn Sie den RoboCopy-Befehl zum ersten Mal ausführen, greifen Ihre Benutzer und Anwendungen weiterhin auf Dateien auf dem NAS zu und ändern sie möglicherweise. Es kann vorkommen, dass RoboCopy ein Verzeichnis verarbeitet und mit dem nächsten fortfährt und dann ein Benutzer am Quellspeicherort (NAS) eine Datei hinzufügt, ändert oder löscht. Diese Datei wird dann während dieser aktuellen RoboCopy-Ausführung nicht verarbeitet. Dies ist das erwartete Verhalten.

Bei der ersten Ausführung wird der Großteil der geänderten Daten auf Ihre Azure-Dateifreigabe verschoben. Dieser erste Kopiervorgang kann eine Weile dauern. Weitere Informationen dazu, wie die Robocopy-Geschwindigkeit ggf. beeinträchtigt werden kann, finden Sie im Abschnitt zur Problembehandlung.

Nachdem der erste Durchlauf abgeschlossen ist, führe den Befehl erneut aus.

Beim zweiten Mal, wenn du RoboCopy für denselben Share ausführst, ist es schneller fertig, weil es nur Änderungen transportieren muss, die seit dem letzten Durchlauf passiert sind. Sie können wiederholte Aufträge für dieselbe Freigabe ausführen.

Wenn die Ausfallzeit für Sie akzeptabel ist, müssen Sie den Benutzerzugriff auf Ihre NAS-basierten Freigaben aufheben. Dazu können Sie jeden beliebigen Schritt ausführen, mit dem Benutzer daran gehindert werden, die Datei- und Ordnerstruktur sowie den Inhalt zu ändern. Ein Beispiel hierfür: Ihr DFS-Namespace verweist auf einen nicht vorhandenen Speicherort, oder Sie ändern die Stamm-ACLs auf der Freigabe.

Führen Sie einen letzten RoboCopy-Durchgang aus. Es erkennt alle Änderungen, die vielleicht übersehen wurden. Wie lange dieser letzte Schritt dauert, hängt von der Geschwindigkeit des RoboCopy-Scans ab. Sie können die Zeit (gleich der Ausfallzeit) schätzen, indem Sie messen, wie lange die vorherige Ausführung gedauert hat.

Erstellen Sie eine Freigabe für den Windows Server-Ordner, und passen Sie Ihre DFS-N-Bereitstellung ggf. so an, dass sie auf diese zeigt. Stellen Sie sicher, dass Sie die gleichen Berechtigungen auf Freigabeebene wie auf Ihrer NAS-SMB-Freigabe festlegen. Wenn Sie einen NAS hatten, der in eine Domäne eingebunden war, stimmen die Benutzer-SIDs automatisch überein, da die Benutzer in Active Directory vorhanden sind und Robocopy Dateien und Metadaten in voller Genauigkeit kopiert. Wenn Sie lokale Benutzer in Ihrem NAS verwendet haben, müssen Sie diese Benutzer als lokale Windows Server-Benutzer erstellen und die vorhandenen SIDs, die Robocopy auf Ihre Windows Server-Instanz verschoben hat, den SIDs der neuen lokalen Benutzer von Windows Server zuordnen.

Sie haben die Migration einer Freigabe oder Gruppe von Freigaben zu einem gemeinsamen Stamm oder Volume abgeschlossen.

Sie können einige dieser Kopiervorgänge parallel ausführen. Verarbeiten Sie den Umfang einer Azure-Dateifreigabe auf einmal.

Problembehandlung

Die Geschwindigkeit und Erfolgsrate eines RoboCopy-Durchlaufs hängen von mehreren Faktoren ab:

  • IOPS im Quell- und Zielspeicher
  • Verfügbare Netzwerkbandbreite zwischen Quelle und Ziel
  • Schnelle Verarbeitung von Dateien und Ordnern in einem Namespace
  • Anzahl von Änderungen zwischen Robocopy-Ausführungen
  • Größe und Anzahl der Dateien, die Sie kopieren müssen

IOPS- und Bandbreitenaspekte

In dieser Kategorie geht es um die Leistung des Quellspeichers, des Zielspeichers und des für die Verbindung verwendeten Netzwerks. Der maximal mögliche Durchsatz wird durch die langsamste dieser drei Komponenten bestimmt. Stellen Sie sicher, dass Ihre Netzwerkinfrastruktur so konfiguriert ist, dass optimale Übertragungsgeschwindigkeiten unterstützt werden und die bestmögliche Leistung erzielt wird.

Vorsicht

Schnellstmögliche Kopiervorgänge sind zwar oft wünschenswert, aber Sie sollten auch die Auslastung Ihres lokalen Netzwerks und der NAS-Appliance in Bezug auf andere – oft unternehmenskritische – Aufgaben berücksichtigen.

Unter Umständen sind schnellstmögliche Kopiervorgänge nicht wünschenswert, wenn das Risiko besteht, dass die verfügbaren Ressourcen von der Migration „monopolisiert“ werden.

  • Überlegen Sie sich, welche Zeiten für die Durchführung von Migrationen in Ihrer Umgebung am besten geeignet sind: tagsüber, außerhalb der Geschäftszeiten oder an Wochenenden.
  • Erwägen Sie auch, die QoS-Funktion (Quality of Service) für das Netzwerk auf einer Windows Server-Instanz zu nutzen, um die Robocopy-Geschwindigkeit zu drosseln.
  • Vermeiden Sie für die Migrationstools unnötigen Arbeitsaufwand.

Mit Robocopy können Verzögerungen zwischen Paketen eingefügt werden. Hierzu wird der Switch /IPG:n angegeben, bei dem n für den Abstand zwischen Robocopy-Paketen in Millisekunden steht. Die Nutzung dieses Switches kann helfen, eine Monopolisierung von Ressourcen sowohl auf I/O-beschränkten Geräten als auch auf überfüllten Netzwerkverbindungen zu vermeiden.

/IPG:n kann nicht verwendet werden, um eine präzise Netzwerk-Bandbreiteneinschränkung auf einen bestimmten MBit/s-Wert zu erreichen. Verwenden Sie stattdessen Netzwerk-QoS für Windows Server. Bei Robocopy wird für alle Netzwerkanforderungen ausschließlich das SMB-Protokoll verwendet. Die Verwendung von SMB ist der Grund dafür, warum der Netzwerkdurchsatz von Robocopy selbst nicht beeinflusst werden kann, es aber ggf. zu einer Verlangsamung bei der Nutzung kommt.

Ein ähnlicher Ansatz gilt für den IOPS-Wert von Network Attached Storage (NAS). Die Clustergröße auf dem NAS-Volume, die Paketgrößen und einige andere Faktoren wirken sich auf den IOPS-Wert aus. Die Nutzung von Verzögerungen zwischen Paketen ist häufig die einfachste Möglichkeit zum Steuern der Last für NAS. Teste mehrere Werte, zum Beispiel von etwa 20 Millisekunden (n=20) bis zu Vielfachen dieser Zahl. Nachdem du eine Verzögerung eingeführt hast, kannst du prüfen, ob deine anderen Apps jetzt wie erwartet funktionieren. Diese Optimierungsstrategie hilft Ihnen, die optimale RoboCopy-Geschwindigkeit in Ihrer Umgebung zu finden.

Verarbeitungsgeschwindigkeit

RoboCopy durchläuft den angegebenen Namespace und prüft jede Datei und jeden Ordner auf das Kopieren. Es bewertet jede Datei während einer Erstkopie und bei Nachholkopien. Zum Beispiel wiederholte Durchläufe von RoboCopy /MIR für dieselben Quell- und Zielspeicherorte. Diese wiederholten Durchläufe minimieren Ausfallzeiten für Nutzer und Apps und verbessern die Gesamterfolgsrate der migrierten Dateien.

Bandbreite gilt oft als der begrenzendste Faktor bei einer Migration, und das kann zutreffen. Die Möglichkeit zum Enumerieren eines Namespace kann aber dazu führen, dass sich die Gesamtkopierdauer für größere Namespaces mit kleineren Dateien noch weiter erhöht. Man bedenke, dass das Kopieren von 1 TiB kleiner Dateien deutlich länger dauert als das Kopieren von 1 TiB von wenigeren, aber größeren Dateien, vorausgesetzt, alle anderen Variablen bleiben gleich. Daher kann es zu einer langsamen Übertragung kommen, wenn Sie eine große Anzahl kleiner Dateien migrieren. Dieser Unterschied wird erwartet.

Die Ursache für diesen Unterschied ist die Verarbeitungsleistung, die für das Durchlaufen eines Namespace erforderlich ist. Robocopy unterstützt Multithreadkopien über den Parameter /MT:n, wobei n für die Anzahl der zu verwendenden Threads steht. Wenn Sie einen Computer speziell für Robocopy bereitstellen, sollten Sie also auf die Anzahl von Prozessorkernen und deren Beziehung zur jeweiligen Threadanzahl achten. Eine gängige Vorgehensweise ist die Nutzung von zwei Threads pro Kern. Die Anzahl von Kernen und Threads eines Computers stellt einen wichtigen Datenpunkt dar, der hilfreich beim Treffen der Entscheidung ist, welche Multithread-Werte (/MT:n) Sie angeben sollten. Berücksichtigen Sie auch, wie viele Robocopy-Aufträge Sie auf einem bestimmten Computer parallel ausführen möchten.

Mehr Threads kopieren das 1-TiB-Beispiel kleiner Dateien deutlich schneller als weniger Threads. Gleichzeitig könnte der zusätzliche Ressourcenaufwand für die 1 TiB größerer Dateien keinen proportionalen Nutzen bringen. Eine hohe Threadzahl versucht, gleichzeitig mehr der großen Dateien über das Netzwerk zu kopieren. Durch diese zusätzliche Netzwerkaktivität erhöht sich die Wahrscheinlichkeit, dass es zu Einschränkungen in Bezug auf den Durchsatz oder den Speicher-IOPS-Wert kommt.

Beim ersten Kopieren in ein leeres Ziel mithilfe von RoboCopy oder bei einem differenziellen Vorgang mit zahlreichen geänderten Dateien sind Sie wahrscheinlich durch Ihren Netzwerkdurchsatz limitiert. Beginnen Sie mit einer hohen Threadanzahl für eine erste Ausführung. Eine hohe Threadanzahl, die über die derzeit verfügbaren Threads auf dem Computer hinausgeht, hilft bei der Auslastung der verfügbaren Netzwerkbandbreite. Nachfolgende /MIR-Ausführungen werden progressiv durch die Verarbeitung von Elementen beeinflusst. Weniger Änderungen bei einem differenziellen Vorgang bedeuten weniger Datentransporte über das Netzwerk. Ihre Geschwindigkeit hängt nun weniger von der Übertragungsgeschwindigkeit über die Netzwerkverbindung und vielmehr von der Verarbeitungsgeschwindigkeit für Namespaceelemente ab. Stimmen Sie bei nachfolgenden Ausführungen den Threadanzahlwert auf die Prozessorkernanzahl und die Threadanzahl pro Kern ab. Berücksichtigen Sie, ob Kerne für andere Aufgaben reserviert werden müssen, die ein Produktionsserver möglicherweise hat.

Tipp

Faustregel: Die erste RoboCopy-Ausführung, bei der viele Daten über ein Netzwerk mit höherer Latenz verschoben werden, profitiert von einer Überbereitstellung bei der Anzahl der Threads (/MT:n). Bei nachfolgenden Ausführungen werden weniger Unterschiede kopiert, und es ist wahrscheinlicher, dass Sie vom eingeschränkten Netzwerkdurchsatz auf eingeschränkten Computeressourcen umschalten. Unter diesen Umständen ist es oft besser, die Anzahl der Threads für RoboCopy den tatsächlich auf dem Computer verfügbaren Threads anzupassen. Eine Überbereitstellung in diesem Szenario kann zu mehr Kontextverschiebungen im Prozessor führen, was Ihren Kopiervorgang möglicherweise verlangsamt.

Vermeiden von unnötigem Arbeitsaufwand

Vermeiden Sie es, in Ihrem Namespace umfangreiche Änderungen vorzunehmen. Beispiele hierfür sind das Verschieben von Dateien zwischen Verzeichnissen und das Ändern von Eigenschaften im großen Stil oder von Berechtigungen (NTFS-ACLs). Insbesondere ACL-Änderungen können starke Auswirkungen haben, weil diese häufig zu kaskadierenden Änderungen von Dateien führen, die sich in den untergeordneten Ordnern der Hierarchie befinden. Dies kann die folgenden Konsequenzen haben:

  • Längere Ausführungsdauer für Robocopy-Aufträge, weil jede Datei und jeder Ordner, die bzw. der von einer ACL-Änderung betroffen ist, aktualisiert werden muss
  • Wiederverwendete Daten, die vorher verschoben wurden, müssen ggf. erneut kopiert werden Zum Beispiel müssen mehr Daten kopiert werden, wenn sich die Ordnerstrukturen ändern, nachdem Dateien bereits kopiert wurden. Bei einem Robocopy-Auftrag kann eine Namespaceänderung nicht „wiedergegeben“ werden. Die Dateien, die zuvor in die alte Ordnerstruktur übertragen wurden, müssen beim nächsten Auftrag bereinigt und in die neue Ordnerstruktur hochgeladen werden.

Ein weiterer wichtiger Aspekt ist die effektive Nutzung des Robocopy-Tools. Mit dem empfohlenen RoboCopy-Skript erstellen und speichern Sie eine Logdatei für Fehler. Kopierfehler können auftreten, und das ist normal. Diese Fehler machen es häufig erforderlich, ein Kopiertool wie Robocopy mehrfach auszuführen. Zum Beispiel ein erster Durchlauf, etwa von einem NAS zu Data Box oder von einem Server zu einer Azure-Dateifreigabe, und ein oder mehrere zusätzliche Durchläufe mit dem Schalter /MIR, um Dateien, die nicht kopiert wurden, zu erfassen und den Kopiervorgang erneut zu versuchen.

Seien Sie darauf vorbereitet, RoboCopy für einen bestimmten Namespacebereich mehrfach auszuführen. Aufeinanderfolgende Durchläufe werden schneller abgeschlossen, da sie weniger zu kopieren haben, werden jedoch zunehmend durch die Geschwindigkeit der Namespace-Verarbeitung begrenzt. Bei mehreren Ausführungen können Sie jeden Durchlauf beschleunigen, indem Sie festlegen, dass Robocopy nicht mit unnötig hohem Aufwand versuchen soll, bei einem Durchlauf alles zu kopieren. Die folgenden Robocopy-Switches können einen signifikanten Unterschied ausmachen:

  • /R:n n = steht hierbei dafür, wie oft Sie versuchen, eine nicht kopierte Datei erneut zu kopieren.
  • /W:n n = gibt an, wie viele Sekunden lang zwischen den Wiederholungen gewartet werden soll.

/R:5 /W:5 ist ein gängige Einstellung, die Sie je nach Ihren Anforderungen anpassen können. Bei dieser Beispieleinstellung werden für eine nicht kopierte Datei fünf Wiederholungsversuche durchgeführt, und zwischen den Wiederholungen wird jeweils fünf Sekunden gewartet. Falls die Datei immer noch nicht kopiert werden kann, wird dies beim nächsten Robocopy-Auftrag erneut versucht. Häufig können Dateien, bei denen der Kopiervorgang fehlgeschlagen ist, weil sie verwendet werden oder ein Timeoutproblem besteht, auf diese Weise schließlich erfolgreich kopiert werden.

Siehe auch