Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Wenn Sie in Ihrer lokalen Umgebung virtuelle Laufwerke mit Software und Konfigurationen haben, die Sie benötigen (manchmal auch als goldene Laufwerke oder goldene Images bezeichnet), können Sie Zeit sparen, indem Sie diese virtuellen Laufwerke in die GDC-Appliance mit Air Gap importieren und das resultierende Image zum Erstellen virtueller Maschinen verwenden. Das Importtool unterstützt die Bildformate RAW und QCOW.
Hinweise
Bevor Sie fortfahren, sollten Sie Folgendes parat haben:
Die gcloud CLI wurde heruntergeladen, installiert und konfiguriert. Alle CLI-Befehle für GDC verwenden die gdcloud- oder kubectl-CLI und erfordern eine Betriebssystemumgebung.
Zugriff auf den Management API-Server. Folgen Sie der CLI-Anleitung unter Anmelden, um sich auf dem Management API-Server anzumelden.
Berechtigungen und Zugriff anfordern
Zum Ausführen der auf dieser Seite aufgeführten Aufgaben benötigen Sie die Rollen „Project VirtualMachine Admin“ und „Project VirtualMachine Image Admin“. Folgen Sie der Anleitung, um entweder Ihre Identität zu bestätigen oder Ihren Projekt-IAM-Administrator zu bitten, Ihnen die Rollen „Project VirtualMachine Admin“ (project-vm-admin) und „Project VirtualMachine Image Admin“ (project-vm-image-admin) im Namespace des Projekts zuzuweisen, in dem sich die VM befindet.
Für VM-Vorgänge mit der GDC-Konsole oder der gdcloud-CLI bitten Sie Ihren Projekt-IAM-Administrator, Ihnen die im vorherigen Absatz aufgeführten Rollen und die Rolle „Projektbetrachter“ (project-viewer) zuzuweisen.
Virtuelle Laufwerke importieren
Sie können Ihre virtuellen Laufwerke entweder mit der gcloud CLI oder der Virtual Machine Manager API importieren.
Bitten Sie Ihren Organisations-IAM-Administrator, Ihnen die Rolle „Project VirtualMachine Image Admin“ (project-vm-image-admin) für Ihr Projekt zu gewähren, um die Berechtigungen zu erhalten, die Sie zum Importieren von Images benötigen.
gdcloud
Verwenden Sie den Befehl gdcloud compute images import, um ein bootfähiges Image zu erstellen.
Der Befehl import sorgt dafür, dass das Laufwerk die erforderlichen Pakete hat, einschließlich der Gastumgebung. Diese ist erforderlich, um Anmeldedaten für die Verbindung zur Instanz über Secure Shell (SSH) unter Linux und Remote Desktop Protocol (RDP) unter Windows zu konfigurieren.
Unter Linux werden mit dem Befehl auch Pakete für NTP (Network Time Protocol) und cloud-init installiert, damit die Instanz in GDC ordnungsgemäß ausgeführt werden kann.
Sie können virtuelle Laufwerksdateien direkt von Ihrer Workstation importieren. Das Importtool lädt die Datei automatisch in einen Object Storage-Bucket in Ihrem Projekt hoch.
IMAGE_NAME ist der Name des Ziel-Images. Der Name darf nicht länger als 35 Zeichen sein.
SOURCE_FILE: die virtuelle Laufwerksdatei. Diese Datei ist eine lokale Datei auf Ihrer Workstation. Sie können einen absoluten oder relativen Pfad angeben.
IMAGE_OS: Das Betriebssystem auf dem zu importierenden Laufwerk.
TIMEOUT: Die Zeit, die ein Import dauern kann, bevor er mit „TIMEOUT“ fehlschlägt. Wenn Sie beispielsweise 2h angeben, schlägt der Vorgang nach 2 Stunden fehl.
Das Standardzeitlimit ist 1h.
Der Uploadvorgang kann je nach Größe des virtuellen Laufwerks und Geschwindigkeit der Netzwerkverbindung längere Zeit dauern. Der Importvorgang kann abhängig von der Größe des Laufwerks mehrere Minuten dauern.
API
Bevor Sie den Importvorgang mit der API starten, müssen Sie Ihre virtuelle Festplatte in einen Objektspeicher-Bucket mit dem Namen vm-images-bucket hochladen. Informationen zum Erstellen eines Object Storage-Buckets finden Sie unter Storage-Buckets für Projekte erstellen.
So importieren Sie eine virtuelle Festplatte über die API:
Erstellen Sie ein VirtualMachineImageImport-Objekt auf dem Management API-Server, um den Bildimport zu starten:
Der Name des zu importierenden Bildes. Der Name darf maximal 35 Zeichen lang sein.
PROJECT_ID
Die Projekt-ID des Projekts, in das Sie das Image importieren möchten.
SOURCE_FILE
Der Name der Quelldatei, die den Upload der virtuellen Festplatte in den Objektspeicher enthält. Dieser Wert ist der Abschnitt des Objekt-Speicherpfads nach vm-images-bucket/.
OPERATING_SYSTEM
Das Betriebssystem auf dem zu importierenden Laufwerk.
DISK_SIZE
Die Mindestgröße, die ein Laufwerk haben muss, damit es mit diesem Image erstellt werden kann. Wir empfehlen, zusätzlich zur Dateisystemgröße des Originalbilds einen Puffer von mindestens 20% zu verwenden. Beispiel: Verwenden Sie mindestens 12 GiB für eine virtuelle Festplatte mit einer ursprünglichen Dateisystemgröße von 10 GiB.
Sie können den Fortschritt des Imports überwachen, indem Sie den Status des VirtualMachineImageImport-Objekts abfragen:
Beim Importieren wird Ihre virtuelle Laufwerksdatei in den Objektspeicher hochgeladen.
Wenn Sie die gcloud CLI verwenden, wird das Objekt bereinigt, wenn der Befehl abgeschlossen ist, unabhängig davon, ob er erfolgreich war. Wenn der Befehl unterbrochen wird oder der Image-Import über die API erfolgt, verbleibt die virtuelle Laufwerksdatei möglicherweise im Objektspeicher-Bucket mit dem Namen vm-images-bucket, bis Sie die Datei manuell löschen.
Nächste Schritte
Erstellen Sie auf der Seite VM erstellen und starten eine neue VM-Instanz, die Ihr Image verwendet.
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Schwer verständlich","hardToUnderstand","thumb-down"],["Informationen oder Beispielcode falsch","incorrectInformationOrSampleCode","thumb-down"],["Benötigte Informationen/Beispiele nicht gefunden","missingTheInformationSamplesINeed","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2025-09-04 (UTC)."],[[["\u003cp\u003eYou can import existing virtual disks (golden disks/images) from your on-premises environment into the GDC air-gapped appliance, saving time when creating new virtual machines.\u003c/p\u003e\n"],["\u003cp\u003eThe import tool supports both RAW and QCOW image formats and can be done through the \u003ccode\u003egdcloud\u003c/code\u003e CLI or the Virtual Machine Manager API, requiring the "Project VirtualMachine Image Admin" role.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003egdcloud\u003c/code\u003e CLI allows direct import from your workstation, while the API requires you to first upload the virtual disk to an object storage bucket named \u003ccode\u003evm-images-bucket\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eimport\u003c/code\u003e command via the \u003ccode\u003egdcloud\u003c/code\u003e CLI ensures the disk has necessary packages, such as the guest environment for SSH or RDP and on Linux packages for NTP and \u003ccode\u003ecloud-init\u003c/code\u003e, for proper instance operation in GDC.\u003c/p\u003e\n"],["\u003cp\u003eAfter a successful import, a virtual machine instance can be created that utilizes the imported image.\u003c/p\u003e\n"]]],[],null,["# Import virtual disks\n\nIf you have virtual disks in your on-premises environment with software and\nconfigurations that you need, occasionally referred to as *golden disks* or\n*golden images*, you can save time by importing those virtual disks into\nGDC air-gapped appliance and using the resulting image to create virtual\nmachines. The import tool supports RAW and QCOW image formats.\n\nBefore you begin\n----------------\n\nBefore continuing, ensure that you have the following:\n\n- The [gdcloud CLI](/distributed-cloud/hosted/docs/latest/appliance/resources/gdcloud-overview) downloaded, installed, and configured. All CLI commands for GDC use the `gdcloud` or `kubectl` CLI, and require an operating system (OS) environment.\n\n\u003c!-- --\u003e\n\n- Access to the Management API server. Follow the CLI steps in\n [Sign in](/distributed-cloud/hosted/docs/latest/appliance/application/ao-user/iam/sign-in#cli)\n to sign in to the Management API server.\n\n | **Note:** Record the path to the generated file, such as `/tmp/org-1-admin-kubeconfig.yaml`. Use the path to replace \u003cvar translate=\"no\"\u003eMANAGEMENT_API_SERVER_KUBECONFIG\u003c/var\u003e in these instructions.\n\n### Request permissions and access\n\nTo perform the tasks listed in this page, you must have the Project\nVirtualMachine Admin and Project VirtualMachine Image Admin roles. Follow the\nsteps to either\n[verify](/distributed-cloud/hosted/docs/latest/appliance/application/ao-user/vms/preparation#verify-user-access)\nor have your Project IAM Admin\n[assign](/distributed-cloud/hosted/docs/latest/appliance/application/ao-user/vms/preparation#grant-user-access-vm-resources)\nyou the Project VirtualMachine Admin (`project-vm-admin`) and the Project\nVirtualMachine Image Admin (`project-vm-image-admin`) roles in the namespace\nof the project where the VM resides.\n\nFor VM operations using the GDC console or the gdcloud CLI,\nrequest your Project IAM Admin to assign you the roles listed in the previous\nparagraph and the Project Viewer (`project-viewer`) role.\n\nImport virtual disks\n--------------------\n\nYou can import your virtual disks using either the\ngdcloud CLI or the\n[Virtual Machine Manager API](/distributed-cloud/hosted/docs/latest/appliance/apis/service/virtualmachine/vmm-api-overview).\n\nTo get the permissions you need to import images, ask your Organization IAM\nAdmin to grant you the Project VirtualMachine Image Admin\n(`project-vm-image-admin`) role for your project. \n\n### gdcloud\n\nUse the `gdcloud compute images import` command to create a bootable image.\n\nThe `import` command ensures that the disk has the required packages,\nincluding the guest environment, which is required to configure credentials\nfor connecting to the instance using secure shell (SSH) on Linux and Remote\nDesktop Protocol (RDP) on Windows.\n\nOn Linux, the command also installs packages for network time protocol (NTP)\nand `cloud-init` for the instance to run properly in\nGDC.\n\nYou can import virtual disk files directly from your workstation. The import\ntool automatically uploads the file to an object storage bucket in your\nproject. \n\n gdcloud compute images import \u003cvar translate=\"no\"\u003eIMAGE_NAME\u003c/var\u003e \\\n --source-file=\u003cvar translate=\"no\"\u003eSOURCE_FILE\u003c/var\u003e \\\n --os=\u003cvar translate=\"no\"\u003eIMAGE_OS\u003c/var\u003e \\\n --timeout=\u003cvar translate=\"no\"\u003eTIMEOUT\u003c/var\u003e\n\nReplace the following variables:\n\n- \u003cvar translate=\"no\"\u003eIMAGE_NAME\u003c/var\u003e: the name of your destination image. The name must be no longer than 35 characters.\n- \u003cvar translate=\"no\"\u003eSOURCE_FILE\u003c/var\u003e: your virtual disk file. This file is a local file on your workstation. You can provide an absolute or relative path.\n- \u003cvar translate=\"no\"\u003eIMAGE_OS\u003c/var\u003e: the OS on the disk to import.\n- \u003cvar translate=\"no\"\u003eTIMEOUT\u003c/var\u003e: the time an import can last before it fails with \"TIMEOUT\". For example, if you specify `2h`, the process fails after 2 hours. The default timeout is `1h`.\n\nThe upload operation can take an extended period of time depending on the size\nof your virtual disk and the speed of your network connection. The import\noperation can take tens of minutes to run depending on the size of the disk.\n\n\u003cbr /\u003e\n\n### API\n\nBefore starting the import process with the API, you need to upload your\nvirtual disk to an object storage bucket named `vm-images-bucket`. To create\nan object storage bucket, see\n[Create storage buckets for projects](/distributed-cloud/hosted/docs/latest/appliance/application/ao-user/create-storage-buckets).\n\nTo import a virtual disk through the API, do the following:\n\n1. Create a `VirtualMachineImageImport` object in the Management API server to start the\n image import process:\n\n kubectl --kubeconfig \u003cvar translate=\"no\"\u003eMANAGEMENT_API_SERVER_KUBECONFIG\u003c/var\u003e \\\n apply -n \u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e -f - \u003c\u003cEOF\n apiVersion: virtualmachine.gdc.goog/v1\n kind: VirtualMachineImageImport\n metadata:\n name: \u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-l devsite-syntax-l-Scalar devsite-syntax-l-Scalar-Plain\"\u003eIMAGE_NAME\u003c/span\u003e\u003c/var\u003e\n namespace: \u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-l devsite-syntax-l-Scalar devsite-syntax-l-Scalar-Plain\"\u003ePROJECT_ID\u003c/span\u003e\u003c/var\u003e\n spec:\n source:\n objectStorage:\n bucketRef:\n name: vm-images-bucket\n objectName: \u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-l devsite-syntax-l-Scalar devsite-syntax-l-Scalar-Plain\"\u003eSOURCE_FILE\u003c/span\u003e\u003c/var\u003e\n imageMetadata:\n name: \u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-l devsite-syntax-l-Scalar devsite-syntax-l-Scalar-Plain\"\u003eIMAGE_NAME\u003c/span\u003e\u003c/var\u003e\n operatingSystem: \u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-l devsite-syntax-l-Scalar devsite-syntax-l-Scalar-Plain\"\u003eOPERATING_SYSTEM\u003c/span\u003e\u003c/var\u003e\n minimumDiskSize: \u003cvar translate=\"no\"\u003e\u003cspan class=\"devsite-syntax-l devsite-syntax-l-Scalar devsite-syntax-l-Scalar-Plain\"\u003eDISK_SIZE\u003c/span\u003e\u003c/var\u003e\n EOF\n\n Replace the following variables:\n\n2. Monitor the progress of the import by querying the status of the\n `VirtualMachineImageImport` object:\n\n kubectl --kubeconfig \u003cvar translate=\"no\"\u003eMANAGEMENT_API_SERVER_KUBECONFIG\u003c/var\u003e \\\n get virtualmachineimageimport --namespace \u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e \\\n \u003cvar translate=\"no\"\u003eIMAGE_NAME\u003c/var\u003e -o jsonpath='{.status}'\n\n### Clean up resources\n\nThe import process involves uploading your virtual disk file to object storage.\nIf you use the gdcloud CLI, the object is cleaned up when the command\nfinishes, whether or not it was successful. If the command is interrupted, or\nthe image import is done with the API, the virtual disk file might remain in\nthe object storage bucket named `vm-images-bucket` until you manually delete\nthe file.\n\nWhat's next\n-----------\n\nCreate a new VM instance that uses your image in the page,\n[Create and start a VM](/distributed-cloud/hosted/docs/latest/appliance/application/ao-user/vms/create-a-vm/create-and-start)."]]