Angepasstes Bootlaufwerk erstellen

Wenn Sie eine VM-Instanz erstellen, müssen Sie auch ein Bootlaufwerk für diese VM erstellen. Sie können entweder ein öffentliches oder ein benutzerdefiniertes Image verwenden. GDC erstellt automatisch einen nichtflüchtigen Bootspeicher, wenn Sie eine VM-Instanz erstellen. Wenn Sie zusätzliche Datenspeicherlaufwerke für Ihre Instanzen benötigen, fügen Sie Ihrer VM einen nichtflüchtigen Speicher hinzu.

Mit den auf dieser Seite beschriebenen Verfahren können Sie Bootlaufwerke erstellen, die Sie später zum Erstellen von VMs verwenden können.

Hinweise

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 die GDC-Air-Gap-Appliance wird die gdcloud- oder kubectl-Befehlszeile verwendet. Außerdem 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:

  1. Suchen Sie den Namen des Management API-Servers oder fragen Sie Ihren Plattformadministrator danach.

  2. Melden Sie sich an und generieren Sie die kubeconfig-Datei für den Management API-Server, falls Sie noch keine haben.

  3. Verwenden Sie den Pfad, um MANAGEMENT_API_SERVER{"</var>"}} in dieser Anleitung zu ersetzen.

Berechtigungen und Zugriff anfordern

Zum Ausführen der auf dieser Seite aufgeführten Aufgaben benötigen Sie Zugriff auf VM-Laufwerke. Folgen Sie der Anleitung, um entweder die Rolle „Project VirtualMachine Admin“ (project-vm-admin) im Namespace des Projekts, in dem sich die VM befindet, zu bestätigen oder von Ihrem Projekt-IAM-Administrator zuweisen zu lassen.

Wenn Sie VM-Vorgänge über die GDC-Konsole oder die gdcloud-CLI ausführen möchten, bitten Sie Ihren Projekt-IAM-Administrator, Ihnen die Rolle „Project VirtualMachine Admin“ und die Rolle „Project Viewer“ (project-viewer) zuzuweisen.

Bootlaufwerk aus einem Image erstellen

Sie können einen eigenständigen nichtflüchtigen Speicher mit Startfunktion auch außerhalb des Instanzerstellungsvorgangs erstellen und ihn später einer Instanz hinzufügen. In diesem Abschnitt wird gezeigt, wie Sie ein Bootlaufwerk aus einem von GDC bereitgestellten Betriebssystem-Image oder einem benutzerdefinierten Betriebssystem-Image erstellen.

Bootlaufwerk aus einem von GDC bereitgestellten Image erstellen

Bevor Sie ein Bootlaufwerk mit einem von GDC bereitgestellten Image erstellen, sollten Sie die Liste der verfügbaren Images prüfen. Erstellen Sie dann ein Bootlaufwerk mit dem bereitgestellten Image.

gdcloud

  1. Alle verfügbaren Images und ihre Mindestlaufwerksgröße auflisten:

    gdcloud compute images list
    

    Dieser Befehl umfasst sowohl von der GDC-Air-Gap-Appliance bereitgestellte als auch benutzerdefinierte Images. Wählen Sie einen der beiden im Namespace vm-system aus.

  2. Wählen Sie ein von der GDC-Appliance bereitgestelltes Image aus, um das VM-Laufwerk zu erstellen:

    gdcloud compute disks create BOOT_DISK_NAME \
        --project=PROJECT \
        --size=DISK_SIZE \
        --image=IMAGE_NAME \
        --image-project=vm-system
    

    Ersetzen Sie die Variablen anhand der folgenden Definitionen:

    VariableDefinition
    BOOT_DISK_NAME Der Name des Bootlaufwerks.
    PROJECT Das GDC-Projekt, in dem das Bootlaufwerk erstellt werden soll.
    DISK_SIZE Die Größe des Startlaufwerks muss mindestens minimumDiskSize des Images betragen.
    IMAGE_NAME Der Name des Bildes.

kubectl

  1. Alle von GDC bereitgestellten Images auflisten:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
        get virtualmachineimages.virtualmachine.gdc.goog --namespace vm-system
    
  2. Ruft die minimumDiskSize eines bestimmten von GDC bereitgestellten Bildes ab. Die Größe des erstellten benutzerdefinierten Bootlaufwerks muss mindestens minimumDiskSize betragen:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
      get virtualmachineimages.virtualmachine.gdc.goog --namespace vm-system \
      IMAGE_NAME -ojsonpath='{.spec.minimumDiskSize}'
    
  3. Erstellen Sie ein VirtualMachineDisk-Objekt:

    kubectl --kubeconfig MANAGEMENT_API_SERVER apply -n PROJECT -f - <<EOF
    apiVersion: virtualmachine.gdc.goog/v1
    kind: VirtualMachineDisk
    metadata:
      name: BOOT_DISK_NAME
    spec:
      source:
        image:
          name: IMAGE_NAME
          namespace: vm-system
      size: DISK_SIZE
    EOF
    

    Ersetzen Sie die Variablen anhand der folgenden Definitionen:

    VariableDefinition
    MANAGEMENT_API_SERVER Die Datei kubeconfig des Management API-Servers.
    IMAGE_NAME Der Name des Bildes.
    PROJECT Das GDC-Projekt, in dem das Bootlaufwerk erstellt werden soll.
    BOOT_DISK_NAME Der Name des Bootlaufwerks.
    DISK_SIZE Die Größe des Startlaufwerks muss mindestens minimumDiskSize des Images betragen.

Bootlaufwerk aus einem benutzerdefinierten Image erstellen

Ein benutzerdefiniertes Image gehört ausschließlich zu Ihrem Projekt. Wenn Sie eine VM mit einem benutzerdefinierten Bootlaufwerk-Image erstellen möchten und das Image noch nicht in Ihrem Projekt vorhanden ist, müssen Sie eins erstellen.

Richten Sie die erforderlichen IAM-Rollen ein, um auf benutzerdefinierte Images in Ihrem Projekt zuzugreifen, falls Sie dies noch nicht getan haben. Fahren Sie dann mit dieser Anleitung fort.

gdcloud

  1. Alle benutzerdefinierten Images und ihre Mindestlaufwerkgröße auflisten:

    gdcloud compute images list \
        --project=PROJECT \
    
  2. Wählen Sie ein benutzerdefiniertes Image aus, um das VM-Laufwerk zu erstellen:

    gdcloud compute disks create BOOT_DISK_NAME \
        --project=PROJECT \
        --size=DISK_SIZE \
        --image=IMAGE_NAME \
        --image-project=PROJECT
    

    Ersetzen Sie die Variablen anhand der folgenden Definitionen:

    VariableDefinition
    BOOT_DISK_NAME Der Name des Bootlaufwerks.
    PROJECT Das GDC-Projekt, in dem das Bootlaufwerk erstellt werden soll.
    DISK_SIZE Die Größe des Startlaufwerks muss mindestens minimumDiskSize des Images betragen.
    IMAGE_NAME Der Name des Bildes.

kubectl

  1. Alle benutzerdefinierten Bilder auflisten:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
        get virtualmachineimages.virtualmachine.gdc.goog --namespace PROJECT
    
  2. minimumDiskSize eines bestimmten benutzerdefinierten Bildes abrufen Die Größe des erstellten benutzerdefinierten Bootlaufwerks muss mindestens minimumDiskSize betragen:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
      get virtualmachineimages.virtualmachine.gdc.goog --namespace vm-system \
      IMAGE_NAME -ojsonpath='{.spec.minimumDiskSize}'
    
  3. Erstellen Sie ein VirtualMachineDisk-Objekt:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
        apply --namespace PROJECT -f - <<EOF
    apiVersion: virtualmachine.gdc.goog/v1
    kind: VirtualMachineDisk
    metadata:
      name: BOOT_DISK_NAME
    spec:
      source:
        image:
          name: IMAGE_NAME
          namespace: PROJECT
      size: DISK_SIZE
    EOF
    

    Ersetzen Sie die Variablen anhand der folgenden Definitionen:

    VariableDefinition
    MANAGEMENT_API_SERVER Die Datei kubeconfig des Management API-Servers.
    IMAGE_NAME Der Name des Bildes, das mit dem Befehl list all custom images ausgewählt wurde.
    PROJECT Das GDC-Projekt, in dem das Bootlaufwerk erstellt werden soll.
    BOOT_DISK_NAME Der Name des Bootlaufwerks.
    DISK_SIZE Die Größe des Startlaufwerks muss mindestens minimumDiskSize des Images betragen.

Informationen zum Ersetzen eines Bootlaufwerks finden Sie auf der Seite Bootlaufwerk ersetzen.