VergeOS Python SDK (pyvergeos)
pyvergeos ist ein Python-SDK zur Verwaltung von VergeOS über die REST-API und bietet eine Python-ähnliche, mit Typannotationen versehene Schnittstelle zur Automatisierung von VMs, Netzwerken, Speicher, Tenants und Notfallwiederherstellung.
Überblick
pyvergeos ist ein Python-SDK zur Verwaltung der VergeOS-Infrastruktur über die REST-API. Es bietet eine Python-ähnliche, mit Typannotationen versehene Oberfläche für die Automatisierung des VM-Lebenszyklus, von Netzwerken, Speicher, Multi-Tenant-Operationen und Disaster-Recovery-Workflows und ist damit ideal für Automatisierungsskripte, die Entwicklung von Tools und Integrationen.
Hauptfunktionen
VM-Verwaltung: Erstellung, Konfiguration, Stromsteuerung, Klonen und Snapshots
Erweiterte Netzwerktechnik: Virtuelle Netzwerke, Firewall-Regeln, DHCP, DNS, IPSec VPN und WireGuard
NAS & Speicher: Volumenverwaltung, CIFS/NFS-Freigaben und Synchronisierung
Multi-Tenancy: Mandantenbereitstellung mit Ressourcenisolierung
Disaster Recovery: Cloud-Snapshots, Standort-Synchronisierung und Wiederherstellungs-Workflows
Filterung: OData-Filterunterstützung mit einer Fluent-API für den Filter-Builder
Typannotationen: Vollständige Typ-Hinweise für IDE-Autovervollständigung und statische Analyse
Plattformübergreifend: Unterstützung für Windows, macOS und Linux
Anforderungen
Python 3.9 oder höher
VergeOS 26.0 oder höher
Installation
Von PyPI (empfohlen)
Mit uv
Aus dem Quellcode
Authentifizierung
Das SDK unterstützt mehrere Authentifizierungsmethoden:
Benutzername/Passwort
API-Token
Umgebungsvariablen
Empfohlen für die Produktion
Die Verwendung von Umgebungsvariablen hält Anmeldedaten aus Ihrem Quellcode heraus und erleichtert die Verwendung unterschiedlicher Anmeldedaten in verschiedenen Umgebungen.
Kontextmanager
Automatische Bereinigung
Die Verwendung des Kontextmanagers (with Anweisung) stellt sicher, dass die Verbindung ordnungsgemäß geschlossen wird, selbst wenn eine Ausnahme auftritt.
Verfügbare Ressourcen
Das SDK bietet Zugriff auf die folgenden VergeOS-Ressourcen:
Virtuelle Maschinen
VMs, Laufwerke, NICs, Snapshots
Netzwerk
Netzwerke, Regeln, DNS, DHCP, Aliase, Hosts
VPN
IPSec-Verbindungen, WireGuard-Interfaces und Peers
NAS/Speicher
Dienste, Volumes, CIFS/NFS-Freigaben, Volumen-Synchronisierungen
Mandanten
Mandantenverwaltung, Snapshots, Speicher, Netzwerkblöcke
Benutzer & Gruppen
Benutzer, Gruppen, Berechtigungen, API-Schlüssel
System
Cluster, Knoten, Speicherstufen, Zertifikate
Überwachung
Alarme, Protokolle, Aufgaben
Sicherung & DR
Snapshot-Profile, Cloud-Snapshots, Standorte, Standort-Synchronisierungen
Anwendungsbeispiele
Virtuelle Maschinen verwalten
Netzwerke erstellen und verwalten
Ressourcen filtern
Das SDK unterstützt mehrere Filteransätze:
Aufgaben warten
Viele Operationen in VergeOS laufen asynchron ab. Verwenden Sie den Task-Manager, um auf den Abschluss zu warten:
Fehlerbehandlung
Das SDK stellt spezifische Ausnahmetypen für verschiedene Fehlerbedingungen bereit:
VergeError
Basisausnahme für alle SDK-Fehler
AuthenticationError
Ungültige Anmeldedaten oder abgelaufener Token
NotFoundError
Angeforderte Ressource existiert nicht
ConflictError
Konflikt im Ressourcenstatus (z. B. VM läuft bereits)
ValidationError
Ungültige Parameterwerte
TaskTimeoutError
Aufgabe wurde innerhalb der Zeitüberschreitung nicht abgeschlossen
TaskError
Aufgabe ist während der Ausführung fehlgeschlagen
Häufige Anwendungsfälle
Infrastrukturautomatisierung: VMs, Netzwerke und Speicher programmatisch bereitstellen
CI/CD-Integration: Testumgebungen in Pipelines erstellen und zerstören
Überwachung und Berichterstellung: Ressourcenstatus abfragen und Bestandsberichte erstellen
Backup-Automatisierung: Snapshots und Cloud-Backups planen und verwalten
Multi-Tenant-Bereitstellung: Mandantenerstellung und Ressourcenzuweisung automatisieren
Dokumentation und Ressourcen
Die vollständige Dokumentation, einschließlich aller verfügbaren Methoden und detaillierter Anwendungsbeispiele, finden Sie im offiziellen Repository:
Support
Wenn Sie auf Probleme stoßen oder Funktionswünsche haben, eröffnen Sie bitte ein Issue im GitHub-Repository:
Weitere Ressourcen
PSVergeOS PowerShell-Modul - PowerShell-Alternative
Terraform-Provider - Infrastruktur als Code
Zuletzt aktualisiert
War das hilfreich?