In diesem Dokument wird beschrieben, wie Sie eine VM-Instanz mit einem Bootlaufwerk-Image oder einem Bootlaufwerk-Snapshot erstellen.
Sie können eine VM mit einem oder mehreren Laufwerken erstellen. Sie können Ihrer VM nach der Erstellung auch Laufwerke hinzufügen. Distributed Cloud startet die VM-Instanz nach der Erstellung automatisch.
Sie können einer VM auch vor oder nach der Erstellung Startskripts hinzufügen. Weitere Informationen finden Sie unter Startskript mit einer VM-Instanz verwenden.
Dieses Dokument richtet sich an Entwickler in Plattformadministrator- oder Anwendungsbedienergruppen, die VMs in einer GDC-Umgebung (Google Distributed Cloud) mit Air Gap erstellen und verwalten. Weitere Informationen finden Sie unter Dokumentation zu Zielgruppen für GDC mit Air Gap.
Hinweis
Wenn Sie die Befehlszeilenbefehle (Command-Line Interface, CLI) von gdcloud verwenden möchten, müssen Sie die gdcloud-CLI heruntergeladen, installiert und konfiguriert haben.
Für alle Befehle für Distributed Cloud wird die gdcloud- oder kubectl-CLI verwendet und es ist eine Betriebssystemumgebung erforderlich.
Pfad der kubeconfig-Datei abrufen
Damit Sie Befehle für den Management API-Server ausführen können, benötigen Sie die folgenden Ressourcen:
Melden Sie sich an und generieren Sie die kubeconfig-Datei für den Management API-Server, falls Sie noch keine haben.
Verwenden Sie den Pfad zur kubeconfig-Datei des Management API-Servers, um
MANAGEMENT_API_SERVERin dieser Anleitung zu ersetzen.
Richtlinien für die Benennung von VMs
Beachten Sie beim Erstellen von VM-Instanzen die folgenden Benennungsrichtlinien:
- VM-Namen dürfen nur alphanumerische Zeichen und Bindestriche enthalten.
- Wenn Sie andere Symbole als alphanumerische Zeichen und Bindestriche verwenden, z. B. einen Punkt, schlägt die Verbindung zur VM fehl.
- Der Name der VM darf maximal 53 Zeichen lang sein.
IAM-Rollen anfordern
Bitten Sie Ihren Projekt-IAM-Administrator, Ihnen die folgenden Rollen für Ihr Projekt zuzuweisen:
Virtual Machine Project Admin (
project-vm-admin): VMs im Projekt-Namespace erstellen, ändern, auflisten und löschen.Projektbetrachter (
project-viewer): Alle Ressourcen in Projekt-Namespaces ansehen.Virtual Machine Image Project Admin (
project-vm-image-admin): Vom GDC bereitgestellte und benutzerdefinierte VM-Images im Projekt-Namespace erstellen, auflisten und löschen.
Alle VM-Rollen müssen an den Namespace des Projekts gebunden sein, in dem sich die VM befindet. Folgen Sie der Anleitung, um Ihren Zugriff zu bestätigen.
VM-Instanz aus einem Image erstellen
In diesem Abschnitt wird beschrieben, wie Sie eine VM entweder aus einem von GDC bereitgestellten Betriebssystem-Image oder aus einem benutzerdefinierten Betriebssystem-Image erstellen.
Liste der von GDC bereitgestellten Images ansehen
Bevor Sie eine VM mit einem von GDC bereitgestellten Image erstellen, sollten Sie die Liste der verfügbaren Images prüfen. Weitere Informationen zu von GDC bereitgestellten Images finden Sie unter Unterstützte VM-Images.
gdcloud
Alle verfügbaren Images und ihre Mindestlaufwerksgröße auflisten:
gdcloud compute images listDieser Befehl umfasst sowohl von GDC bereitgestellte als auch benutzerdefinierte Bilder. Wählen Sie ein beliebiges Bild im Namespace
vm-systemaus.
API
Alle von GDC bereitgestellten Images auflisten:
kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n vm-system \ get virtualmachineimage.virtualmachine.gdc.googSo rufen Sie die
minimumDiskSizefür ein bestimmtes von GDC bereitgestelltes Image ab:kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n vm-system \ get virtualmachineimage.virtualmachine.gdc.goog BOOT_DISK_IMAGE_NAME \ -ojsonpath='{.spec.minimumDiskSize}{"\n"}'Ersetzen Sie Folgendes:
MANAGEMENT_API_SERVER: die kubeconfig-Datei für den Management API-Server.BOOT_DISK_IMAGE_NAME: der Name des Bildes.
VM-Instanz aus einem von GDC bereitgestellten Image erstellen
Standardmäßig können in allen GDC-Projekten VMs aus von GDC bereitgestellten Betriebssystem-Images erstellt werden.
Console
- Wählen Sie im Navigationsmenü Virtuelle Maschinen > Instanzen aus.
- Klicken Sie auf Instanz erstellen.
- Geben Sie im Feld Name einen Namen für die VM an.
- Wählen Sie die Zone aus, in der die VM erstellt werden soll.
- Optional: Klicken Sie auf Labels hinzufügen, um der VM Labels zuzuweisen. So können Sie Ihre VM-Instanzen besser organisieren.
- Wählen Sie die Maschinenkonfiguration aus, die für die VM verwendet werden soll:
- Für allgemeine Zwecke: Achten Sie darauf, dass der Maschinentyp den Anforderungen Ihrer Arbeitslast entspricht.
- Benutzerdefiniert: Legen Sie die Anzahl der Kerne und die Arbeitsspeicheranforderungen für Ihren Computer fest.
- Klicken Sie auf Weiter.
- Wenn Sie den externen Zugriff aktivieren möchten, wählen Sie Externen Zugriff zulassen aus.
- Klicken Sie auf Weiter.
- Im Abschnitt Bootlaufwerk wird automatisch ein Bootlaufwerk mit Standardkonfigurationen hinzugefügt. Sie können diese Konfiguration beibehalten oder auf Ändern klicken, um die Standardkonfigurationen zu ändern:
- Ändern Sie im Abschnitt Laufwerkdetails den Laufwerkname.
- Ändern Sie im Abschnitt Laufwerkeinstellungen den Wert für Größe.
- Klicken Sie im Bereich Quellbild auf das Menü Bildname und wählen Sie eines der Bilder aus.
- Aktivieren oder deaktivieren Sie die Option Secure Boot aktivieren. Wenn Sie ein Windows-Image verwenden, muss Secure Boot aktiviert sein.
- Wählen Sie entweder Laufwerk behalten oder Laufwerk löschen aus, um die Löschregel für das Laufwerk zu konfigurieren.
- Klicken Sie auf Speichern.
- Klicken Sie auf Erstellen, um die VM-Instanz zu erstellen.
gdcloud
Wählen Sie ein von GDC bereitgestelltes Image aus, um die VM-Instanz in Ihrer Zielzone zu erstellen:
gdcloud compute instances create VM_NAME \ --machine-type=MACHINE_TYPE \ --image=BOOT_DISK_IMAGE_NAME \ --image-project=vm-system \ --boot-disk-size=BOOT_DISK_SIZE \ --no-boot-disk-auto-delete=NO_BOOT_DISK_AUTO_DELETEErsetzen Sie Folgendes:
Variable Definition VM_NAMEDer Name der neuen VM. Der Name darf nur alphanumerische Zeichen und Bindestriche enthalten und darf nicht länger als 53 Zeichen sein. MACHINE_TYPEDer vordefinierte Maschinentyp für die neue VM. Führen Sie Folgendes aus, um einen verfügbaren Maschinentyp auszuwählen:
gdcloud compute machine-types listBOOT_DISK_IMAGE_NAMEDer Name des Images, das für das Bootlaufwerk der neuen VM verwendet werden soll. BOOT_DISK_SIZEDie Größe des Bootlaufwerks, z. B. 20GB.
Dieser Wert muss immer größer oder gleich demminimumDiskSizedes Bootlaufwerk-Images sein.NO_BOOT_DISK_AUTO_DELETEEntweder trueoderfalse, was das Gegenteil davon angibt, ob das Bootlaufwerk automatisch gelöscht wird, wenn die VM-Instanz gelöscht wird.
API
Wählen Sie ein von GDC bereitgestelltes Image aus, um die VM-Instanz in Ihrer Zielzone zu erstellen:
kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ apply -f - <<EOF apiVersion: virtualmachine.gdc.goog/v1 kind: VirtualMachineDisk metadata: name: VM_BOOT_DISK_NAME spec: source: image: name: BOOT_DISK_IMAGE_NAME namespace: vm-system size: BOOT_DISK_SIZE --- apiVersion: virtualmachine.gdc.goog/v1 kind: VirtualMachine metadata: name: VM_NAME spec: compute: virtualMachineType: MACHINE_TYPE disks: - virtualMachineDiskRef: name: VM_BOOT_DISK_NAME boot: true autoDelete: BOOT_DISK_AUTO_DELETE EOFErsetzen Sie Folgendes:
Variable Definition MANAGEMENT_API_SERVERDie kubeconfig-Datei des Management API-Servers. PROJECTDas GDC-Projekt, in dem die VM erstellt werden soll. VM_BOOT_DISK_NAMEDer Name des neuen VM-Bootlaufwerks. BOOT_DISK_IMAGE_NAMEDer Name des Images, das für das Bootlaufwerk der neuen VM verwendet werden soll. BOOT_DISK_SIZEDie Größe des Bootlaufwerks, z. B. 20Gi.
Dieser Wert muss immer größer oder gleich demminimumDiskSizedes Bootlaufwerk-Images sein.VM_NAMEDer Name der neuen VM. Der Name darf nur alphanumerische Zeichen und Bindestriche enthalten und darf nicht länger als 53 Zeichen sein. MACHINE_TYPEDer vordefinierte Maschinentyp für die neue VM. Führen Sie Folgendes aus, um einen verfügbaren Maschinentyp auszuwählen:
kubectl --kubeconfig MANAGEMENT_API_SERVER get virtualmachinetype.virtualmachine.gdc.goog --namespace vm-systemBOOT_DISK_AUTO_DELETEEntweder trueoderfalse, um anzugeben, ob das Bootlaufwerk automatisch gelöscht wird, wenn die VM-Instanz gelöscht wird.Prüfen Sie, ob die VM erstellt wurde, und warten Sie, bis die VM den Status
Runninghat. Der StatusRunningbedeutet nicht, dass das Betriebssystem vollständig bereit und zugänglich ist.kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ get virtualmachine.virtualmachine.gdc.goog VM_NAMEErsetzen Sie
VM_NAMEundPROJECTdurch den Namen und das Projekt der VM.Wenn Sie ein Startskript beim Erstellen einer VM-Instanz hinzufügen möchten, folgen Sie der Anleitung auf der Seite Startskript mit einer VM-Instanz verwenden. Stellen Sie sicher, dass Sie die VM herunterfahren, bevor Sie das Skript hinzufügen.
VM-Instanz aus einem benutzerdefinierten Image erstellen
Ein benutzerdefiniertes Image gehört ausschließlich zu Ihrem Projekt. Wenn Sie eine VM mit einem benutzerdefinierten Image erstellen möchten, müssen Sie zuerst ein benutzerdefiniertes Image im selben Projekt erstellen.
Console
- Wählen Sie im Navigationsmenü Virtuelle Maschinen > Instanzen aus.
- Klicken Sie auf Instanz erstellen.
- Geben Sie im Feld Name einen Namen für die VM an.
- Wählen Sie die Zone aus, in der die VM erstellt werden soll.
- Optional: Klicken Sie auf Labels hinzufügen, um der VM Labels zuzuweisen. So können Sie Ihre VM-Instanzen besser organisieren.
- Wählen Sie die Maschinenkonfiguration aus, die für die VM verwendet werden soll:
- Für allgemeine Zwecke: Achten Sie darauf, dass der Maschinentyp den Anforderungen Ihrer Arbeitslast entspricht.
- Benutzerdefiniert: Legen Sie die Anzahl der Kerne und die Arbeitsspeicheranforderungen für Ihren Computer fest.
- Klicken Sie auf Weiter.
- Markieren Sie das Kästchen Externen Zugriff zulassen, um den externen Zugriff für Ihre VM-Instanz zu aktivieren.
- Klicken Sie auf Weiter.
- Im Abschnitt Bootlaufwerk wird automatisch ein Bootlaufwerk mit Standardkonfigurationen hinzugefügt. Sie können diese Konfiguration beibehalten oder auf Ändern klicken, um die Standardkonfigurationen zu ändern:
- Ändern Sie im Abschnitt Laufwerkdetails den Laufwerkname.
- Ändern Sie im Abschnitt Laufwerkeinstellungen den Wert für Größe.
- Klicken Sie im Abschnitt Quellbild auf das Menü Bildname und wählen Sie eines der Bilder mit dem Untertitel Vom Kunden erstellt aus.
- Aktivieren oder deaktivieren Sie die Option Secure Boot aktivieren. Wenn Sie ein Windows-Image verwenden, muss Secure Boot aktiviert sein.
- Wählen Sie entweder Laufwerk behalten oder Laufwerk löschen aus, um die Löschregel für das Laufwerk zu konfigurieren.
- Klicken Sie auf Speichern.
- Klicken Sie auf Erstellen, um die VM-Instanz zu erstellen.
gdcloud
Alle benutzerdefinierten Bilder auflisten:
gdcloud compute images list --no-standard-images=trueErstellen Sie die VM-Instanz.
gdcloud compute instances create VM_NAME \ --machine-type=MACHINE_TYPE \ --image=BOOT_DISK_IMAGE_NAME \ --boot-disk-size=BOOT_DISK_SIZE \ --no-boot-disk-auto-delete=NO_BOOT_DISK_AUTO_DELETEErsetzen Sie Folgendes:
Variable Definition VM_NAMEDer Name der neuen VM. Der Name darf nur alphanumerische Zeichen und Bindestriche enthalten und darf nicht länger als 53 Zeichen sein. MACHINE_TYPEDer vordefinierte Maschinentyp für die neue VM. Führen Sie Folgendes aus, um einen verfügbaren Maschinentyp auszuwählen:
gdcloud compute machine-types listBOOT_DISK_IMAGE_NAMEDer Name des Images, das für das Bootlaufwerk der neuen VM verwendet werden soll. BOOT_DISK_SIZEDie Größe des Bootlaufwerks, z. B. 20GB.
Dieser Wert muss immer größer oder gleich demminimumDiskSizedes Bootlaufwerk-Images sein.NO_BOOT_DISK_AUTO_DELETEEntweder trueoderfalse, was das Gegenteil davon angibt, ob das Bootlaufwerk automatisch gelöscht wird, wenn die VM-Instanz gelöscht wird.
API
Alle benutzerdefinierten Bilder auflisten:
kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ get virtualmachineimage.virtualmachine.gdc.googSo rufen Sie die
minimumDiskSizeeines bestimmten Images ab, um eine VM-Instanz zu erstellen:kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ get virtualmachineimage.virtualmachine.gdc.goog BOOT_DISK_IMAGE_NAME \ -ojsonpath='{.spec.minimumDiskSize}{"\n"}'Ersetzen Sie Folgendes:
Variable Definition MANAGEMENT_API_SERVERDie kubeconfig-Datei des Management API-Servers. PROJECTDas Projekt des Bildes. BOOT_DISK_IMAGE_NAMEDer Name des Bildes, das mit dem Befehl zum Auflisten aller benutzerdefinierten Bilder ausgewählt wurde. Erstellen Sie die VM-Instanz.
kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ apply -f - <<EOF apiVersion: virtualmachine.gdc.goog/v1 kind: VirtualMachineDisk metadata: name: VM_BOOT_DISK_NAME spec: source: image: name: BOOT_DISK_IMAGE_NAME size: BOOT_DISK_SIZE --- apiVersion: virtualmachine.gdc.goog/v1 kind: VirtualMachine metadata: name: VM_NAME spec: compute: virtualMachineType: MACHINE_TYPE disks: - virtualMachineDiskRef: name: VM_BOOT_DISK_NAME boot: true autoDelete: BOOT_DISK_AUTO_DELETE EOFErsetzen Sie Folgendes:
Variable Definition MANAGEMENT_API_SERVERDie kubeconfig-Datei des Management API-Servers. PROJECTDas GDC-Projekt, in dem die VM erstellt werden soll. VM_BOOT_DISK_NAMEDer Name des neuen VM-Bootlaufwerks. BOOT_DISK_IMAGE_NAMEDer Name des Images, das für das Bootlaufwerk der neuen VM verwendet werden soll. BOOT_DISK_SIZEDie Größe des Bootlaufwerks, z. B. 20Gi.
Dieser Wert muss immer größer oder gleich demminimumDiskSizedes Bootlaufwerk-Images sein.VM_NAMEDer Name der neuen VM. Der Name darf nur alphanumerische Zeichen und Bindestriche enthalten und darf nicht länger als 53 Zeichen sein. MACHINE_TYPEDer vordefinierte Maschinentyp für die neue VM. Führen Sie Folgendes aus, um einen verfügbaren Maschinentyp auszuwählen:
kubectl --kubeconfig MANAGEMENT_API_SERVER get virtualmachinetype.virtualmachine.gdc.goog --namespace vm-systemBOOT_DISK_AUTO_DELETEEntweder trueoderfalse, um anzugeben, ob das Bootlaufwerk automatisch gelöscht wird, wenn die VM-Instanz gelöscht wird.Prüfen Sie, ob die VM erstellt wurde, und warten Sie, bis die VM den Status
Runninghat. Der StatusRunningbedeutet nicht, dass das Betriebssystem vollständig bereit und zugänglich ist.kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ get virtualmachine.virtualmachine.gdc.goog VM_NAMEErsetzen Sie
VM_NAMEundPROJECTdurch den Namen und das Projekt der VM.
VM-Instanz mit zusätzlichen Nicht-Bootlaufwerken erstellen
Sie können Nicht-Bootlaufwerke erstellen, wenn Sie eine VM erstellen. Für jedes zusätzliche Laufwerk kann eine Image-Quelle angegeben werden. Im letzteren Fall wird eine leere Disk erstellt.
Console
- Wählen Sie im Navigationsmenü Virtuelle Maschinen > Instanzen aus.
- Klicken Sie auf Instanz erstellen.
- Geben Sie im Feld Name einen Namen für die VM an.
- Wählen Sie die Zone aus, in der die VM erstellt werden soll.
- Optional: Klicken Sie auf Labels hinzufügen, um der VM Labels zuzuweisen. So können Sie Ihre VM-Instanzen besser organisieren.
- Wählen Sie die Maschinenkonfiguration aus, die für die VM verwendet werden soll:
- Für allgemeine Zwecke: Achten Sie darauf, dass der Maschinentyp den Anforderungen Ihrer Arbeitslast entspricht.
- Benutzerdefiniert: Legen Sie die Anzahl der Kerne und die Arbeitsspeicheranforderungen für Ihren Computer fest.
- Klicken Sie auf Weiter.
- Markieren Sie das Kästchen Externen Zugriff zulassen, um den externen Zugriff für Ihre VM-Instanz zu aktivieren.
- Klicken Sie auf Weiter.
- Im Abschnitt Bootlaufwerk wird automatisch ein Bootlaufwerk mit Standardkonfigurationen hinzugefügt. Sie können diese Konfiguration beibehalten oder auf Ändern klicken, um die Standardkonfigurationen zu ändern:
- Ändern Sie im Abschnitt Laufwerkdetails den Laufwerkname.
- Ändern Sie im Abschnitt Laufwerkeinstellungen den Wert für Größe.
- Klicken Sie im Bereich Quellbild auf das Menü Bildname und wählen Sie eines der Bilder aus.
- Aktivieren oder deaktivieren Sie die Option Secure Boot aktivieren. Wenn Sie ein Windows-Image verwenden, muss Secure Boot aktiviert sein.
- Wählen Sie entweder Laufwerk behalten oder Laufwerk löschen aus, um die Löschregel für das Laufwerk zu konfigurieren.
- Klicken Sie auf Speichern.
- Wenn Sie Ihrer VM-Instanz weitere Laufwerke hinzufügen möchten, wählen Sie Neues Laufwerk hinzufügen aus:
- Weisen Sie Ihrer VM-Festplatte einen Namen zu.
- Konfigurieren Sie die Laufwerkgröße und die Einstellungen für das Anhängen.
- Klicken Sie auf Speichern.
- Klicken Sie auf Erstellen, um die VM-Instanz zu erstellen.
gdcloud
Bootlaufwerk aus einem Image erstellen:
gdcloud compute disks create VM_BOOT_DISK_NAME \ --size=BOOT_DISK_SIZE \ --image=BOOT_DISK_IMAGE_NAME \ --image-project=BOOT_DISK_IMAGE_NAMESPACEZusätzliches Nicht-Bootlaufwerk aus einem Image erstellen:
gdcloud compute disks create NON_BOOT_DISK_FROM_IMAGE \ --size=NON_BOOT_DISK_SIZE \ --image=NON_BOOT_DISK_IMAGE_NAME \ --image-project=NON_BOOT_DISK_IMAGE_NAMESPACEErstellen Sie das leere Nicht-Bootlaufwerk:
gdcloud compute disks create NON_BOOT_BLANK_DISK \ --size=NON_BOOT_BLANK_DISK_SIZEErstellen Sie eine Instanz mit den Laufwerken aus den vorherigen Schritten:
gdcloud compute instances create VM_NAME \ --machine-type=MACHINE_TYPE \ --disk=name=VM_BOOT_DISK_NAME,boot=true \ --no-boot-disk-auto-delete=NO_BOOT_DISK_AUTO_DELETE \ --disk=name=NON_BOOT_DISK_FROM_IMAGE \ --disk=name=NON_BOOT_BLANK_DISKErsetzen Sie Folgendes:
Variable Definition VM_BOOT_DISK_NAMEDer Name des neuen VM-Bootlaufwerks. BOOT_DISK_SIZEDie Größe des Bootlaufwerks, z. B. 20GB.
Dieser Wert muss immer größer oder gleich demminimumDiskSizedes Bootlaufwerk-Images sein.BOOT_DISK_IMAGE_NAMEDer Name des Images, das für das Bootlaufwerk der neuen VM verwendet werden soll. BOOT_DISK_IMAGE_NAMESPACEDer Namespace des Images, das für das Bootlaufwerk der neuen VM verwendet werden soll. Verwenden Sie vm-systemfür ein von GDC bereitgestelltes Image oder lassen Sie das Feld für ein benutzerdefiniertes Image leer.NON_BOOT_DISK_FROM_IMAGEDer Name des zusätzlichen Nicht-Bootlaufwerks, das aus einem Image erstellt wurde. NON_BOOT_DISK_SIZEDie Größe des zusätzlichen Nicht-Bootlaufwerks, z. B. 20GB.NON_BOOT_DISK_IMAGE_NAMEDer Name des Images, das für das Nicht-Bootlaufwerk verwendet werden soll. NON_BOOT_DISK_IMAGE_NAMESPACEDer Namespace des Images, das für das Nicht-Bootlaufwerk verwendet werden soll. Verwenden Sie vm-systemfür ein von GDC bereitgestelltes Image oder lassen Sie das Feld für ein benutzerdefiniertes Image leer.NON_BOOT_BLANK_DISKDer Name des zusätzlichen leeren Nicht-Bootlaufwerks. NON_BOOT_BLANK_DISK_SIZEDie Größe des zusätzlichen leeren Nicht-Bootlaufwerks, z. B. 20GB.VM_NAMEDer Name der neuen VM. Der Name darf nur alphanumerische Zeichen und Bindestriche enthalten und darf nicht länger als 53 Zeichen sein. MACHINE_TYPEDer vordefinierte Maschinentyp für die neue VM. Führen Sie Folgendes aus, um einen verfügbaren Maschinentyp auszuwählen:
gdcloud compute machine-types listNO_BOOT_DISK_AUTO_DELETEEntweder trueoderfalse, um anzugeben, ob das Bootlaufwerk nicht automatisch gelöscht wird, wenn die VM-Instanz gelöscht wird.
API
So erstellen Sie eine VM mit einem Nicht-Bootlaufwerk:
kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ apply -f - <<EOF apiVersion: virtualmachine.gdc.goog/v1 kind: VirtualMachineDisk metadata: name: NON_BOOT_DISK_FROM_IMAGE spec: source: image: name: NON_BOOT_DISK_IMAGE_NAME namespace: NON_BOOT_DISK_IMAGE_NAMESPACE size: NON_BOOT_DISK_SIZE --- apiVersion: virtualmachine.gdc.goog/v1 kind: VirtualMachineDisk metadata: name: NON_BOOT_BLANK_DISK spec: size: NON_BOOT_BLANK_DISK_SIZE --- apiVersion: virtualmachine.gdc.goog/v1 kind: VirtualMachineDisk metadata: name: VM_BOOT_DISK_NAME spec: source: image: name: BOOT_DISK_IMAGE_NAME namespace: BOOT_DISK_IMAGE_NAMESPACE size: BOOT_DISK_SIZE --- apiVersion: virtualmachine.gdc.goog/v1 kind: VirtualMachine metadata: name: VM_NAME spec: compute: virtualMachineType: MACHINE_TYPE disks: - virtualMachineDiskRef: name: VM_BOOT_DISK_NAME boot: true autoDelete: BOOT_DISK_AUTO_DELETE - virtualMachineDiskRef: name: NON_BOOT_DISK_FROM_IMAGE - virtualMachineDiskRef: name: NON_BOOT_BLANK_DISK EOFErsetzen Sie Folgendes:
Variable Definition MANAGEMENT_API_SERVERDie kubeconfig-Datei des Management API-Servers. PROJECTDas GDC-Projekt, das in der VM erstellt werden soll. NON_BOOT_DISK_FROM_IMAGEDer Name des zusätzlichen Nicht-Bootlaufwerks, das aus einem Image erstellt wurde. NON_BOOT_DISK_IMAGE_NAMEDer Name des Images, das für das Nicht-Bootlaufwerk verwendet werden soll. NON_BOOT_DISK_IMAGE_NAMESPACEDer Namespace des Images, das für das Nicht-Bootlaufwerk verwendet werden soll. Verwenden Sie vm-systemfür ein von GDC bereitgestelltes Image oder lassen Sie das Feld leer, wenn Sie ein benutzerdefiniertes Image verwenden möchten.NON_BOOT_DISK_SIZEDie Größe des zusätzlichen Nicht-Bootlaufwerks, das aus einem Image erstellt wurde, z. B. 20Gi.NON_BOOT_BLANK_DISKDer Name des zusätzlichen leeren Nicht-Bootlaufwerks. NON_BOOT_BLANK_DISK_SIZEDie Größe des zusätzlichen leeren Nicht-Bootlaufwerks, z. B. 20Gi.VM_BOOT_DISK_NAMEDer Name des neuen VM-Bootlaufwerks. BOOT_DISK_IMAGE_NAMEDer Name des Images, das für das Bootlaufwerk der neuen VM verwendet werden soll. BOOT_DISK_IMAGE_NAMESPACEDer Namespace des Images, das für das Bootlaufwerk der neuen VM verwendet werden soll. Verwenden Sie den Namespace vm-systemfür ein von GDC bereitgestelltes Bild oder lassen Sie das Feld leer, wenn Sie ein benutzerdefiniertes Bild verwenden.BOOT_DISK_SIZEDie Größe des Bootlaufwerks, z. B. 20Gi.
Dieser Wert muss immer größer oder gleich demminimumDiskSizedes Bootlaufwerk-Images sein.VM_NAMEDer Name der neuen VM. Der Name darf nur alphanumerische Zeichen und Bindestriche enthalten und darf nicht länger als 53 Zeichen sein. MACHINE_TYPEDer vordefinierte Maschinentyp für die neue VM. Führen Sie Folgendes aus, um einen verfügbaren Maschinentyp auszuwählen:
kubectl --kubeconfig MANAGEMENT_API_SERVER get virtualmachinetype.virtualmachine.gdc.goog --namespace vm-systemBOOT_DISK_AUTO_DELETEEntweder trueoderfalse, um anzugeben, ob das Bootlaufwerk automatisch gelöscht wird, wenn die VM-Instanz gelöscht wird.Formatieren und stellen Sie die Laufwerke bereit, bevor Sie sie verwenden.
VM aus einem Snapshot oder einer Sicherung erstellen
Sie haben folgende Möglichkeiten, eine neue VM aus einem Snapshot zu erstellen:
- VM-Bootlaufwerk wiederherstellen: Wenn Sie das Bootlaufwerk einer VM mit einem Snapshot gesichert haben, können Sie mit diesem Snapshot eine neue VM erstellen. Weitere Informationen finden Sie unter Snapshot wiederherstellen.
- Nicht-Bootlaufwerk wiederherstellen: Wenn Sie ein Nicht-Bootlaufwerk mit einem Snapshot gesichert haben, können Sie den Snapshot beim Erstellen einer VM auch auf einem neuen Nicht-Bootlaufwerk wiederherstellen. Verwenden Sie dazu dieselbe Anleitung.
So erstellen Sie mehrere VMs mit demselben Bootlaufwerk:
- Benutzerdefiniertes Image erstellen
- Erstellen Sie VMs aus diesem Image, ohne einen Snapshot zu verwenden.
VM-Instanz mit einer bestimmten IP-Adresse und einem bestimmten Subnetz erstellen
Standardmäßig können Sie eine Distributed Cloud-VM ohne Netzwerkspezifikation erstellen. Diese Art von VM wird an die Standard-VPC (Virtual Private Cloud) angehängt und es wird dynamisch eine IP-Adresse aus dem Standard-Subnetz zugewiesen. Informationen zum Erstellen einer VM mit den Standardkonfigurationen finden Sie unter VM mit einem von GDC bereitgestellten Image erstellen.
Wenn Sie die Standard-IP-Konfiguration für Ihre Distributed Cloud-VM nicht verwenden möchten, können Sie eine VM mit einer dynamischen oder statischen IP-Adresse erstellen:
Dynamische IP aus einem benutzerdefinierten Subnetz: Sie erstellen ein Subnetz mit einem bestimmten
CIDRund eine VM mit einer IP-Adresse, die dynamisch aus diesemCIDRzugewiesen wird.Statische IP-Adresse aus einem benutzerdefinierten Subnetz: Sie erstellen ein Subnetz mit einem bestimmten
CIDRund eine VM mit einer statischen IP-Adresse aus diesemCIDR.
Weitere Informationen zum Erstellen von Subnetzen finden Sie unter Subnetze und IP-Adressen in GDC.
In diesem Abschnitt wird beschrieben, wie Sie eine VM mit einer dynamisch zugewiesenen Adresse oder einer statischen IP-Adresse erstellen.
VM mit einer dynamisch zugewiesenen IP-Adresse aus einem benutzerdefinierten Subnetz erstellen
So erstellen Sie eine VM mit einer dynamisch zugewiesenen IP-Adresse aus einem bestimmten CIDR:
kubectl --kubeconfig MANAGEMENT_API_SERVER \
-n PROJECT \
apply -f - <<EOF
apiVersion: virtualmachine.gdc.goog/v1
kind: VirtualMachineDisk
metadata:
name: VM_BOOT_DISK_NAME
spec:
source:
image:
name: BOOT_DISK_IMAGE_NAME
namespace: vm-system
size: BOOT_DISK_SIZE
---
apiVersion: virtualmachine.gdc.goog/v1
kind: VirtualMachine
metadata:
name: VM_NAME
spec:
compute:
virtualMachineType: MACHINE_TYPE
disks:
- virtualMachineDiskRef:
name: VM_BOOT_DISK_NAME
boot: true
autoDelete: BOOT_DISK_AUTO_DELETE
network:
interfaces:
- subnet: SUBNET_NAME
EOF
Ersetzen Sie die folgenden Variablen:
| Variable | Definition |
|---|---|
MANAGEMENT_API_SERVER |
Die kubeconfig-Datei des Management API-Servers. |
PROJECT |
Das Distributed Cloud-Projekt, in dem die VM erstellt werden soll. |
VM_BOOT_DISK_NAME |
Der Name des neuen VM-Bootlaufwerks. |
BOOT_DISK_IMAGE_NAME |
Der Name des Images, das für das Bootlaufwerk der neuen VM verwendet werden soll. |
BOOT_DISK_SIZE |
Die Größe des Bootlaufwerks, z. B. 20Gi.Dieser Wert muss immer größer oder gleich dem minimumDiskSize des Bootlaufwerk-Images sein. |
VM_NAME |
Der Name der neuen VM. Der Name darf nur alphanumerische Zeichen und Bindestriche enthalten und darf maximal 53 Zeichen lang sein. |
MACHINE_TYPE |
Der vordefinierte Maschinentyp für die neue VM. Wählen Sie einen verfügbaren Maschinentyp aus:
kubectl --kubeconfig MANAGEMENT_API_SERVER get
virtualmachinetype.virtualmachine.gdc.goog --namespace vm-system
|
BOOT_DISK_AUTO_DELETE |
Entweder true oder false, um anzugeben, ob das Bootlaufwerk automatisch gelöscht wird, wenn die VM-Instanz gelöscht wird. |
SUBNET_NAME |
Der Name des benutzerdefinierten Subnetzes. |
VM mit einer statischen IP-Adresse aus einem Subnetz erstellen
VM mit einer statischen IP-Adresse aus einem benutzerdefinierten Subnetz erstellen:
kubectl --kubeconfig MANAGEMENT_API_SERVER \
-n PROJECT \
apply -f - <<EOF
apiVersion: virtualmachine.gdc.goog/v1
kind: VirtualMachineDisk
metadata:
name: VM_BOOT_DISK_NAME
spec:
source:
image:
name: BOOT_DISK_IMAGE_NAME
namespace: vm-system
size: BOOT_DISK_SIZE
---
apiVersion: virtualmachine.gdc.goog/v1
kind: VirtualMachine
metadata:
name: VM_NAME
spec:
compute:
virtualMachineType: MACHINE_TYPE
disks:
- virtualMachineDiskRef:
name: VM_BOOT_DISK_NAME
boot: true
autoDelete: BOOT_DISK_AUTO_DELETE
network:
interfaces:
- subnet: SUBNET_NAME
ipAddresses:
- address: IP_ADDRESS
EOF
Ersetzen Sie die folgenden Variablen:
| Variable | Definition |
|---|---|
MANAGEMENT_API_SERVER |
Die kubeconfig-Datei des Management API-Servers. |
PROJECT |
Das Distributed Cloud-Projekt, in dem die VM erstellt werden soll. |
VM_BOOT_DISK_NAME |
Der Name des neuen VM-Bootlaufwerks. |
BOOT_DISK_IMAGE_NAME |
Der Name des Images, das für das Bootlaufwerk der neuen VM verwendet werden soll. |
BOOT_DISK_SIZE |
Die Größe des Bootlaufwerks, z. B. 20Gi.Dieser Wert muss immer größer oder gleich dem minimumDiskSize des Bootlaufwerk-Images sein. |
VM_NAME |
Der Name der neuen VM. Der Name darf nur alphanumerische Zeichen und Bindestriche enthalten und darf nicht länger als 53 Zeichen sein. |
MACHINE_TYPE |
Der vordefinierte Maschinentyp für die neue VM. Führen Sie Folgendes aus, um einen verfügbaren Maschinentyp auszuwählen:
kubectl --kubeconfig MANAGEMENT_API_SERVER get
virtualmachinetype.virtualmachine.gdc.goog --namespace vm-system
|
BOOT_DISK_AUTO_DELETE |
Entweder true oder false, um anzugeben, ob das Bootlaufwerk automatisch gelöscht wird, wenn die VM-Instanz gelöscht wird. |
SUBNET_NAME |
Der Name des benutzerdefinierten Subnetzes. |
IP_ADDRESS |
Die IP-Adresse Sie muss sich im ausgewählten Subnetzbereich befinden. Sie können im Feld ipAddresses nur eine IP-Adresse angeben. |