Daten zwischen Buckets verschieben
Verschieben Sie Daten zwischen IBM Cloud® Object Storage-Buckets in derselben oder in verschiedenen Regionen, indem Sie rclone verwenden, um Objekte mit parallelen Multipart-Uploads zu synchronisieren.
Irgendwann wird es notwendig, Ihre Daten in eine andere IBM Cloud® Object Storage-Region zu verschieben oder dort zu sichern. Eine Möglichkeit, Daten zwischen Objektspeicherregionen zu verschieben oder zu replizieren, ist die Verwendung eines
Sync- oder Clone-Tools, wie beispielsweise des Open-Source-Befehlszeilenprogramms rclone. Dieses Dienstprogramm synchronisiert eine Dateiverzeichnisstruktur
zwischen zwei Standorten und kann auch für Cloudobjektspeicher verwendet werden. Wenn Daten in Object Storage rclone schreibt, nutzt es die COS/S3-API, um große Objekte zu segmentieren, und lädt die Teile parallel hoch, entsprechend
der Größe und den Schwellenwerten, die als Konfigurationsparameter festgelegt wurden.
Dieses Handbuch enthält Anweisungen zum Kopieren von Daten aus einem IBM Cloud Object Storage-Bucket in einen anderen Object Storage-Bucket innerhalb derselben Region oder in einen zweiten Object Storage-Bucket in einer anderen Object Storage-Region.
Diese Schritte müssen für alle Daten wiederholt werden, die aus den einzelnen Buckets kopiert werden sollen. Nach der Datenmigration können Sie die Integrität der Übertragung überprüfen, indem Sie verwenden rclone check, wodurch
eine Liste aller Objekte erstellt wird, die entweder hinsichtlich der Dateigröße oder der Prüfsumme nicht übereinstimmen. Darüber hinaus können Sie Buckets synchronisieren, indem Sie regelmäßig rclone sync zwischen den verfügbaren
Quellen und den ausgewählten Zielen ausführen.
IBM Cloud Object Storage-Zielbucket erstellen
Sie können die vorhandene Instanz von IBM Cloud Object Storage verwenden oder eine neue Instanz erstellen. Wenn Sie die vorhandene Instanz verwenden möchten, fahren Sie mit Schritt 2 fort.
- Erstellen Sie eine Instanz von IBM Cloud Object Storage aus dem Katalog.
- Erstellen Sie alle Buckets, die Sie zum Speichern der übertragenen Daten benötigen. Lesen Sie die Anleitung zur Einführung durch, um sich mit den zentralen Konzepten wie Endpunkten und Speicherklassen vertraut zu machen.
- Das Dienstprogramm
rclonekopiert keine Bucket-Konfigurationen oder Objekt-Metadaten. Wenn Sie also eine der Object Storage-Funktionen wie Ablauf, Archivierung, Schlüsselschutz usw. nutzen, stellen Sie sicher, dass Sie diese vor der Migration Ihrer Daten entsprechend konfigurieren. Um zu erfahren, welche Funktionen an Ihrem Object Storage-Standort unterstützt werden, sehen Sie bitte in der Funktionsübersicht nach.
Dokumente zur Featurekonfiguration und zu Zugriffsrichtlinien können über die folgenden IBM Cloud-Portalseiten angezeigt werden:
Rechenressource zum Ausführen des Migrationstools konfigurieren
- Wählen Sie einen Linux™- /macOS™- oder BSD™-Rechner oder einen Bare-Metal- oder virtuellen Server der IBM Cloud-Infrastruktur, der sich möglichst nahe an Ihren Daten befindet. Die Auswahl eines Rechenzentrums in derselben Region wie der Ziel-Bucket
ist in der Regel die beste Wahl (wenn Sie beispielsweise Daten von
mel01nach verschiebenau-syd, verwenden Sie eine VM oder Bare-Metal-Lösung inau-syd). Die folgende Serverkonfiguration wird empfohlen: 32 GB RAM, Prozessor mit 2 - 4 Cores und eine Geschwindigkeit von 1000 MB/s in einem privaten Netz. - Wenn Sie die Migration auf einem Bare-Metal- oder virtuellen Server der IBM Cloud-Infrastruktur durchführen, verwenden Sie die privaten Object Storage-Endpunkte, um Gebühren für den ausgehenden Datenverkehr zu vermeiden.
- Andernfalls verwenden Sie die öffentlichen oder direkten Object Storage-Endpunkte.
- Installieren Sie das Programm entweder
rcloneüber einen Paketmanager oder als vorkompilierte Binärdatei.
curl https://rclone.org/install.sh | sudo bash
Konfigurieren Sie die Quelle rclone für Object Storage
Erstellen Sie Profile für die Quelle und das Ziel der Migration in rclone.
Beziehen Sie bei Bedarf die Anmeldedaten für Object Storage
- Wählen Sie Ihre Object Storage-Instanz in der IBM Cloud-Konsole aus.
- Klicken Sie im Navigationsfenster auf die Serviceberechtigungsnachweise.
- Klicken Sie auf Neuer Berechtigungsnachweis, um Berechtigungsnachweisinformationen zu generieren.
- Wählen Sie Erweitert für die Optionen aus.
- Wählen Sie Ein für die HMAC-Berechtigungsnachweise aus.
- Klicken Sie auf Hinzufügen.
- Zeigen Sie den erstellten Berechtigungsnachweis an und kopieren Sie den JSON-Inhalt.
Endpunkt für Object Storage abrufen
- Klicken Sie im Navigationsfenster auf Buckets.
- Klicken Sie auf das Bucket für das Migrationsziel.
- Klicken Sie im Navigationsfenster auf Konfiguration.
- Blättern Sie nach unten zum Abschnitt Endpunkte und wählen Sie den Endpunkt auf Basis des Standorts aus, an dem das Migrationstool ausgeführt wird.
- Erstellen Sie das Ziel Object Storage, indem Sie den folgenden Text kopieren und einfügen
rclone.conf.
[COS_SOURCE]
type = s3
provider = IBMCOS
env_auth = false
access_key_id =
secret_access_key =
endpoint =
Verwenden Sie [COS_DESTINATION] als Namen des Profils, das Sie für die Konfiguration des Ziels erstellen müssen. Wiederholen Sie die oben beschriebenen Schritte.
Füllen Sie anhand der Berechtigungsnachweise und des gewünschten Endpunkts die folgenden Felder aus:
access_key_id = <access_key_id>
secret_access_key = <secret_access_key>
endpoint = <bucket endpoint>
Konfigurieren Sie die Daten rclone für das Ziel Object Storage
Wiederholen Sie die vorherigen Schritte für die Zielbuckets.
Korrekte Konfiguration von Quelle und Ziel verifizieren
- Listen Sie die der Quelle zugeordneten Buckets auf, um die korrekte Konfiguration von
rclonezu verifizieren.
rclone lsd COS_SOURCE:
- Listen Sie die dem Ziel zugeordneten Buckets auf, um die korrekte Konfiguration von
rclonezu verifizieren.
rclone lsd COS_DESTINATION:
Wenn Sie für Quelle und Ziel dieselbe Object Storage-Instanz verwenden, stimmen die Bucket-Listen überein.
rclone ausführen
- Testen Sie Ihre Konfiguration mit einem Trockenlauf (bei dem keine Daten kopiert werden) von
rclone, um die Kopie der Objekte in Ihrem Quellbereich (z. B.source-test) in den Zielbereich (z. B.destination-test) zu testen, wobeisource-testunddestination-testdie jeweiligen Namen der Quell- und Zielbereiche sind.
rclone --dry-run copy COS_SOURCE:source-test COS_DESTINATION:destination-test
- Stellen Sie sicher, dass die Dateien, die Sie migrieren möchten, in der Befehlsausgabe angezeigt werden. Wenn das Ergebnis den Erwartungen entspricht, entfernen Sie das Flag
--dry-runund fügen Sie optional das Flag-vund/oder das Flag-Phinzu, um die Daten zu kopieren und den Verarbeitungsfortschritt zu verfolgen. Wenn Sie das optionale Flag--checksumverwenden, wird verhindert, dass die Dateien aktualisiert werden, die an beiden Positionen über denselben MD5-Hashwert und dieselbe Objektgröße verfügen.
rclone -v -P copy --checksum COS_SOURCE:source-test COS_DESTINATION:destination-test
Sie müssen versuchen, die Werte für CPU, Hauptspeicher und Netz auf der Maschine zu maximieren, auf der rclone ausgeführt wird, um die Übertragungszeit zu optimieren.
Bei der Optimierung von rclone sind weitere Parameter zu berücksichtigen. Unterschiedliche Kombinationen dieser Werte wirken sich auf die CPU-Auslastung, den Speicherbedarf und die Übertragungszeiten für die Objekte in Ihrem Bucket
aus.
| Flag | Typ | Beschreibung |
|---|---|---|
--checkers |
int |
Anzahl der parallel ausgeführten Prüfprogramme (Standardwert 8). Hierbei handelt es sich um die Anzahl der aktiven Threads für den Vergleich der Kontrollsummen. Es wird empfohlen, diesen Wert auf mindestens 64 zu erhöhen. |
--transfers |
int |
Hierbei handelt es sich um die Anzahl der Objekte, die parallel übertragen werden können (Standardwert 4). Wir empfehlen, diesen Wert auf 64, 128 oder höher zu erhöhen, wenn Sie viele kleine Dateien übertragen. |
--multi-thread-streams |
int |
Große Dateien (> 250 MB) in mehreren Segmenten parallel hochladen. Dadurch wird die Downloadzeit großer Dateien verkürzt (Standardwert 4). |
--s3-upload-concurrency |
int |
Anzahl der Segmente großer Dateien (> 200 MB), die parallel hochgeladen werden sollen. Dadurch wird die Upload-Zeit für große Dateien verkürzt (Standardwert 4). |
{: caption="rclone-Optionen" caption-side="top"} |
Im Verlauf einer Migration mit rclone copy werden die Quellendaten nur kopiert, nicht jedoch gelöscht.
Der Kopierprozess muss für alle anderen Quellenbuckets wiederholt werden, für die eine Migration, eine Kopie oder die Erstellung einer Sicherungskopie erforderlich ist.