SDK Python VergeOS (pyvergeos)
pyvergeos est un SDK Python pour gérer VergeOS via l’API REST, offrant une interface typée, de style Python, pour automatiser les VM, le réseau, le stockage, les locataires et la reprise après sinistre.
Vue d'ensemble
pyvergeos est un SDK Python pour gérer l'infrastructure VergeOS via l'API REST. Il fournit une interface Pythonique, annotée avec des types, pour automatiser le cycle de vie des VM, le réseau, le stockage, les opérations multi-locataires et les flux de reprise après sinistre, ce qui le rend idéal pour les scripts d'automatisation, le développement d'outils et les intégrations.
Fonctionnalités clés
Gestion des VM: Création, configuration, contrôle d'alimentation, clonage et instantanés
Réseautage avancé: Réseaux virtuels, règles de pare-feu, DHCP, DNS, VPN IPSec et WireGuard
NAS et stockage: Gestion des volumes, partages CIFS/NFS et synchronisation
Multi-location: Provisionnement des locataires avec isolation des ressources
Reprise après sinistre: Instantanés cloud, synchronisation des sites et flux de récupération
Filtrage: Prise en charge du filtrage OData avec une API de génération de filtres fluide
Annotations de type: Indications de type complètes pour l'autocomplétion de l'IDE et l'analyse statique
Multiplateforme: Prise en charge de Windows, macOS et Linux
Prérequis
Python 3.9 ou version ultérieure
VergeOS 26.0 ou version ultérieure
Installation
Depuis PyPI (recommandé)
Avec uv
Depuis les sources
Authentification
Le SDK prend en charge plusieurs méthodes d'authentification :
Nom d'utilisateur/mot de passe
Jeton d'API
Variables d'environnement
Gestionnaire de contexte
Ressources disponibles
Le SDK donne accès aux ressources VergeOS suivantes :
Machines virtuelles
VM, disques, NIC, instantanés
Réseautage
Réseaux, règles, DNS, DHCP, alias, hôtes
VPN
Connexions IPSec, interfaces et pairs WireGuard
NAS/Stockage
Services, volumes, partages CIFS/NFS, synchronisations de volumes
Locataires
Gestion des locataires, instantanés, stockage, blocs réseau
Utilisateurs et groupes
Utilisateurs, groupes, permissions, clés API
Système
Clusters, nœuds, niveaux de stockage, certificats
Surveillance
Alertes, journaux, tâches
Sauvegarde et reprise après sinistre
Profils d'instantanés, instantanés cloud, sites, synchronisations de sites
Exemples d'utilisation
Gestion des machines virtuelles
Création et gestion des réseaux
Filtrage des ressources
Le SDK prend en charge plusieurs approches de filtrage :
Attente des tâches
De nombreuses opérations dans VergeOS s'exécutent de manière asynchrone. Utilisez le gestionnaire de tâches pour attendre la fin :
Gestion des erreurs
Le SDK fournit des types d'exceptions spécifiques pour différents cas d'erreur :
VergeError
Exception de base pour toutes les erreurs du SDK
AuthenticationError
Identifiants invalides ou jeton expiré
NotFoundError
La ressource demandée n'existe pas
ConflictError
Conflit d'état de la ressource (par ex., VM déjà en cours d'exécution)
ValidationError
Valeurs de paramètre invalides
TaskTimeoutError
La tâche n'a pas été terminée dans le délai imparti
TaskError
La tâche a échoué pendant l'exécution
Cas d'utilisation courants
Automatisation de l'infrastructure: Provisionner des VM, des réseaux et du stockage par programmation
Intégration CI/CD: Créer et détruire des environnements de test dans les pipelines
Surveillance et reporting: Interroger l'état des ressources et générer des rapports d'inventaire
Automatisation des sauvegardes: Planifier et gérer les instantanés et les sauvegardes cloud
Provisionnement multi-locataire: Automatiser la création des locataires et l'allocation des ressources
Documentation et ressources
Pour une documentation complète, y compris toutes les méthodes disponibles et des exemples d'utilisation détaillés, visitez le dépôt officiel :
Support
Si vous rencontrez des problèmes ou avez des demandes de fonctionnalités, veuillez ouvrir un ticket sur le dépôt GitHub :
Ressources supplémentaires
Module PowerShell PSVergeOS - alternative PowerShell
Fournisseur Terraform - Infrastructure as code
Mis à jour
Ce contenu vous a-t-il été utile ?