For the complete documentation index, see llms.txt. This page is also available as Markdown.

API zur VM-Erstellung

Vollständige Anleitung zum Erstellen virtueller Maschinen in VergeOS, einschließlich grundlegender Erstellung, rezeptbasierter Konfigurationen, Laufwerke, Geräte und Netzwerkschnittstellen

Wichtige Punkte

  • VMs mit wesentlichen Konfigurationsparametern über die REST-API erstellen

  • Unterstützung für rezeptbasierte VM-Erstellung mit komplexen Konfigurationen

  • Laufwerke, Geräte und Netzwerkschnittstellen nach der VM-Erstellung hinzufügen

  • Unterschiede zwischen VM-Schlüssel und Maschinen-Schlüssel für verschiedene Vorgänge verstehen

Dieser Leitfaden behandelt das Erstellen virtueller Maschinen in VergeOS, von der grundlegenden VM-Erstellung bis zum Hinzufügen von Laufwerken, Geräten und Netzwerkschnittstellen. Die VergeOS-API bietet umfassende Endpunkte für VM-Erstellung und Hardwarekonfiguration.

Stufe: VM-Erstellung (1 von 4) Eingabe: API-Zugangsdaten, Cluster-Infos, VM-Spezifikationen Ausgabe: VM-Schlüssel (42) + Maschinen-Schlüssel (54) Weiter: Verwenden Sie die Schlüssel für die Energieverwaltung Häufige nächste Schritte:

Dieses Dokument hilft bei

  • "Wie man eine VM über die API erstellt"

  • "Laufwerke während der VM-Einrichtung hinzufügen"

  • "GPU-/PCI-Geräte an VMs anhängen"

  • "VM-Erstellung mit Cloud-Init"

  • "VM- und Maschinen-Schlüssel verstehen"

  • "Netzwerkschnittstellen für neue VMs einrichten"

  • "Rezeptbasierte VM-Bereitstellung"

  • "Automatisierung der massenhaften VM-Erstellung"

  • "VM-Bereitstellung als Code"

Kurzreferenz

Primäre Endpunkte

  • VM erstellen: POST /api/v4/vms

  • Laufwerk hinzufügen: POST /api/v4/machine_drives

  • Gerät hinzufügen: POST /api/v4/machine_devices

  • NIC hinzufügen: POST /api/v4/machine_nics

Wichtige Parameter

  • name: VM-Kennung (erforderlich)

  • cluster: Ziel-Cluster-ID

  • machine: Maschinen-ID aus der VM-Erstellung (für Hardware-Ergänzungen)

  • resource_group: UUID für Geräte-Passthrough

Authentifizierung

Nächste Schritte

Nach der VM-Erstellung → Energieverwaltung (VM-Energieverwaltung)

API-Kurzreferenz

Vorgang
Methode
Endpunkt
Schlüsseltyp
Zweck

VM erstellen

POST

/api/v4/vms

Gibt beide zurück

Erste Erstellung

Laufwerk hinzufügen

POST

/api/v4/machine_drives

Maschinen-Schlüssel

Hardware

Gerät hinzufügen

POST

/api/v4/machine_devices

Maschinen-Schlüssel

GPU-/PCI-Passthrough

NIC hinzufügen

POST

/api/v4/machine_nics

Maschinen-Schlüssel

Netzwerkschnittstelle

Einschalten

POST

/api/v4/vm_actions

VM-Schlüssel

Steuerung

Status prüfen

GET

/api/v4/machine_status/{id}

Maschinen-Schlüssel

Überwachen

Index zur Fehlerbehebung

  • 409 Konflikt: VM-Name existiert, läuft bereits, Berechtigung verweigert

  • 400 Ungültige Anfrage: Ungültige Parameter, fehlende Pflichtfelder, ungültiges JSON

  • 507 Unzureichender Speicher: Tier voll, Größe reduzieren, anderen Tier wählen

  • 403 Verboten: API-Schlüssel-Berechtigungen, Clusterzugriff verweigert

  • 404 Nicht gefunden: Ungültige Cluster-ID, fehlende Medienquelle, ungültige Ressourcengruppe

  • 422 Nicht verarbeitbare Entität: Ungültige Laufwerkschnittstelle, nicht unterstützter Medientyp

Voraussetzungen

  • Gültige VergeOS-API-Zugangsdaten mit Berechtigungen zur VM-Verwaltung

  • Verständnis der VergeOS-Konzepte: Cluster, Vnets, Medienquellen und Ressourcengruppen

  • Grundkenntnisse der REST-API-Prinzipien und JSON-Formatierung

Authentifizierung

Alle VM-Erstellungsvorgänge erfordern eine Authentifizierung entweder über:

  • API-Schlüssel: In den Authorization Header als Bearer YOUR_API_KEY

  • Basisauthentifizierung: Benutzername und Passwort für interaktive Sitzungen

  • Sitzungstoken: Für webbasierte Integrationen

Grundlegende VM-Erstellung

POST /api/v4/vms

Beschreibung: Erstellt eine neue virtuelle Maschine mit der angegebenen Konfiguration.

Anfrageparameter:

Name
Typ
Erforderlich
Beschreibung

name

string

Ja

Eindeutiger VM-Name

description

string

Nein

VM-Beschreibung

cluster

string

Nein

Ziel-Cluster-ID (numerische Zeichenkette)

ram

ganze Zahl

Nein

RAM in MB (Standard: 1024)

cpu_cores

ganze Zahl

Nein

Anzahl der CPU-Kerne (Standard: 1)

guest_agent

string

Nein

Gast-Agent aktivieren ("true"/"false")

console_pass_hash

string

Nein

Konsolen-Passwort-Hash (leere Zeichenkette, falls nicht verwendet)

video

string

Nein

Videoadaptertyp (virtio, std, cirrus usw.)

rtc_base

string

Nein

RTC-Basiseinstellung (utc, localtime)

uefi

string

Nein

UEFI-Start aktivieren ("true"/"false")

Beispiel für den Anfragekörper:

Beispiel für die Antwort:

Antwortfelder:

Feld
Typ
Beschreibung

location

string

API-Endpunkt für die erstellte VM

dbpath

string

Datenbankpfad für den VM-Datensatz

$row

ganze Zahl

Datenbankzeilennummer

$key

string

VM-ID (für nachfolgende API-Aufrufe verwendet)

response.machine

string

Maschinen-ID (für Laufwerke, NICs, Geräte verwendet)

Fehlerantworten:

  • 400 Ungültige Anfrage: Ungültige Konfigurationsparameter

  • 409 Konflikt: VM-Name existiert bereits

  • 403 Verboten: Unzureichende Berechtigungen

Rezeptbasierte VM-Erstellung

VergeOS unterstützt die komplexe VM-Erstellung mithilfe von Rezepten, die Laufwerke, Netzwerkschnittstellen und Geräte enthalten.

Vollständige VM mit Rezeptkonfiguration

Laufwerke hinzufügen

Laufwerke müssen nach der VM-Erstellung separat über den Endpunkt für Maschinenlaufwerke erstellt werden.

POST /api/v4/machine_drives

Anfrageparameter:

Name
Typ
Erforderlich
Beschreibung

machine

string

Ja

Maschinen-ID aus der VM-Erstellung

name

string

Nein

Laufwerksname

media

string

Nein

Medientyp (disk, cdrom, import, clone, efidisk)

interface

string

Nein

Laufwerkschnittstelle (virtio-scsi, ide, ahci usw.)

disksize

ganze Zahl

Nein

Datenträgergröße in Bytes (für neue Datenträger)

preferred_tier

string

Nein

Speicher-Tier (1–5)

media_source

string

Nein

Quellmedien-ID (für Import/Clone/CDROM)

show_pt

string

Nein

Bevorzugtes Tier überschreiben ("true"/"false") – überschreibt das Standard-Tier der Medienquelle

Ein Boot-Laufwerk erstellen

Beispiel für die Antwort:

CDROM/ISO anhängen

Beispiel für die Antwort:

Importieren aus Medienquelle

Geräte hinzufügen (GPU, PCI-Passthrough usw.)

POST /api/v4/machine_devices

Beschreibung: Bindet Hardwaregeräte wie GPUs, PCI-Geräte, USB-Geräte oder TPM an eine virtuelle Maschine an.

Anfrageparameter:

Name
Typ
Erforderlich
Beschreibung

machine

string

Ja

Maschinen-ID

resource_group

string

Ja

UUID der Ressourcengruppe für das Gerät

settings_args

Objekt

Nein

Gerätespezifische Einstellungen (leeres Objekt für grundlegenden Passthrough)

PCI-Passthrough-GPU

Beispiel für die Antwort:

Verfügbare Geräte finden

Netzwerkschnittstellen hinzufügen

POST /api/v4/machine_nics

Anfrageparameter:

Name
Typ
Erforderlich
Beschreibung

machine

string

Ja

Maschinen-ID

vnet

string

Ja

Virtuelle Netzwerk-ID (Schlüssel des Zielnetzwerks)

name

string

Nein

NIC-Name

interface

string

Nein

NIC-Schnittstellentyp (virtio, e1000 usw.)

aktiviert

boolesch

Nein

Aktivierter Zustand der NIC

Beispiel:

Beispiel für die Antwort:

Schlüssel virtueller Netzwerke

Der vnet Der Parameter verwendet den Schlüssel/die ID des Netzwerks. Zum Beispiel könnte vnet "3" Ihr externes Netzwerk sein. Sie können Netzwerkschlüssel finden, indem Sie verfügbare Netzwerke über den Netzwerke-API-Endpunkt auflisten.

Vollständiges Beispiel für die VM-Erstellung

Hier ist ein vollständiger Ablauf zum Erstellen einer VM mit Laufwerken, Geräten und Netzwerkschnittstellen:

Verwandte Vorgänge

Brauchen Sie Hilfe?

Für zusätzliche Unterstützung bei der VM-Erstellung:

  • Prüfen Sie das VergeOS-Dokumentationsportal

  • Wenden Sie sich mit konkreten Fehlermeldungen an den VergeOS-Support

  • Prüfen Sie die Systemprotokolle auf detaillierte Fehlerinformationen

  • Konsultieren Sie die VergeOS-Community-Foren

Zuletzt aktualisiert

War das hilfreich?