Migrate to Containers installieren

In diesem Thema wird beschrieben, wie Sie Migrate to Containers auf einem Verarbeitungscluster installieren.

Ein Verarbeitungscluster ist ein Google Kubernetes Engine (GKE)- oder GKE Enterprise-Cluster mit installierter Migrate to Containers-Komponenten, mit dem Sie VMs migrieren, vor deren Bereitstellung in Ihrem Produktionscluster.

Mithilfe der Schritte in diesem Thema verwenden Sie das Befehlszeilentool migctl oder die Google Cloud Console, um die erforderlichen Migrate to Containers-Komponenten in einem bereits erstellten GKE-Cluster zu installieren.

Nachdem Sie Ihre migrierten VMs als Images in einem Produktionscluster bereitgestellt haben, können Sie den Verarbeitungscluster löschen, vorausgesetzt, der Verarbeitungscluster ist für die Ausführung neuer Migrationen nicht mehr erforderlich.

Informationen zu migctl

Neben der Unterstützung in der Google Cloud Console enthält Migrate to Containers das migctl-Befehlszeilentool, mit dem Sie alle Schritte einer Migration ausführen können:

  • Wenn Sie in Google Cloud einen Verarbeitungscluster für Google Kubernetes Engine (GKE) oder GKE Enterprise verwenden, führen Sie in Cloud Shell migctl aus.

  • Wenn Sie einen Google Distributed Cloud Virtual for Bare Metal-Verarbeitungscluster verwenden, können Sie migctl auf Ihrer Administrator-Workstation installieren und ausführen.

Informationen zum Herunterladen von migctl finden Sie unter Downloads zu Migrate to Containers.

Hinweise

Migrate to Containers installieren

migctl in Google Cloud

Installieren Sie Migrate to Containers mit migctl-Befehlen und konfigurieren es nach den Grundprinzipien einer Migration.

  1. Erstellen Sie ein Dienstkonto für den Zugriff auf die Container Registry und Cloud Storage. Laden Sie außerdem die JSON-Schlüsseldatei herunter, wie unter Dienstkonto konfigurieren beschrieben.

  2. Rufen Sie in der Google Cloud Console das GKE-Menü auf.

    Zum GKE-Menü

  3. Suchen Sie in der Liste der Cluster den Cluster, den Sie als Verarbeitungscluster verwenden möchten, und klicken Sie auf die zugehörige Schaltfläche Verbinden.

  4. Klicken Sie unter Befehlszeilenzugriff im Dialogfeld Mit dem Cluster verbinden auf In Cloud Shell ausführen, um den Verbindungsbefehl in Cloud Shell auszuführen.

    gcloud container clusters get-credentials my-cluster --zone us-central1-c --project my-project
    
  5. Richten Sie die Migrate to Containers-Komponenten auf Ihrem Verarbeitungscluster ein. Führen Sie dazu in Cloud Shell den Befehl migctl setup install aus und geben Sie das Dienstkonto für die Installation an:

    migctl setup install --json-key=m4a-install.json
    
  6. Prüfen Sie die Installation von Migrate to Containers mit dem Befehl migctl doctor.

    Vor Abschluss der Installation wird möglicherweise eine Meldung wie die folgende angezeigt. Warten Sie in diesem Fall einige Minuten, bis die Installation abgeschlossen ist, bevor Sie migctl doctor ausführen.

    migctl doctor
    [!] Deployment
        Validation checks failed.
    

    In der folgenden Beispielausgabe zeigt das Häkchen an, dass Migrate to Containers erfolgreich bereitgestellt wurde und die erforderlichen Daten-Repositories konfiguriert wurden.

    migctl doctor
    [✓] Deployment
    [✓] Docker registry
    [✓] Artifacts repo
    [!] Source Status
    

    Sehen Sie Daten-Repositories definieren, um zu sehen ob ein Fehler im Zusammenhang mit der Docker-Registry oder dem Artefakte-Repository gibt.

migctl in Google Distributed Cloud Virtual for Bare Metal

  1. Legen Sie Ihre standardmäßige Projekt-ID fest:
    gcloud config set project project-id
  2. Stellen Sie migctl auf Ihrer Administrator-Workstation bereit:
    wget https://modernize-release.storage.googleapis.com/v1.15.0/linux/amd64/migctl
    sudo cp migctl /usr/local/bin/
    sudo chmod +x /usr/local/bin/migctl
    . <(migctl completion bash)
  3. Richten Sie die Migrate to Containers-Komponenten auf Ihrem Verarbeitungscluster ein. Führen Sie dazu den Befehl migctl setup install aus:
    migctl setup install --anthos-bm --gcp-project myproject --gcp-region us-central1 --json-key m4a-install.json
    Wenn alle Argumente einschließlich --gcp-project, --gcp-region und --json-key angegeben sind, erstellt migctl eine standardmäßige Docker Registry und Artefakt-Repositories in Container Registry bzw. Cloud Storage. Dies bedeutet, dass die Migrationsbilder und Artefakte in Google Cloud hochgeladen werden. Sie können auch andere Docker-Registries konfigurieren und als Standard für die Migration festlegen oder für eine bestimmte Migration festlegen.
  4. Prüfen Sie die Installation von Migrate to Containers mit dem Befehl migctl doctor. Vor Abschluss der Installation wird möglicherweise eine Meldung wie die folgende angezeigt. Warten Sie in diesem Fall einige Minuten, bis die Installation abgeschlossen ist, bevor Sie migctl doctor ausführen.
    migctl doctor
      [!] Deployment
          Validation checks failed.
    In der folgenden Beispielausgabe gibt das Häkchen an, dass Migrate to Containers erfolgreich bereitgestellt wurde, Sie die erforderlichen Daten-Repositories jedoch noch nicht konfiguriert haben:
    migctl doctor
      [✓] Deployment
      [!] Docker registry
      [!] Artifacts repo
      [!] Source Status
  5. Konfigurieren Sie die für den Cluster erforderlichen Daten-Repositories, wie unter Daten-Repositories definieren beschrieben.
  6. Konfigurieren Sie bei Bedarf einen HTTPS-Proxy für den ausgehenden Internetzugriff wie unter HTTPS-Proxy konfigurieren beschrieben.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Migrate to Containers auf.

    Zur Seite "Migrate to Containers"

  2. Klicken Sie auf den Tab Verarbeitungscluster, um eine Tabelle mit den verfügbaren Clustern aufzurufen.

  3. Klicken Sie auf Verarbeitungscluster hinzufügen.

  4. Wählen Sie den zu migrierenden Arbeitslasttyp aus: Entweder Linux oder Windows. Wählen Sie dann Weiter aus.

  5. Wählen Sie den Cluster aus der Drop-down-Liste aus und klicken Sie auf Weiter.

  6. Wählen Sie den Bucket für das Artefakt-Repository aus.

    Migrate to Containers verwendet standardmäßig Cloud Storage mit dem angegebenen Bucket-Namen. Optional können Sie den Bucket-Namen hier festlegen. Lesen Sie die Anforderungen, die unter Daten-Repositories definieren beschrieben werden.

  7. Wählen Sie den Projektnamen des Image-Repository aus.

    Standardmäßig verwendet Migrate to Containers das aktuelle Projekt für Container Registry. Optional können Sie den Projektnamen hier ändern. Lesen Sie die Anforderungen, die unter Daten-Repositories definieren beschrieben werden.

  8. Klicken Sie auf Weiter.

  9. Geben Sie das Dienstkonto des Artefakt-Repository an, das für den Zugriff auf Cloud Storage verwendet wird. Sie können entweder ein neues Dienstkonto erstellen oder ein vorhandenes auswählen. Weitere Informationen finden Sie unter Dienstkonten konfigurieren.

  10. Klicken Sie auf Weiter, um Ihre Einstellungen zu prüfen, und dann auf Bereitstellen, um Migrate to Containers auf Ihrem Cluster zu installieren.

  11. Nach Abschluss der Installation wird auf dem Tab Verarbeitungscluster der Clustername mit dem Status Bereit angezeigt.

Installationsoptionen

Sie können Cluster in vielen Größen und Konfigurationen erstellen. Beispiel: Sie haben einen Cluster mit mehreren Knotenpools. Anschließend verwenden Sie einen Knotenpool für die Verarbeitung von Migrationen, einen Knotenpool für die Ausführung von Arbeitslasten und einen weiteren Knotenpool für andere Vorgänge.

Standardmäßig ist Migrate to Containers auf allen Clusterknoten installiert. Wenn Sie steuern möchten, welche Knoten von Migrate to Containers verwendet werden, können Sie die Optionen --node-selectors und --tolerations mit dem Befehl migctl setup install verwenden:

  • --node-selectors LABEL1=VALUE1,LABEL2=VALUE2,...

    Gibt eine durch Kommas getrennte Liste von Label/Wert-Paaren an, die die von Migrate to Containers verwendeten Knoten bestimmen. Weitere Informationen zur Verwendung von Labels finden Sie unter Labels erstellen und verwalten.

  • --tolerations KEY1=VALUE1:EFFECT1,KEY2=VALUE2:EFFECT2,...

    Gibt eine durch Kommas getrennte Liste von Schlüssel/Wert-Paaren an, die einer Wirkung zugeordnet sind. Zusammen wird dann eine Knotenmarkierung angegeben. Eine Toleranz weist darauf hin, dass die Pods auf der durch den Schlüsselwert und die Wirkung angegebenen Knotenmarkierung ausgeführt werden können.

    Wenn Sie die Wirkung (EFFECT) und/oder den Wert (VALUE) weglassen, stimmen die Toleranzen mit Markierungen mit Schlüssel/Wert (KEY,VALUE) (für jede EFFECT-Angabe) und/oder Schlüssel (KEY) (für jede VALUE:EFFECT-Angabe) überein.

    Weitere Informationen zu Knotenmarkierungen finden Sie unter Planung mit Knotenmarkierungen steuern.

Nächste Schritte