
— Objectifs du lot
Porteur: Shadi Ibrahim
- Conception et implémentation de stratégies multicritères pour de l’orchestration intelligente, dynamique et holistique
- Conception et implémentation d’un framework facilitant l’analyse et l’intégration de plusieurs orchestrateurs
- Conception et implémentation d’un cadre logiciel pour l’ordonnancement et l’allocation de ressources dans le continuum Edge-Cloud
- Développement de configurations dynamiques et adaptatives
- Mise en place et optimisation d’un serverless computing efficace dans le continuum Edge-Cloud
— Les missions
L’évolution des infrastructures distribuées et hétérogènes (allant de l’Edge au centre de calculs centralisés), avec dans le même temps une variété et une complexité croissante des applications, rendent les stratégies actuelles d’optimisation peu efficaces, étant donné qu’elle visent habituellement un seul type d’application ou d’infrastructure ainsi qu’un seul objectif (ou plusieurs mais corrélés). De plus, ces techniques d’optimisation issues de l’état de l’art considèrent habituellement peu de données (informations statiques) extraites des applications ou des infrastructures sous-jacentes. Ce lot étudie les problèmes d’optimisation associés à l’utilisation de ces infrastructures et à l’exécution d’applications, ainsi qu’à comment incorporer ces deux composantes pour atteindre les objectifs voulus. En particulier, nous allons étudier des problèmes multi-objectifs (parfois même contradictoires) tel que le coût, l’usage, l’énergie, le temps de réponse, la qualité de service, etc. et incluant un grand nombre de variables de décision. Ce lot couvre plusieurs sous-tâches, notamment l’optimisation des orchestrateurs de ressources et des stratégies de planification des tâches pour prendre en compte les changements dynamiques des ressources et des charges de travail, et se concentre sur deux scénarios émergents conçus pour optimiser le déploiement et l’exécution des flux de travail dits « urgents » et de type «serverless computing » dans le continuum Edge-Cloud.
Les expériences se feront en lien avec le projet SILECS et la plateforme associé SLICES-FR.
— Description des tâches
T4.1 Stratégies multicritères pour une orchestration intelligente, dynamique et holistique
Les infrastructures modernes sont hétérogènes pour supporter la diversité des services, rendant l’orchestration des ressources complexe et hautement dynamique. Cette tâche vise à optimiser les orchestrateurs actuels ou en concevoir de nouveaux, capables de gérer efficacement cette complexité à design time et runtime.
Pour cela, elle repose sur trois axes principaux :
- Prédiction des besoins via des modèles d’apprentissage automatique pour sélectionner la meilleure stratégie d’orchestration.
- Approche holistique intégrant de multiples variables, y compris la consommation énergétique et la qualité de service.
- Coordination efficace des orchestrateurs existants, avec ou sans moteur d’analyse.
L’Intelligence Artificielle des Objets (AIoT) renforce la nécessité d’une gestion adaptative des ressources sur l’axe IoT-Edge-Cloud. Entraîner des modèles ML permet de prévoir la demande et d’ajuster dynamiquement la configuration des ressources. Un protocole auto-adaptatif sera développé pour une gestion économe en énergie et efficace.
Les problèmes de contention réseau et stockage impactent les performances des applications, nécessitant une allocation multicritères des ressources. Il s’agit d’optimiser le partage dynamique en fonction des besoins spécifiques des applications.
Pour garantir les SLOs dans l’orchestration de conteneurs, plusieurs stratégies seront mises en place : répartition dynamique de charge, mise à l’échelle automatique et migration proactive des conteneurs. L’impact des orchestrateurs sur les performances (latence, consommation énergétique, taux de défaillances) sera évalué.
T4.2 Ordonnancement et allocation de ressources sur des plateformes multiples et hétérogènes
Cette tâche étudie comment allouer efficacement des ressources et ordonnancer des tâches et des jobs en atteignant les performances souhaitées tout en prenant en compte l’hétérogénéité des ressources et des données, et ce dynamiquement.
Dans le continuum IoT-Edge-Cloud, il faudrait revoir en profondeur les modèles d’exécution pour prendre en compte cette hétérogénéité intrinsèque et ses multiples indicateurs pour obtenir une meilleure optimisation multicritères des décisions de placement. En outre, nous étudierons comment utiliser ces modèles pour introduire des algorithmes d’ordonnancement qui produisent des solutions à la fois bien fondées théoriquement et s’exécutent en un temps suffisamment court pour être exploitable. Pour aller encore un peu plus loin dans cette direction, nous étudierons comment allouer efficacement des ressources et ordonnancer les tâches (ou opérateurs) pour atteindre les performances souhaitées, tout en gérant les fluctuations des données en entrée et la nature dynamique des ressources au sein du Fog, ainsi que leur partage.
L’objectif est d’utiliser les données collectées par les applications et les systèmes sous-jacents afin d’obtenir des informations (à l’aide d’apprentissage automatique) pour optimiser l’allocation des ressources et des tâches lors du déploiement d’applications de traitement de flux au sein du Fog.
T4.3 Configuration et optimisation pour des applications complexes et des environnements dynamiques
Cette tâche se concentre sur les adaptations entre les différentes couches du système pour permettre une sélection de ressources et une configuration des services applicatifs, tout en considérant les contraintes des modèles applicatifs des applications orientées données.
Le continuum IoT-Edge-Cloud demande la capacité de pouvoir reconfigurer de manière dynamique la structure des infrastructures. Cette capacité vient en réponse au caractère volatile de la quantité de données qu’il est nécessaire de traiter et au partage de l’infrastructure entre plusieurs utilisateurs. Cela veut dire qu’il faut pouvoir dimensionner l’infrastructure instantanément en fonction de la charge de travail à effectuer. L’implémentation des workflows de type « urgent », i.e., dont les calculs s’effectuent sous des contraintes strictes de temps et de qualité pour une prise de décision bornée dans le temps, devient alors extrêmement complexe. Les objectifs de cette tâche sont :
- (1) modéliser l’ensemble des facteurs, i.e., type de données qui vont être reçues, matériel sur lequel l’infrastructure s’exécute, bibliothèques à disposition, etc., qu’il est nécessaire de prendre en compte;
- (2) évaluer les scénarios d’interactions entre les différentes couches tout en permettant une évolution du modèle et enfin;
- (3) appliquer ce modèle à des scénarios applicatifs afin d’évaluer la capacité à gérer des compromis entre le coût et la performance pour la prise de décision au sein de l’application et le dimensionnement de l’infrastructure.
T.4.4 Mise en place et optimisation d’un serverless computing efficace dans le continuum Edge-Cloud
Le “serverless computing” (ou “Function-As-A-Service”) s’est imposé comme une plateforme majeure pour la construction des futurs services web, notamment grâce à la granularité fine de sa tarification, son élasticité et sa facilité de gestion. Ces services se reposent généralement sur des applications distribuées d’apprentissage (“machine learning”, ML) ou d’apprentissage profond (“deep learning”, DP).
Si beaucoup d’efforts ont été faits dans le déploiement et l’optimisation de ces applications sur des centres de calculs homogènes, peu d’efforts ont été faits pour le déploiement d’un serverless computing dans le continuum IoT-Edge-Cloud, où les ressources sont hétérogènes et ont des capacités de calcul et de stockage limitées pour résoudre le problème du déploiement simultané de plusieurs applications. Les objectifs de cette tâche sont :
- (1) introduire un nouveau cadre logiciel pour permettre le serverless computing dans le continuum Edge-Cloud;
- (2) optimiser les performance des applications sans état (stateless) ou d’apprentissage (ML) quand leurs fonctions sont colocalisées;
- (3) permettre à ces applications de passer à l’échelle pour s’adapter aux charges de travail fluctuantes et optimiser l’utilisation des ressources disponibles.
Les autres lots