Orchestration et ressources : une gestion dynamique
Pour fonctionner efficacement, l’orchestrateur doit tenir compte des ressources disponibles :
-
Bande passante LAN/WAN
-
CPU & RAM (RAM jugée secondaire)
-
Stockage disponible sur les dépôts
-
Nombre de tâches simultanées par dépôt
Ces ressources influencent directement la capacité à exécuter plusieurs tâches en parallèle. Par exemple, lancer deux sauvegardes lourdes vers un même dépôt peut dégrader fortement la performance, voire causer des échecs.
D’où la nécessité d’une planification intelligente basée sur :
-
L’usage passé des ressources (historique des débits)
-
La fenêtre de sauvegarde
-
La durée estimée des tâches
-
Les verrous de dépôt
👉 Une des pistes envisagées est l’introduction de “domaines de contraintes”, par client ou par fournisseur cloud, pour isoler les calculs de priorisation.
Priorisation : un système de scoring adaptatif
Toutes les tâches ne se valent pas. Certaines doivent être exécutées rapidement, d’autres peuvent attendre.
Le système envisagé repose sur un scoring dynamique basé sur :
-
Le temps écoulé depuis la dernière exécution
-
La fenêtre de sauvegarde restante
-
La durée estimée de la tâche
-
Le coût en ressources
-
Les verrous de ressources
-
La priorité utilisateur (manuelle ou automatique)
Cette logique permet à l’orchestrateur de toujours choisir la meilleure tâche à exécuter maintenant, en tenant compte des conditions du moment.
Un exemple concret : le cas du nouveau serveur critique
Un administrateur déploie un nouveau serveur critique. Il configure un plan de sauvegarde et souhaite tester sa validité immédiatement.
💡 Dans ce cas :
-
Une tâche manuelle est lancée avec une priorité élevée
-
L’orchestrateur interrompt ou reporte des tâches moins prioritaires
-
Il s’assure que les ressources nécessaires sont disponibles
-
Il verrouille temporairement le dépôt concerné
Ce scénario est typique des user stories prioritaires à intégrer dès la V1 du système.
Et demain ?
Les prochaines étapes pour Cybee :
-
Définir la collecte des métriques de ressources (débit, durée, taux d’échec…)
-
Affiner le scoring des tâches
-
Implémenter les domaines de contraintes
-
Gérer la coexistence des tâches manuelles et planifiées
-
Anticiper les besoins multi-clients et multi-dépôts
L’orchestration des tâches n’est pas un luxe, c’est une brique essentielle pour garantir la fiabilité, la performance et la cyber-résilience de nos sauvegardes cloud.