Wenn Sie eine VM-Instanz erstellen, erstellt Distributed Cloud automatisch ein nichtflüchtiges Bootlaufwerk mit Standardkonfigurationen. Sie müssen auch ein Bootlaufwerk für die VM erstellen. Sie können entweder ein öffentliches oder ein benutzerdefiniertes Image verwenden.
Wenn Sie zusätzliche Datenspeicherlaufwerke für Ihre Instanzen benötigen, fügen Sie Ihrer VM einen nichtflüchtigen Speicher hinzu.
Dieses Dokument richtet sich an Entwickler in Plattformadministrator- oder Anwendungsoperatorgruppen, die benutzerdefinierte Bootlaufwerke für VMs erstellen. Weitere Informationen finden Sie unter Dokumentation zu Zielgruppen für GDC mit Air Gap.
Hinweis
Wenn Sie gdcloud-Befehle der Befehlszeile (CLI) verwenden möchten, müssen Sie die gdcloud-Befehlszeile heruntergeladen, installiert und konfiguriert haben.
Alle Befehle für Distributed Cloud verwenden die gdcloud- oder kubectl-CLI und erfordern eine Betriebssystemumgebung.
Pfad der kubeconfig-Datei abrufen
Wenn Sie Befehle auf dem Management API-Server ausführen möchten, 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.
Ersetzen Sie
MANAGEMENT_API_SERVERin dieser Anleitung durch den Pfad zur kubeconfig-Datei des Management API-Servers.
IAM-Rollen anfordern
Bitten Sie Ihren IAM-Projektadministrator, Ihnen die folgenden Rollen für Ihr Projekt zuzuweisen:
Virtual Machine Project Admin (
project-vm-admin): Standard- und Hochleistungs-VMs im Projekt-Namespace erstellen, ändern, auflisten und löschen.Project Viewer(
project-viewer): Kann alle Ressourcen im Projekt-Namespace aufrufen.
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.
Bootlaufwerk erstellen
Mit den auf dieser Seite beschriebenen Verfahren können Sie Bootlaufwerke erstellen, die Sie später zum Erstellen von VMs verwenden können.
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 beschrieben, wie Sie ein Bootlaufwerk entweder 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
Listen Sie alle verfügbaren Images und ihre Mindestlaufwerksgröße auf:
gdcloud compute images listDieser Befehl umfasst sowohl von Distributed Cloud bereitgestellte als auch benutzerdefinierte Images. Wählen Sie einen der beiden im Namespace
vm-systemaus.Wählen Sie ein von Distributed Cloud 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-systemErsetzen Sie die Variablen durch die folgenden Definitionen:
Variable Definition BOOT_DISK_NAMEDer Name des Bootlaufwerks. PROJECTDas GDC-Projekt, in dem das Bootlaufwerk erstellt werden soll. DISK_SIZEDie Größe des Bootlaufwerks muss mindestens der minimumDiskSizedes Images entsprechen.IMAGE_NAMEDer Name des Bildes.
kubectl
Listen Sie alle verfügbaren von GDC bereitgestellten Images auf:
kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n vm-system \ get virtualmachineimages.virtualmachine.gdc.googRufen Sie die
minimumDiskSizeeines bestimmten von GDC bereitgestellten Images ab. Die Größe des erstellten benutzerdefinierten Bootlaufwerks muss mindestens derminimumDiskSizeentsprechen:kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n vm-system \ get virtualmachineimages.virtualmachine.gdc.goog IMAGE_NAME \ -ojsonpath='{.spec.minimumDiskSize}'Erstellen Sie ein
VirtualMachineDisk-Objekt:kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ apply -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 EOFErsetzen Sie die Variablen durch die folgenden Definitionen:
Variable Definition MANAGEMENT_API_SERVERDie kubeconfig-Datei des Management API-Servers. IMAGE_NAMEDer Name des Bildes. PROJECTDas GDC-Projekt, in dem das Bootlaufwerk erstellt werden soll. BOOT_DISK_NAMEDer Name des Bootlaufwerks. DISK_SIZEDie Größe des Bootlaufwerks muss mindestens der minimumDiskSizedes Images entsprechen.
Bootlaufwerk 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, falls Sie noch keines haben.
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
Listen Sie alle benutzerdefinierten Images und ihre Mindestlaufwerksgröße auf:
gdcloud compute images list \ --project=PROJECTWä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=PROJECTErsetzen Sie die Variablen durch die folgenden Definitionen:
Variable Definition BOOT_DISK_NAMEDer Name des Bootlaufwerks. PROJECTDas GDC-Projekt, in dem das Bootlaufwerk erstellt werden soll. DISK_SIZEDie Größe des Bootlaufwerks muss mindestens der minimumDiskSizedes Images entsprechen.IMAGE_NAMEDer Name des Bildes.
API
Alle benutzerdefinierten Images auflisten:
kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ get virtualmachineimages.virtualmachine.gdc.googRufen Sie die
minimumDiskSizeeines bestimmten benutzerdefinierten Images ab. Die Größe des erstellten benutzerdefinierten Bootlaufwerks muss mindestensminimumDiskSizebetragen:kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n vm-system \ get virtualmachineimages.virtualmachine.gdc.goog IMAGE_NAME \ -ojsonpath='{.spec.minimumDiskSize}'Erstellen Sie ein
VirtualMachineDisk-Objekt:kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ apply -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 EOFErsetzen Sie die Variablen durch die folgenden Definitionen:
Variable Definition MANAGEMENT_API_SERVERDie kubeconfig-Datei des Management API-Servers. IMAGE_NAMEDer Name des Images, das mit dem Befehl Alle benutzerdefinierten Images auflisten ausgewählt wurde. PROJECTDas GDC-Projekt, in dem das Bootlaufwerk erstellt werden soll. BOOT_DISK_NAMEDer Name des Bootlaufwerks. DISK_SIZEDie Größe des Bootlaufwerks muss mindestens der minimumDiskSizedes Images entsprechen.