Skip to content

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🖥️ Courtier d'Hyperviseurs (Hypervisor Broker)

Application Web Flask permettant d'évaluer et recommander le meilleur hyperviseur (KVM, XenServer / XCP-ng, VMware ESXi) en fonction des besoins de l'utilisateur (licence, performances, interface graphique, compatibilité Windows, haute disponibilité, budget), puis de déclencher automatiquement le clonage et le démarrage de la machine virtuelle via SSH.


Screenshots

image image image image image image image image image

🚀 Fonctionnalités

  • Évaluation pondérée multicritère : Sélection intelligente basée sur vos préférences et contraintes.
  • Déploiement automatisé (SSH) :
    • KVM via virsh et virt-clone.
    • Xen / XCP-ng via les commandes CLI xe.
  • Interface Web conviviale : Interface moderne basée sur Bootstrap.

📋 Prérequis

  • Python 3.10+
  • Serveur MySQL / MariaDB (ex: XAMPP, WampServer ou MariaDB natif)
  • Accès SSH aux hyperviseurs configurés (KVM, Xen)

⚙️ Installation et Configuration

1. Cloner le dépôt

git clone https://github.com/savaseiv-create/Hypervisor-Broker.git
cd projet-courtier

2. Créer et activer un environnement virtuel

python -m venv venv
# Sur Windows :
.\venv\Scripts\activate
# Sur Linux / macOS :
source venv/bin/activate

3. Installer les dépendances

pip install -r requirements.txt

4. Configurer les variables d'environnement

Copiez le fichier .env.example vers .env et adaptez les valeurs avec vos identifiants réels :

cp .env.example .env

Contenu du .env :

# Clé secrète Flask
SECRET_KEY=votre_cle_secrete_aleatoire

# Base de données MySQL
DB_HOST=localhost
DB_PORT=3306
DB_USER=root
DB_PASSWORD=
DB_NAME=broker_db

# Hyperviseur KVM
KVM_IP=192.168.1.100
KVM_USER=kvm_user
KVM_PASSWORD=votre_mot_de_passe_kvm
KVM_SOURCE_VM=ubuntu24.04

# Hyperviseur Xen / XCP-ng
XEN_IP=192.168.1.101
XEN_USER=root
XEN_PASSWORD=votre_mot_de_passe_xen
XEN_TEMPLATE_UUID=votre_template_uuid_ici

5. Initialiser la base de données

  1. Créez une base de données nommée broker_db dans votre serveur MySQL.
  2. Créez la table hypervisors :
CREATE TABLE hypervisors (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(100) NOT NULL,
    open_source TINYINT(1) NOT NULL,
    performance VARCHAR(50) NOT NULL,
    gui TINYINT(1) NOT NULL,
    windows_support TINYINT(1) NOT NULL,
    clustering TINYINT(1) NOT NULL,
    budget VARCHAR(50) NOT NULL
);
  1. Insérez les données initiales :
python insert_data.py

💻 Démarrage de l'Application

python app.py

L'application sera accessible sur [http://127.0.0.1:5000](http://127.0.0.1:5000).

LICENSE

See the LICENSE file for the license and usage conditions.


About

Courtier d'Hyperviseurs & Déployeur Automatisé : Plateforme web conçue avec Flask intégrant un moteur d'aide à la décision multicritère pondéré. Elle analyse les contraintes techniques et budgétairespour recommander le meilleur hyperviseur et déclencher automatiquement le clonage et le démarrage de la VM sur les infrastructures (KVM / Xen) via SSH

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages