Virtuelle Appliances importieren

Eine virtuelle Appliance ist ein Paket, das Speicherabbilder und die Hardwarekonfiguration für eine virtuelle Maschine (VM) enthält.

Ein weit verbreitetes und beliebtes Format für virtuelle Appliances ist das OVF-Format. Wenn Sie virtuelle Appliances im OVF-Format packen, generieren Sie ein OVF-Paket. Ein OVF-Paket ist ein Ordner, der eine .ovf-Deskriptordatei und eine Sammlung anderer Ressourcen wie Laufwerke enthält. Wird ein OVF-Paket in einer einzelnen Datei archiviert, wird es als OVA-Datei bezeichnet.

Sie können VMs im OVF-Format in Compute Engine importieren, unabhängig davon, ob sie in einem OVF-Paket oder in einer einzelnen OVA-Datei vorliegen. Lesen Sie Importmethode auswählen, um zu prüfen, ob die Verwendung einer virtuellen Appliance für Ihren Anwendungsfall die beste Wahl ist.

Wenn Sie eine virtuelle Appliance importieren, werden beim Import die in der Deskriptordatei gespeicherten Informationen verwendet, um eine VM-Instanz in Compute Engine zu erstellen und zu starten.

Hinweise

Cloud Build API aufrufen

Das Tool zum Importieren virtueller Appliances verwendet Cloud Build. Aktivieren Sie den Cloud Build-Dienst in Ihrem Projekt und gewähren Sie dem Cloud Build-Dienstkonto Berechtigungen zum Erstellen und Verwalten von Rechenressourcen.

Konsole

  1. Aktivieren Sie die Cloud Build API

    Cloud Build API aufrufen

    Wenn Sie die Cloud Build API über die Console aktivieren, gewährt Compute Engine dem Cloud Build-Dienstkonto die folgenden Rollen, damit der Cloud Build-Dienst Instanzen in Compute Engine importieren kann:

    • roles/iam.serviceAccountTokenCreator
    • roles/compute.admin
    • roles/iam.serviceAccountUser

    Das Importtool verwendet auch das Compute Engine-Standarddienstkonto. Das Compute Engine-Dienstkonto hat standardmäßig die Rolle eines Cloud IAM-Projektbearbeiters. Wenn diese Rolle entfernt wird, kann der Importvorgang fehlschlagen. Informationen zum Hinzufügen der Rolle zum Dienstkonto finden Sie unter Zugriff gewähren. Weitere Informationen zum Compute Engine-Standarddienstkonto finden Sie unter Compute Engine-Standarddienstkonto.

gcloud

Führen Sie die folgenden Schritte aus, um den Cloud Build-Dienst mit dem gcloud-Befehlszeilentool einzurichten:

  1. Aktivieren Sie Cloud Build.

    gcloud services enable cloudbuild.googleapis.com

    Das Importtool verwendet auch das Compute Engine-Standarddienstkonto. Das Compute Engine-Dienstkonto hat standardmäßig die Rolle eines Cloud IAM-Projektbearbeiters. Wenn diese Rolle entfernt wird, kann der Importvorgang fehlschlagen. Informationen zum Hinzufügen der Rolle zum Dienstkonto finden Sie unter Zugriff gewähren. Weitere Informationen zum Compute Engine-Standarddienstkonto finden Sie unter Compute Engine-Standarddienstkonto.

  2. Fügen Sie dem Dienstkonto für die Cloud Build API die Rolle compute.admin hinzu.

    gcloud projects add-iam-policy-binding project-id \
       --member serviceAccount:project-num@cloudbuild.gserviceaccount.com \
       --role roles/compute.admin
    
  3. Fügen Sie dem Dienstkonto für die Cloud Build API die Rolle iam.serviceAccountUser hinzu.

    gcloud projects add-iam-policy-binding project-id \
       --member serviceAccount:project-num@cloudbuild.gserviceaccount.com \
       --role roles/iam.serviceAccountUser
    
  4. Fügen Sie dem Dienstkonto für die Cloud Build API die Rolle iam.serviceAccountTokenCreator hinzu.

    gcloud projects add-iam-policy-binding project-id \
       --member serviceAccount:project-num@cloudbuild.gserviceaccount.com \
       --role roles/iam.serviceAccountTokenCreator
    

    Die Platzhalter müssen Sie durch folgende Angaben ersetzen:

Anforderungen

Anforderungen an die Quell-VM

Die folgenden Anforderungen müssen von der VM erfüllt werden, die zum Erstellen der OVF-Datei verwendet wird:

  • Virtuelle Laufwerke müssen im VMDK- oder VHD-Format vorliegen.
  • Virtuelle Laufwerke müssen mit MBR-Boot konfiguriert sein. UEFI wird nicht unterstützt.
  • Virtuelle Laufwerke dürfen nicht verschlüsselt sein.

Sie können das Precheck-Tool ausführen, um zu prüfen, ob Ihre VM die Anforderungen erfüllt.

OVF-Dateianforderungen

Die folgenden Anforderungen müssen von der OVF-Datei erfüllt werden:

  • Die OVF-Datei muss die in der OVF-Spezifikation beschriebene Level 1-Portabilität bieten. Virtuelle Appliances mit Level 2-Portabilität können zwar importiert werden, aber alle benutzerdefinierten Erweiterungen wie Details des Quell-Hypervisors werden während des Importvorgangs ignoriert.
  • Die OVF-Datei darf nur eine VM enthalten. Wenn mehr als eine VM vorhanden ist, wird nur die erste VM importiert.
  • Das erste Laufwerk in der OVF-Datei muss bootfähig sein.

Konfigurationen, die vom Import-Tool importiert werden

Der OVF-Standard legt den Prozess für das Packen virtueller Appliances in einer Weise fest, die nicht vom Virtualisierungsanbieter abhängig ist. OVF-Pakete für virtuelle Appliances enthalten eine .ovf-Deskriptordatei und eine Sammlung anderer Ressourcen wie virtueller Laufwerke.

Wenn Sie eine virtuelle OVF-Appliance in Compute Engine importieren, werden die folgenden Konfigurationen aus der Deskriptordatei verarbeitet und importiert:

  • Informationen zu virtuellen Laufwerken, die aus dem Element DiskSection des OVF-Pakets abgerufen werden
  • Informationen zu CPU und Arbeitsspeicher, die aus dem Element ResourceAllocationSection des OVF-Pakets abgerufen werden

    Wenn die CPU- oder Arbeitsspeicherkonfigurationen außerhalb der Grenzen des unterstützten Bereichs in Compute Engine liegen, legt der Importprozess die Werte auf das Maximum fest, das in Compute Engine unterstützt wird.

  • Details zum Bootlaufwerk, die aus dem Element BootDeviceSection des OVF-Pakets abgerufen werden

  • Details zum Gastbetriebssystem, die aus dem Element OperatingSystemSection des OVF-Pakets abgerufen werden

    Die Informationen zum Gastbetriebssystem werden verwendet, um die richtigen Treiber und Gastumgebungspakete für die importierte Instanz zu installieren. Wenn die im OVF-Paket gefundenen Informationen zum Gastbetriebssystem falsch sind, schlägt der Import fehl. Sie können das Flag --os verwenden, um Informationen zum Gastbetriebssystem zu überschreiben.

Importierte Instanzen werden immer mit einem einzelnen Netzwerkadapter ohne externe IP-Adresse erstellt. Dieser einzelne Netzwerkadapter wird unabhängig von den in der OVF-Datei angegebenen Netzwerkkonfigurationen verwendet.

Einschränkungen

Beim Importieren einer virtuellen Appliance werden die folgenden Abschnitte der Deskriptordatei ignoriert (nicht importiert):

  • NetworkSection
  • AnnotationSection
  • ProductSection
  • EulaSection
  • StartupSection
  • DeploymentOptionSection
  • InstallSection
  • EnvironmentFilesSection
  • SharedDiskSection
  • ScaleOutSection
  • PlacementGroupSection
  • PlacementSection
  • EncryptionSection

Unterstützte Betriebssysteme

Geben Sie im Element OperatingSystemSection der Deskriptordatei eines der folgenden Betriebssysteme an:

Linux-Distributionen und -Versionen

  • CentOS 6, CentOS 7
  • Debian 8, Debian 9
  • Red Hat Enterprise Linux 6, Red Hat Enterprise Linux 7
  • Ubuntu 14.04 LTS, Ubuntu 16.04 LTS

Für alle Linux-Distributionen muss auf dem Bootlaufwerk GRUB installiert sein.

Windows-Versionen

  • Windows Server 2008 R2
  • Windows Server 2012, Windows Server 2012 R2, Windows Server 2012 R2 Core
  • Windows Server 2016, Windows Server 2016 Core
  • Windows Server 2019, Windows Server 2019 Core
  • Windows 7 SP1 x64 (wird nur für BYOL unterstützt)
  • Windows 8 SP1 x64 (wird nur für BYOL unterstützt)
  • Windows 10 Enterprise x64 (wird nur für BYOL unterstützt)

Für alle Windows-Betriebssysteme muss Version 3 von PowerShell oder höher installiert sein. PowerShell-Versionen, die älter als Version 3.0 sind, können Probleme mit den während des Importvorgangs verwendeten Start- und Shutdown-Skripts verursachen.

Unterstützung für BYOL

Standardmäßig werden OVF-Dateien, die Windows- und Red Hat Enterprise Linux-Betriebssysteme (RHEL) verwenden, importiert und für die Verwendung der On-Demand-Abrechnung für Premium-Betriebssysteme konfiguriert, für die zusätzliche Kosten anfallen.

Wenn Sie Ihre eigenen Software-Abos für RHEL verwenden möchten, können Sie virtuelle Appliances als BYOL-lizenzierte Appliances (Bring Your Own License) importieren.

Geben Sie zum Importieren von Appliances als BYOL-lizenzierte Appliances einen der folgenden BYOL-Werte für das Flag [--os] an, wenn Sie den Importbefehl ausführen.

  • rhel-6-byol
  • rhel-7-byol
  • windows-2008r2-byol
  • windows-2012-byol
  • windows-2012r2-byol
  • windows-2016-byol
  • windows-2019-byol
  • windows-7-byol
  • windows-8-1-x64-byol
  • windows-10-byol

OVA-Datei importieren

  1. Fügen Sie die virtuelle Appliance zu Cloud Storage hinzu.
  2. Verwenden Sie zum Importieren einer OVA-Datei aus Cloud Storage in Compute Engine den Befehl gcloud compute instances import:

    gcloud compute instances import instance-name \
       --source-uri=gs:path-to-OVA-file
    

    Die Platzhalter müssen Sie durch folgende Angaben ersetzen:

    • instance-name: der Name der Instanz, die Sie erstellen möchten
    • path-to-OVA-file: der Pfad zur OVA-Datei in Cloud Storage

    Führen Sie den folgenden Befehl aus, um beispielsweise eine OVA-Datei Ubuntu.ova zu importieren und eine Instanz namens my-instance zu erstellen:

    gcloud compute instances import my-instance \
        --source-uri=gs://my-bucket/Ubuntu.ova
    

    In einigen Fällen werden Sie möglicherweise aufgefordert, einen Wert für das Betriebssystem anzugeben. Zum Angeben des Betriebssystems müssen Sie das Flag --os hinzufügen. Führen Sie den folgenden Befehl aus, um beispielsweise eine OVA-Datei Ubuntu.ova zu importieren und eine Instanz namens my-instance zu erstellen, auf der Ubuntu 16.04 ausgeführt wird:

    gcloud compute instances import my-instance \
        --os=ubuntu-1604
        --source-uri=gs://my-bucket/Ubuntu.ova
    

OVF-Datei importieren

  1. Fügen Sie die virtuelle Appliance zu Cloud Storage hinzu.
  2. Verwenden Sie zum Importieren einer OVF-Datei aus Cloud Storage in Compute Engine den Befehl gcloud compute instances import.

    Wenn Ihr Verzeichnis nur eine OVF-Datei enthält, können Sie entweder den Pfad zur Deskriptordatei oder den Pfad zu dem Verzeichnis angeben, das die OVF-Datei enthält.

    • Führen Sie den folgenden Befehl aus, um eine OVF-Datei unter Verwendung des Pfads zur Deskriptordatei zu importieren:

      gcloud compute instances import instance-name \
       --source-uri=gs:path-to-OVF-file
      
    • Führen Sie den folgenden Befehl aus, um eine OVF-Datei unter Verwendung des Verzeichnispfads zu importieren:

      gcloud compute instances import instance-name \
       --source-uri=gs:path-to-OVF-directory
      

    Die Platzhalter müssen Sie durch folgende Angaben ersetzen:

    • instance-name: der Name der Instanz, die Sie erstellen möchten
    • path-to-OVF-file: der Pfad zur OVF-Datei in Cloud Storage
    • path-to-OVF-directory: der Pfad zum Verzeichnis in Cloud Storage, das die OVF-Datei enthält

    Beispiel:

    • Führen Sie den folgenden Befehl aus, um beispielsweise in das Verzeichnis my-ovf-directory eine OVF-Datei Ubuntu.ovf zu importieren, die eine Instanz mit dem Namen my-instance erstellt:

      gcloud compute instances import my-instance \
       --source-uri=gs://my-bucket/my-ovf-directory/Ubuntu.ovf
      
    • Führen Sie den folgenden Befehl aus, um beispielsweise aus dem Verzeichnis my-ovf-directory eine OVF-Datei zu importieren, die eine Instanz mit dem Namen my-instance erstellt:

      gcloud compute instances import my-instance \
       --source-uri=gs://my-bucket/my-ovf-directory
      

    In einigen Fällen werden Sie möglicherweise aufgefordert, einen Wert für das Betriebssystem anzugeben. Zum Angeben des Betriebssystems müssen Sie das Flag --os hinzufügen. Führen Sie den folgenden Befehl aus, um beispielsweise eine OVF-Datei Ubuntu.ovf zu importieren und eine Instanz namens my-instance zu erstellen, auf der Ubuntu 16.04 ausgeführt wird:

    gcloud compute instances import my-instance \
       --os=ubuntu-1604 \
       --source-uri=gs://my-bucket/my-ovf-directory/Ubuntu.ovf
    

Mit benutzerdefinierten Einstellungen importieren

Benutzerdefinierte Kombinationen aus CPU und Arbeitsspeicher

Wenn Sie die in der OVF-Datei angegebene CPU- oder Arbeitsspeicherkonfiguration überschreiben möchten, geben Sie die Flags --custom-cpu und --custom-memory an.

Führen Sie den folgenden Befehl aus, um beispielsweise eine Instanz namens my-instance zu importieren, auf der Ubuntu 14.04 ausgeführt wird und die 2 CPUs und 2.048 MB Arbeitsspeicher hat:

gcloud compute instances import my-instance \
    --os=ubuntu-1404 --source-uri=gs://my-bucket/Ubuntu.ova \
    --custom-cpu=2 --custom-memory=2048MB

Benutzerdefinierte Netzwerke

Wenn Ihr Projekt für die Verwendung benutzerdefinierter Netzwerke eingerichtet ist, müssen Sie ein --network-Flag angeben. Wenn das Netzwerk mit einem benutzerdefinierten Subnetzmodus konfiguriert ist, müssen Sie auch die Flags --subnet und --zone angeben.

Zum Importieren einer Instanz mit den folgenden Attributen:

  • Instanzname: my-instance
  • Betriebssystem: Ubuntu 1404
  • Netzwerk: custom-vpc network
  • Subnetz: company-vpc-us-east1-c
  • Zone: us-east1-c

Führen Sie den folgenden Befehl aus:

gcloud compute instances import my-instance --os ubuntu-1404 \
    --source-uri=gs://my-bucket/Ubuntu.ova \
    --network company-vpc \
    --subnet company-vpc-us-east1-c \
    --zone us-east1-c

Weitere Informationen

Hat Ihnen diese Seite weitergeholfen? Teilen Sie uns Ihr Feedback mit:

Feedback geben zu...

Compute Engine-Dokumentation