Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Documentation Complète - Sequencer v1.0.0
- ## Table des matières
- 1. [Vue d'ensemble](#vue-densemble)
- 2. [Installation et Configuration Initiale](#installation-et-configuration-initiale)
- 3. [Premier Démarrage - Création du Site et Admin](#premier-démarrage---création-du-site-et-admin)
- 4. [Ajout des Assets](#ajout-des-assets)
- 5. [Découverte des Machines Virtuelles](#découverte-des-machines-virtuelles)
- 6. [Configuration UPS et SNMP](#configuration-ups-et-snmp)
- 7. [Création et Gestion des Scénarios](#création-et-gestion-des-scénarios)
- 8. [Planification de Tâches](#planification-de-tâches)
- 9. [Surveillance Automatique UPS](#surveillance-automatique-ups)
- 10. [Interface Utilisateur](#interface-utilisateur)
- 11. [Services en Arrière-plan](#services-en-arrière-plan)
- 12. [Dépannage](#dépannage)
- ---
- ## Vue d'ensemble
- **Sequencer** est une solution complète d'orchestration pour la gestion automatisée de l'infrastructure informatique, incluant :
- - **Machines Virtuelles VMware** (ESXi, vCenter)
- - **Machines Physiques** (Linux, Windows)
- - **Onduleurs (UPS)** avec surveillance SNMP
- - **Scénarios d'allumage/extinction** automatisés
- - **Planification de tâches** récurrentes
- - **Surveillance automatique** des conditions UPS
- ### Architecture
- - **Backend**: FastAPI (Python 3.8+)
- - **Base de données**: PostgreSQL 14+
- - **Intégration VMware**: pyVmomi
- - **Surveillance SNMP**: pysnmp
- - **Authentification**: Sessions avec cookies sécurisés
- - **Interface**: HTML/JavaScript avec Bootstrap 5
- ---
- ## Installation et Configuration Initiale
- ### Prérequis
- - Ubuntu 22.04/24.04
- - PostgreSQL 14+
- - Python 3.8+
- - Accès réseau aux hôtes VMware et machines physiques
- ### Installation des Dépendances
- ```bash
- cd /opt/Orchestrator
- # Installation des dépendances système
- make install
- # Initialisation de la base de données
- sudo bash scripts/init_postgres.sh orchestrator_db orchestrator_user 'MotDePasse!Fort'
- # Application du schéma de base de données
- make db-apply
- # Installation et démarrage du service
- sudo make service
- ```
- ### Vérification
- ```bash
- # Vérifier le statut du service
- sudo systemctl status orchestrator
- # Vérifier les logs
- sudo journalctl -u orchestrator -f
- # Tester l'API
- curl http://127.0.0.1:8000/health
- ```
- ---
- ## Premier Démarrage - Création du Site et Admin
- ### Accès à la Page de Configuration Initiale
- Lors du premier démarrage, l'application détecte automatiquement qu'aucun site n'existe et redirige vers la page de configuration initiale :
- **URL**: `http://<IP_SERVEUR>:8000/first-run`
- ### Formulaire de Configuration
- La page `/first-run` permet de configurer :
- #### 1. Informations Administrateur
- - **Nom d'utilisateur** : Identifiant de connexion (ex: `admin`)
- - **Mot de passe** : Mot de passe sécurisé
- - **Prénom** : Prénom de l'administrateur
- - **Nom** : Nom de l'administrateur
- - **Email** : Adresse email (optionnel)
- #### 2. Informations du Site
- - **Nom du site** : Nom complet du site (ex: "Datacenter Principal")
- - **Code du site** : Trigramme du site (3 caractères, ex: "DCP")
- - **Adresse** : Adresse physique du site (optionnel)
- ### Processus de Création
- 1. **Création de l'utilisateur administrateur**
- - Hashage du mot de passe avec bcrypt
- - Attribution des droits administrateur (`is_admin = True`)
- - Activation automatique (`is_active = True`)
- 2. **Création du site**
- - Normalisation du code en majuscules (max 3 caractères)
- - Association avec l'utilisateur créateur
- - Enregistrement de l'adresse si fournie
- 3. **Redirection automatique**
- - Après création réussie, redirection vers la page de connexion
- - L'utilisateur peut se connecter avec les identifiants créés
- ### Exemple de Configuration
- ```
- Informations Administrateur:
- - Username: admin
- - Password: SecurePassword123!
- - Prénom: Administrateur
- - Nom: Système
- - Email: [email protected]
- Informations Site:
- - Nom: Datacenter Principal
- - Code: DCP
- - Adresse: 123 Rue Example, 75000 Paris
- ```
- ---
- ## Ajout des Assets
- ### Types d'Assets Supportés
- 1. **ESXi / vCenter** (`vmware`)
- 2. **Machine Physique** (`physical`)
- 3. **Onduleur (UPS)** (`ups`)
- ### Ajout d'un Hôte VMware (ESXi/vCenter)
- **Page**: `/assets/add` → Sélectionner "VMware (ESXi/vCenter)"
- #### Informations Requises
- - **Label** : Nom d'affichage (ex: "ESXi-Production-01")
- - **Adresse IP** : IP ou hostname de l'hôte
- - **Nom d'utilisateur** : Utilisateur VMware (ex: `root`)
- - **Mot de passe** : Mot de passe VMware
- - **Type VMware** : ESXi ou vCenter (détection automatique si non spécifié)
- #### Processus d'Ajout
- 1. **Validation de la connexion**
- - Test de connexion via pyVmomi
- - Détection automatique du type (ESXi/vCenter)
- - Vérification des credentials
- 2. **Enregistrement en base**
- - Création de l'asset avec type `vmware`
- - Stockage des credentials (hashés)
- - Association au site actuel
- 3. **Configuration SSH (optionnel)**
- - Permet l'extinction via SSH en fallback
- - Utilise les mêmes credentials par défaut
- ### Ajout d'une Machine Physique
- **Page**: `/assets/add` → Sélectionner "Machine Physique"
- #### Informations Requises
- - **Label** : Nom d'affichage (ex: "Serveur-Production-01")
- - **Adresse IP** : IP de la machine
- - **Adresse MAC** : MAC pour Wake-on-LAN (requis pour allumage)
- - **Nom d'utilisateur SSH** : Utilisateur pour connexion SSH
- - **Mot de passe SSH** : Mot de passe SSH
- - **Port SSH** : Port SSH (défaut: 22)
- #### Fonctionnalités
- - **Allumage** : Wake-on-LAN (nécessite MAC)
- - **Extinction** : SSH avec commandes système (`shutdown`, `poweroff`, `halt`)
- - **Détection OS** : Détection automatique Linux/Windows
- ### Ajout d'un Onduleur (UPS)
- **Page**: `/assets/add` → Sélectionner "Onduleur (UPS)"
- #### Informations de Base
- - **Label** : Nom d'affichage (ex: "UPS-Salle-Serveurs")
- - **Adresse IP** : IP de l'UPS
- - **Port** : Port SNMP (défaut: 161)
- - **Community SNMP** : Community SNMP (défaut: `public`)
- - **Modèle** : Modèle de l'UPS (optionnel)
- - **Fabricant** : Fabricant de l'UPS (optionnel)
- #### Configuration SNMP OID (Optionnel mais Recommandé)
- Ces OIDs sont nécessaires pour la surveillance avancée et l'automatisation :
- ##### 1. OID Fabricant (RFC1628)
- - **OID** : `1.3.6.1.2.1.33.1.1.1.0` (par défaut)
- - **Usage** : Identification du fabricant de l'UPS
- - **Obligatoire** : Non, mais recommandé
- ##### 2. OID Statut Secteur/Batterie
- - **OID** : Variable selon le fabricant (ex: `1.3.6.1.2.1.33.1.4.4.0`)
- - **Valeurs "Sur Secteur"** : Liste des valeurs quand l'UPS est sur secteur (ex: `["3", "online"]`)
- - **Valeurs "Sur Batterie"** : Liste des valeurs quand l'UPS est sur batterie (ex: `["2", "battery"]`)
- - **Usage** : Déterminer si l'UPS est sur secteur ou batterie
- - **Obligatoire** : Pour la surveillance automatique
- ##### 3. OID Charge Batterie
- - **OID** : Variable selon le fabricant (ex: `1.3.6.1.2.1.33.1.2.4.0`)
- - **Usage** : Récupérer le pourcentage de charge de la batterie
- - **Obligatoire** : Pour les seuils de déclenchement
- ##### 4. OID Temps Restant Batterie
- - **OID** : Variable selon le fabricant (ex: `1.3.6.1.2.1.33.1.2.3.0`)
- - **Unité** : Secondes, Minutes, ou Dixièmes de minutes
- - **Usage** : Récupérer le temps restant sur batterie
- - **Obligatoire** : Pour les seuils de déclenchement
- #### Exemple de Configuration UPS
- ```
- Informations de Base:
- - Label: UPS-Salle-Serveurs
- - IP: 192.168.1.100
- - Port: 161
- - Community: public
- - Modèle: Smart-UPS 3000
- - Fabricant: APC
- Configuration SNMP:
- - OID Fabricant: 1.3.6.1.2.1.33.1.1.1.0
- - OID Statut: 1.3.6.1.2.1.33.1.4.4.0
- - Sur Secteur: ["3", "online"]
- - Sur Batterie: ["2", "battery"]
- - OID Charge: 1.3.6.1.2.1.33.1.2.4.0
- - OID Temps Restant: 1.3.6.1.2.1.33.1.2.3.0
- - Unité: seconds
- ```
- ---
- ## Découverte des Machines Virtuelles
- ### Accès à la Découverte
- **Page**: `/discovery` ou `/vm-discovery`
- ### Processus de Découverte
- 1. **Sélection de l'hôte VMware**
- - Liste déroulante des hôtes ESXi/vCenter ajoutés
- - Affichage du label et de l'IP
- 2. **Lancement de la découverte**
- - Connexion à l'hôte via pyVmomi
- - Parcours de l'inventaire VMware
- - Récupération des informations de chaque VM :
- - Nom
- - ID VMware (`vm_id`)
- - État d'alimentation (`power_state`)
- - Informations VMware Tools
- - OS invité (si disponible)
- 3. **Affichage des résultats**
- - Liste des VMs découvertes
- - Indication des VMs déjà enregistrées
- - Bouton pour enregistrer les nouvelles VMs
- 4. **Enregistrement**
- - Sélection des VMs à enregistrer
- - Création des enregistrements en base de données
- - Association avec l'hôte VMware parent
- ### Informations Récupérées
- - **Nom de la VM** : Nom dans vSphere
- - **ID VMware** : Identifiant unique VMware (`vm_id`)
- - **État d'alimentation** : `poweredOn`, `poweredOff`, `suspended`
- - **VMware Tools** : Statut et version des outils
- - **OS Invité** : Système d'exploitation détecté
- ---
- ## Configuration UPS et SNMP
- ### Page de Configuration UPS
- **Page**: `/ups-settings`
- Cette page permet de configurer la surveillance et l'automatisation des UPS.
- ### Section 1: Configuration SNMP par UPS
- Pour chaque UPS ajouté, vous pouvez configurer :
- #### Paramètres SNMP de Base
- - **Hôte SNMP** : IP de l'UPS (pré-rempli depuis l'asset)
- - **Port SNMP** : Port SNMP (défaut: 161)
- - **Community** : Community SNMP (défaut: `public`)
- - **Version SNMP** : v1, v2c, ou v3 (défaut: v2c)
- - **Timeout** : Timeout en secondes (défaut: 5)
- - **Tentatives** : Nombre de tentatives (défaut: 3)
- #### Configuration des OIDs
- - **OID Fabricant** : OID pour identifier le fabricant
- - **OID Statut Secteur/Batterie** : OID pour déterminer l'alimentation
- - **OID Charge Batterie** : OID pour la charge en pourcentage
- - **OID Temps Restant** : OID pour le temps restant
- #### Test des OIDs
- - Bouton "Tester OID" pour vérifier chaque OID individuellement
- - Affichage de la valeur retournée
- - Validation de la configuration
- ### Section 2: Configuration des Seuils et Polling
- #### Seuil de Batterie pour Déclenchement
- - **Seuil (%)** : Niveau de batterie en dessous duquel déclencher l'arrêt
- - **Recommandation** : 20-30%
- #### Conditions d'Exécution du Scénario d'Extinction (SNMP)
- Ces conditions sont évaluées lorsque l'UPS est sur batterie :
- - **Temps restant minimum** : Temps restant en secondes (ex: 300 = 5 minutes)
- - Le scénario se déclenche si le temps restant ≤ cette valeur
- - **Charge batterie minimum** : Charge en pourcentage (ex: 20%)
- - Le scénario se déclenche si la charge ≤ cette valeur
- **Note** : Si ces champs sont vides, seule la condition "sur batterie" sera utilisée.
- #### Cadences de Polling
- - **Sur secteur** : Fréquence de vérification quand l'alimentation secteur est présente
- - **Recommandation** : 60-120 secondes
- - **Sur batterie** : Fréquence de vérification quand l'UPS est sur batterie
- - **Recommandation** : 10-30 secondes
- #### Temporisation de Grâce
- - **Délai avant arrêt** : Délai d'attente après avoir atteint les seuils avant de déclencher l'arrêt
- - **Usage** : Évite les déclenchements intempestifs en cas de micro-coupures
- - **Recommandation** : 30-120 secondes
- ### Exemple de Configuration
- ```
- Seuil de Batterie: 25%
- Conditions d'Exécution:
- - Temps restant minimum: 300 secondes (5 minutes)
- - Charge batterie minimum: 20%
- Polling:
- - Sur secteur: 60 secondes
- - Sur batterie: 15 secondes
- Temporisation de grâce: 60 secondes
- ```
- ---
- ## Création et Gestion des Scénarios
- ### Vue d'ensemble
- Les scénarios permettent d'orchestrer l'allumage ou l'extinction de plusieurs machines dans un ordre défini.
- ### Types de Scénarios
- 1. **Scénario d'Allumage** (`START`) : Allume les machines dans l'ordre défini
- 2. **Scénario d'Extinction** (`STOP`) : Éteint les machines dans l'ordre défini
- ### Page de Gestion
- **Page**: `/scenarios`
- ### Création d'un Scénario
- #### 1. Informations de Base
- - **Nom** : Nom du scénario (ex: "Extinction Datacenter")
- - **Type** : Allumage ou Extinction
- - **Description** : Description optionnelle
- #### 2. Construction de la Playlist
- La playlist définit l'ordre d'exécution des actions.
- ##### Ajout de Machines
- 1. **Sélection du type de machine**
- - Machine physique
- - ESXi/vCenter
- - VM
- 2. **Sélection de la machine**
- - Liste déroulante des machines disponibles
- - Filtrage par type
- 3. **Ajout à la playlist**
- - La machine est ajoutée à la fin de la playlist
- - Affichage avec son type et son label
- ##### Ajout de Délais
- - **Bouton** : Icône horloge (⏰) dans la playlist
- - **Configuration** :
- - Durée en secondes (ex: 30, 60, 120)
- - Description optionnelle
- - **Usage** : Attendre entre deux actions (ex: laisser le temps à une machine de démarrer avant d'allumer la suivante)
- ##### Réorganisation
- - **Drag & Drop** : Réorganiser les éléments de la playlist par glisser-déposer
- - **Suppression** : Bouton de suppression pour chaque élément
- #### 3. Sauvegarde
- - **Bouton "Enregistrer"** : Sauvegarde le scénario et ses étapes
- - **Validation** : Vérification qu'au moins une étape est définie
- ### Exemple de Scénario d'Extinction
- ```
- Nom: Extinction Datacenter Principal
- Type: Extinction
- Playlist:
- 1. VM "Base de données" → Éteindre
- 2. Délai de 30 secondes
- 3. VM "Serveur Web" → Éteindre
- 4. Délai de 30 secondes
- 5. ESXi "ESXi-Production-01" → Éteindre
- 6. Délai de 60 secondes
- 7. Machine Physique "Serveur-Backup" → Éteindre
- ```
- ### Exécution d'un Scénario
- #### Exécution Manuelle
- 1. **Sélection du scénario** : Choisir le scénario dans la liste
- 2. **Bouton "Exécuter"** : Lancer l'exécution
- 3. **Suivi en temps réel** :
- - Affichage de l'état de chaque machine
- - Messages de progression
- - Indication des succès/échecs
- #### Exécution Automatique
- Les scénarios peuvent être exécutés automatiquement via :
- - **Planification** : Tâches planifiées (voir section suivante)
- - **Surveillance UPS** : Déclenchement automatique selon les conditions UPS
- ---
- ## Planification de Tâches
- ### Vue d'ensemble
- Les tâches planifiées permettent d'exécuter automatiquement des scénarios à des dates/heures précises.
- ### Page de Gestion
- **Page**: `/scenarios` → Onglet "Planification"
- ### Création d'une Tâche Planifiée
- #### Informations Requises
- - **Nom** : Nom de la tâche (ex: "Extinction Nocturne")
- - **Type** : Allumage ou Extinction
- - **Scénario** : Scénario à exécuter (optionnel, utilise le dernier scénario du type si non spécifié)
- - **Date et Heure** : Date et heure d'exécution
- #### Exemple
- ```
- Nom: Extinction Nocturne
- Type: Extinction
- Scénario: Extinction Datacenter Principal
- Date: 2025-12-01
- Heure: 22:00
- ```
- ### Gestion des Tâches
- #### Statuts
- - **PENDING** : En attente d'exécution
- - **EXECUTED** : Exécutée avec succès
- - **FAILED** : Échec d'exécution
- - **CANCELLED** : Annulée par l'utilisateur
- #### Actions
- - **Modifier** : Modifier la date/heure ou le scénario
- - **Annuler** : Annuler une tâche en attente
- - **Voir les détails** : Afficher les informations complètes
- ### Exécution Automatique
- Le service de planification (`scheduler_service`) :
- - **Vérifie toutes les minutes** les tâches en attente
- - **Exécute automatiquement** les tâches dont l'heure est arrivée
- - **Fonctionne sans session utilisateur** : Les scénarios s'exécutent même si personne n'est connecté
- - **Enregistre les logs** : Toutes les actions sont enregistrées avec l'ID de l'utilisateur créateur
- ### Historique
- - **Date de création** : Quand la tâche a été créée
- - **Date d'exécution** : Quand la tâche a été exécutée
- - **Date d'annulation** : Si annulée, quand et par qui
- - **Messages d'erreur** : En cas d'échec, le message d'erreur est enregistré
- ---
- ## Surveillance Automatique UPS
- ### Vue d'ensemble
- Le service de surveillance UPS (`ups_monitor_service`) surveille en continu les UPS configurés et déclenche automatiquement le scénario d'extinction lorsque les conditions sont remplies.
- ### Fonctionnement
- #### 1. Surveillance Continue
- - **Polling périodique** : Vérification de l'état des UPS selon les cadences configurées
- - **Sur secteur** : Polling moins fréquent (ex: 60 secondes)
- - **Sur batterie** : Polling plus fréquent (ex: 15 secondes)
- #### 2. Évaluation des Conditions
- Pour chaque UPS, le service vérifie :
- ##### Condition 1: Sur Batterie
- - **OID Statut** : Vérifie si l'UPS est sur batterie
- - **Obligatoire** : Oui, le scénario ne se déclenche que si l'UPS est sur batterie
- ##### Condition 2: Temps Restant (si configuré)
- - **OID Temps Restant** : Récupère le temps restant sur batterie
- - **Comparaison** : Temps restant ≤ Seuil configuré ?
- - **Obligatoire** : Non, mais recommandé
- ##### Condition 3: Charge Batterie (si configurée)
- - **OID Charge** : Récupère le pourcentage de charge
- - **Comparaison** : Charge ≤ Seuil configuré ?
- - **Obligatoire** : Non, mais recommandé
- #### 3. Temporisation de Grâce
- - **Démarrage** : Quand toutes les conditions sont remplies, démarre un compte à rebours
- - **Durée** : Durée configurée dans les paramètres UPS (ex: 60 secondes)
- - **Objectif** : Éviter les déclenchements intempestifs en cas de micro-coupures
- #### 4. Déclenchement du Scénario
- - **Scénario d'extinction** : Exécute le scénario d'extinction du site
- - **Utilisateur système** : Exécuté par l'utilisateur administrateur système
- - **Logs** : Toutes les actions sont enregistrées
- ### Exemple de Scénario
- ```
- Configuration:
- - Seuil batterie: 25%
- - Temps restant minimum: 300 secondes
- - Charge minimum: 20%
- - Temporisation de grâce: 60 secondes
- Séquence d'événements:
- 1. UPS passe sur batterie → Polling passe à 15 secondes
- 2. Temps restant = 250 secondes (< 300) → Condition remplie
- 3. Charge = 18% (< 20%) → Condition remplie
- 4. Démarrage de la temporisation de grâce (60 secondes)
- 5. Après 60 secondes, si conditions toujours remplies → Déclenchement du scénario
- 6. Exécution du scénario d'extinction
- ```
- ### Cooldown
- - **Durée** : 5 minutes après un déclenchement
- - **Objectif** : Éviter les déclenchements multiples
- - **Réinitialisation** : Si l'UPS repasse sur secteur, le cooldown est réinitialisé
- ---
- ## Interface Utilisateur
- ### Pages Principales
- #### 1. Dashboard (`/`)
- - **Vue d'ensemble** : Statistiques globales
- - **Machines Récentes** : Liste des machines avec état et actions rapides
- - **Activité des Opérations** : Activités récentes de l'utilisateur actuel
- - **Activités Récentes** : Activités récentes de tous les assets
- #### 2. Assets (`/assets`)
- - **Liste des assets** : Tous les assets (ESXi, machines physiques, UPS)
- - **Filtres** : Par type, statut, site
- - **Actions rapides** : Allumage/extinction directement depuis la liste
- - **Édition** : Modification des assets
- #### 3. Découverte (`/discovery`)
- - **Découverte VMs** : Découverte des machines virtuelles sur les hôtes VMware
- - **Exploration** : Exploration détaillée d'un hôte
- #### 4. Scénarios (`/scenarios`)
- - **Gestion des scénarios** : Création, modification, suppression
- - **Exécution** : Exécution manuelle des scénarios
- - **Planification** : Gestion des tâches planifiées
- #### 5. Paramètres UPS (`/ups-settings`)
- - **Configuration SNMP** : Configuration des OIDs pour chaque UPS
- - **Seuils et Polling** : Configuration des seuils et cadences
- #### 6. Journal (`/logs`)
- - **Journal des opérations** : Tous les logs d'actions
- - **Filtres** : Par catégorie, utilisateur, asset, date
- - **Détails** : Affichage des détails complets de chaque action
- #### 7. Paramètres (`/settings`)
- - **Gestion des utilisateurs** : Création, modification, suppression
- - **Gestion du site** : Modification des informations du site
- ### Thème et Couleurs
- #### Thème Sombre
- - **Fond principal** : Noir (#1a1a1a)
- - **Cartes** : Gris foncé (#222222)
- - **Texte** : Blanc pour lisibilité
- #### Couleurs Thématiques
- - **VM** : Bleu/Violet (gradient)
- - **ESXi** : Orange (gradient)
- - **vCenter** : Rouge (gradient)
- - **Machine Physique** : Vert (gradient)
- - **UPS** : Jaune/Orange (gradient)
- #### Actions Sémantiques
- - **Allumage** : Vert (#10b981)
- - **Extinction** : Rouge (#ef4444)
- - **Redémarrage** : Orange (#f59e0b)
- ---
- ## Services en Arrière-plan
- ### 1. Service de Surveillance des Machines (`status_service`)
- - **Fonction** : Surveille l'état (online/offline) des machines
- - **Méthode** : Ping périodique
- - **Fréquence** : Configurable (défaut: 30 secondes)
- - **Mise à jour** : Mise à jour en temps réel via WebSocket
- ### 2. Service de Planification (`scheduler_service`)
- - **Fonction** : Exécute automatiquement les tâches planifiées
- - **Vérification** : Toutes les minutes
- - **Exécution** : Sans session utilisateur requise
- - **Logs** : Enregistrement de toutes les exécutions
- ### 3. Service de Surveillance UPS (`ups_monitor_service`)
- - **Fonction** : Surveille les UPS et déclenche les scénarios d'extinction
- - **Polling** : Selon les cadences configurées
- - **Conditions** : Évaluation des seuils (batterie, temps, charge)
- - **Déclenchement** : Automatique selon les conditions
- ### Démarrage des Services
- Les services démarrent automatiquement avec l'application :
- ```python
- @app.on_event("startup")
- async def startup_event():
- asyncio.create_task(start_status_service())
- asyncio.create_task(start_scheduler_service())
- asyncio.create_task(start_ups_monitor_service())
- ```
- ---
- ## Dépannage
- ### Problèmes Courants
- #### 1. Service ne démarre pas
- ```bash
- # Vérifier les logs
- sudo journalctl -u orchestrator -f
- # Vérifier le statut
- sudo systemctl status orchestrator
- # Vérifier la configuration
- cat /opt/Orchestrator/.env
- ```
- #### 2. Erreur de connexion à la base de données
- ```bash
- # Vérifier que PostgreSQL est démarré
- sudo systemctl status postgresql
- # Tester la connexion
- psql -h localhost -U orchestrator_user -d orchestrator_db
- # Vérifier les credentials dans .env
- cat /opt/Orchestrator/.env | grep DATABASE_URL
- ```
- #### 3. Erreur de connexion VMware
- - **Vérifier les credentials** : Nom d'utilisateur et mot de passe corrects
- - **Vérifier la connectivité réseau** : Ping vers l'hôte VMware
- - **Vérifier le port** : Port 443 accessible
- - **Vérifier les certificats SSL** : L'application ignore les certificats SSL par défaut
- #### 4. Erreur SNMP pour UPS
- - **Vérifier la communauté SNMP** : Généralement `public` par défaut
- - **Vérifier les OIDs** : Utiliser le bouton "Tester OID" pour valider
- - **Vérifier la connectivité** : Ping vers l'UPS
- - **Vérifier le port** : Port 161 par défaut
- #### 5. Scénario ne s'exécute pas
- - **Vérifier les logs** : Page `/logs` pour voir les erreurs
- - **Vérifier les credentials** : Machines physiques nécessitent SSH
- - **Vérifier l'état des machines** : Machines déjà allumées/éteintes peuvent être ignorées
- - **Vérifier les permissions** : Utilisateur VMware avec permissions suffisantes
- #### 6. Tâche planifiée non exécutée
- - **Vérifier le statut** : Page `/scenarios` → Onglet "Planification"
- - **Vérifier les logs du service** : `sudo journalctl -u orchestrator | grep scheduler`
- - **Vérifier la date/heure** : Date/heure correcte et dans le futur
- - **Vérifier le scénario** : Scénario existe et a des étapes
- #### 7. Surveillance UPS ne fonctionne pas
- - **Vérifier la configuration SNMP** : Page `/ups-settings`
- - **Tester les OIDs** : Utiliser le bouton "Tester OID"
- - **Vérifier les seuils** : Seuils configurés correctement
- - **Vérifier les logs** : `sudo journalctl -u orchestrator | grep ups_monitor`
- ### Logs
- #### Logs du Service
- ```bash
- # Logs en temps réel
- sudo journalctl -u orchestrator -f
- # Logs des dernières 24 heures
- sudo journalctl -u orchestrator --since "24 hours ago"
- # Logs avec filtrage
- sudo journalctl -u orchestrator | grep "ERROR"
- ```
- #### Logs dans l'Interface
- - **Page `/logs`** : Journal des opérations avec filtres
- - **Catégories** : Machines, explorations, erreurs, scénarios, actions
- - **Détails** : Cliquer sur l'icône "œil" pour voir les détails complets
- ### Réinitialisation
- #### Réinitialisation du Mot de Passe Admin
- ```bash
- cd /opt/Orchestrator
- ./reset.sh admin NouveauMotDePasse123!
- ```
- #### Réinitialisation Complète
- ```bash
- # Attention : Supprime toutes les données
- cd /opt/Orchestrator
- python3 clear_database.py
- ```
- ---
- ## Conclusion
- Cette documentation couvre l'ensemble du processus de configuration et d'utilisation de Sequencer, depuis l'installation initiale jusqu'à l'automatisation complète de l'infrastructure.
- Pour toute question ou problème, consultez les logs du service et la page `/logs` dans l'interface utilisateur.
- ---
- **© 2026 Sequencer. Version 1.0.0 by judd**
Advertisement
Add Comment
Please, Sign In to add comment