Angepasstes Bootlaufwerk erstellen

Wenn Sie eine virtuelle Maschine (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 Speicher mit Startfunktion, 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.

Hinweis

Wenn Sie gdcloud Befehlszeilenbefehle verwenden möchten, müssen Sie die gdcloud Befehlszeile heruntergeladen, installiert, und konfiguriert haben. Alle Befehle für die GDC-Appliance mit Air-Gap verwenden die gdcloud- oder kubectl-Befehlszeile und erfordern eine Betriebssystemumgebung.

Pfad zur kubeconfig-Datei abrufen

Wenn Sie Befehle für den Management API-Server ausführen möchten, benötigen Sie die folgenden Ressourcen:

  1. Suchen Sie den Namen des Management API-Servers oder fragen Sie Ihren Plattformadministrator nach dem Servernamen.

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

  3. Ersetzen Sie in dieser Anleitung MANAGEMENT_API_SERVER{"</var>"}} durch den Pfad.

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 zu prüfen, ob Sie die Rolle „Project VirtualMachine Admin“ (project-vm-admin) im Namespace des Projekts haben, in dem sich die VM befindet, oder bitten Sie Ihren Project IAM Admin, Ihnen diese Rolle zuzuweisen.

Für VM-Vorgänge mit der GDC Console oder der gdcloud-Befehlszeile bitten Sie Ihren Project IAM Admin, Ihnen sowohl die Rolle „Project VirtualMachine Admin“ als auch 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 Boot laufwerk 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, sehen Sie sich die Liste der verfügbaren Images an. 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-Appliance mit Air-Gap bereitgestellte als auch benutzerdefinierte Images. Wählen Sie eines im Namespace vm-system aus.

  2. Wählen Sie ein von der GDC-Appliance mit Air-Gap 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 Bootlaufwerks muss mindestens der Wert von minimumDiskSize des Images sein.
    IMAGE_NAME Der Name des Images.

kubectl

  1. Alle von GDC bereitgestellten Images auflisten:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
        get virtualmachineimages.virtualmachine.gdc.goog --namespace vm-system
    
  2. minimumDiskSize eines bestimmten von GDC bereitgestellten Images abrufen. Die Größe des erstellten benutzerdefinierten Bootlaufwerks muss mindestens der Wert von minimumDiskSize sein:

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

    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 kubeconfig-Datei des Management API-Servers.
    IMAGE_NAME Der Name des Images.
    PROJECT Das GDC-Projekt, in dem das Bootlaufwerk erstellt werden soll.
    BOOT_DISK_NAME Der Name des Bootlaufwerks.
    DISK_SIZE Die Größe des Bootlaufwerks muss mindestens der Wert von minimumDiskSize des Images sein.

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 es erstellen.

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

gdcloud

  1. Alle benutzerdefinierten Images und ihre Mindestlaufwerksgröß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 Bootlaufwerks muss mindestens der Wert von minimumDiskSize des Images sein.
    IMAGE_NAME Der Name des Images.

kubectl

  1. Alle benutzerdefinierten Images auflisten:

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

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

    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 kubeconfig-Datei des Management API-Servers.
    IMAGE_NAME Der Name des Images, das Sie mit dem dem Befehl zum Auflisten aller benutzerdefinierten Images ausgewählt haben.
    PROJECT Das GDC-Projekt, in dem das Bootlaufwerk erstellt werden soll.
    BOOT_DISK_NAME Der Name des Bootlaufwerks.
    DISK_SIZE Die Größe des Bootlaufwerks muss mindestens der Wert von minimumDiskSize des Images sein.

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