Daten migrieren

Auf dieser Seite wird beschrieben, wie Sie eine Datenmigration ausführen, bei der Dateien vom lokalen Computer in einen Persistent Volume Claim (PVC) im Zielcluster kopiert werden.

Dieser Schritt ist optional.

Datenmigrationskonfiguration anpassen

Wenn Sie eine Analyse abgeschlossen haben, erstellt die Migrate to Containers-Befehlszeile möglicherweise eine Datenkonfigurationsdatei mit dem Namen dataConfig.yaml im angegebenen Analyseausgabeverzeichnis. Das bedeutet, dass Sie zur Fertigstellung der Migration eine Datenmigration durchführen müssen.

Sie können diese Datenkonfigurationsdatei auch manuell für die Datenmigration erstellen und Informationen über Ihr Zieldatenvolumen oder Ihre Datenanforderung angeben.

Das folgende Beispiel zeigt eine Datenkonfigurationsdatei:

volumes:
- deploymentPvcName: my-pvc1
  existingPvc:
    name: my-pvc1
  folders:
  - /bin
  - /opt
- deploymentPvcName: my-pvc2
  newPvc:
   spec:
    accessModes:
    - ReadWriteOnce
    resources:
      requests:
        storage: 10G
  folders:
  - /bin
  - /opt

Dabei gilt:

  • deploymentPvcName: Der PVC-Name, der von Migrate to Containers in Ihrer bereitgestellten Arbeitslast für den Zugriff auf dieses Volume verwendet werden soll.

  • existingPvc:

    • name: Name eines vorhandenen Anspruchs auf nichtflüchtiges Volume (PVC). Legen Sie fest, ob Sie Datenvolumen in eine bestehende PVC migrieren möchten.
  • newPvc: Legen Sie fest, ob Sie Ihre Datenvolumen auf eine neue PVC migrieren möchten. Sie können Ihre PVC mit der PVC-Standardsyntax definieren.

    Weitere Informationen zur Kubernetes-PVC-Spezifikation finden Sie in der Kubernetes-Dokumentation.

  • folders ist der Ordner, den Sie von der VM zu PVC migrieren möchten. Diese Ordner werden im selben Pfad in den PVC kopiert.

Sie können Ihre Datenkonfigurationsdatei für verschiedene Anwendungsfälle für die Datenmigration bearbeiten, darunter:

Vorhandenen PVC verwenden

Wenn Sie den Speicher bereits für die migrierten Daten zugewiesen haben und einen PersistentVolumeClaim (PVC) zum Speichern Ihrer Daten haben, können Sie die Daten mit einem vorhandenen PVC migrieren.

Definieren Sie in der Datenkonfigurationsdatei dataConfig.yaml ein vorhandenes PVC. Übergeben Sie dazu das vorhandene Volume im Feld existingPvc. In diesem Fall würde Ihre Datenkonfigurationsdatei so aussehen:

volumes:
- deploymentPvcName: my-pvc
  existingPvc:
    name: my-pvc
    subpath: /subpath
  folders:
  - /bin
  - /opt

Im vorherigen Beispiel kann der Eintrag existingPvc einen optionalen subPath enthalten, um Daten wie unten gezeigt zum Subpfad des PVC zu migrieren.

Neue Datenvolumen auf den migrierten VMs erstellen

Wenn Sie keinen Speicher vorab zugewiesen haben und Ihr Speicher während des Migrationsprozesses erstellt werden soll, können Sie ein leeres existingPvc-Feld übergeben und den Speicher angeben, der im Feld newPvc erstellt werden soll:

volumes:
- deploymentPvcName: my-pvc
  newPvc:
    spec:
      accessModes:
      - ReadWriteOnce
      resources:
        requests:
          storage: 10G
  folders:
  - /bin
  - /opt

Mehrere PVCs mit mehreren Dateipfaden migrieren

Sie können den Satz von Verzeichnissen unter dem Listenfeld folders jedes Eintrags in der Liste volume für jeden in Ihrer Datenkonfigurationsdatei dataConfig.yaml aufgeführten PVC angeben:

volumes:
- deploymentPvcName: my-pvc1
  existingPvc:
    name: my-pvc1
  folders:
  - /bin
  - /opt
- deploymentPvcName: my-pvc2
  newPvc:
   spec:
    accessModes:
    - ReadWriteOnce
    resources:
     requests:
       storage: 10G
  folders:
  - /bin
  - /opt

Die Pfade, die Sie unter folders in der Daten-Konfigurationsdatei auflisten, werden in dieselben Pfade in den Ziel-PVCs kopiert.

Datenmigration ausführen

Nachdem Sie die Datenkonfigurationsdatei dataConfig.yaml angepasst haben, führen Sie den folgenden Befehl aus, um die Datenvolumes in einen PVC im Zielcluster zu migrieren:

./m2c migrate-data  -i ANALYSIS_OUTPUT_PATH -n NAMESPACE

Ersetzen Sie Folgendes:

  • ANALYSIS_OUTPUT_PATH: der Pfad, unter dem Sie die Analyseausgabe gespeichert haben, die die Datei dataConfig.yaml enthält.
  • NAMESPACE ist der Ziel-Kubernetes-Cluster-Namespace des bereitgestellten Netzwerks.

Nächste Schritte