La vitrine de diffusion des mémoires et thèses de l'ÉTS
RECHERCHER

Proactive and autonomic IoT service auto-scaling in constrained edge computing environments

Téléchargements

Téléchargements par mois depuis la dernière année

Plus de statistiques...

Bali, Ahmed (2023). Proactive and autonomic IoT service auto-scaling in constrained edge computing environments. Thèse de doctorat électronique, Montréal, École de technologie supérieure.

[thumbnail of BALI_Ahmed.pdf]
Prévisualisation
PDF
Télécharger (3MB) | Prévisualisation

Résumé

The Internet of Things (IoT) has greatly developed with the widespread use of sensors in various areas of modern life, such as healthcare, and construction. The increasing number of connected devices generates massive amounts of data that negatively impact system performance, especially the response time, which is very important for latency-aware applications. Edge computing, which delegates cloud tasks to edge nodes closer to data sources, has been adopted to alleviate this issue. However, IoT devices at the edge are resource-constrained and operate in a highly heterogeneous environment, which is addressed by using containers as a lightweight virtualization technique for deploying microservices.

The limitation of resources poses a significant challenge to deploying services at the edge of IoT networks. Effective resource management of edge devices is essential to meet user requirements (e.g., response time) and optimize resource usage, which increases the deployment capacity. Service auto-scaling is an interesting solution that improves resource utilization by dynamically adjusting the number of service instances to match the workload. However, current auto-scalers, such as Kubernetes, mostly rely on threshold-based reactive approaches, which are difficult to configure and less efficient in dealing with complex workloads. These reactive approaches result in wastage due to over-provisioning of resources and performance degradation during resource releases. On the other hand, proactive auto-scaling that anticipates future workload still needs improvement in forecasting accuracy to optimize system performance and effectiveness.

The main objective of this work is to propose an approach for deploying IoT services at the edge that is adaptive to performance requirements, resource availability, and workload dynamics. Our approach to service deployment adaptability is based on the MAPE-K (Monitor-Analyze-Plan- Execute over a shared Knowledge) loop. Therefore, each phase of the loop presents a step in the realization of each contribution of our work. Each step must include a literature review, study, and use of existing techniques and their improvement or even proposal of new techniques, implementation, experimentation, and validation.

Our first contribution aims at addressing the limitation of threshold-based solutions. Based on our proposed deployment model, encoded in predicate logic, our solution automatically generates rules for different phases, such as analysis and planning.

The second contribution proposes a proactive auto-scaling solution. It uses Long short-term memory (LSTM) for workload forecasting thanks to its accuracy and prediction speed. For further accuracy improvement, our approach adds an automatic featurization phase that extracts features from time-series workload data to improve the workload prediction accuracy. It also addresses, in an original way, the oscillation issue caused by the frequently generated scaling actions. The extracted features issued by the featurization phase are used as a grid to mitigate the oscillation issue.

The third contribution aims to improve further the accuracy of workload forecasting while considering the resource limitation of IoT devices. We have investigated a variety of known prediction algorithms according to the metrics of accuracy and prediction time. Our proposed Dynamic Ensemble learning approach effectively reduces outliers and maintains high workload forecasting accuracy and auto-scaling performance.

In all our contributions, we have validated our approach with several proof-of-concept implementations. We also conducted the necessary experiments by comparing our results with related work. Overall, the validation shows the feasibility and effectiveness of our different contributions. Finally, we highlighted several research perspectives and proposed potential future work within the scope of the presented study.

Titre traduit

Mise à l’échelle automatique proactive des services IoT dans les environnements contraints de l’informatique périphérique

Résumé traduit

L’internet des objets (IdO) s’est considérablement développé avec l’utilisation généralisée de capteurs dans divers domaines de la vie moderne, tels que les soins de santé et la construction. Le nombre croissant de dispositifs (objets) connectés génère des quantités massives de données qui ont un impact négatif sur les performances du système, en particulier sur le temps de réponse, qui est très important pour les applications sensibles à la latence. L’informatique en périphérie (Edge computing), qui délègue les tâches de l’informatique en nuage (Cloud) à des noeuds en périphérie plus proches des sources de données, a été adoptée pour atténuer ce problème. Cependant, les dispositifs IoT en périphérie sont limités en ressources et opèrent dans un environnement hautement hétérogène, ce qui est traité en utilisant des conteneurs (Containers) comme technique de virtualisation légère pour déployer des microservices.

La limitation des ressources constitue un défi important pour le déploiement de services à la périphérie des réseaux IoT. Une gestion efficace des ressources des dispositifs périphériques est essentielle pour répondre aux exigences des utilisateurs (par exemple, le temps de réponse) et optimiser l’utilisation des ressources, ce qui augmente la capacité de déploiement. La mise à l’échelle automatique des services (auto-scaling) est une solution interessante qui améliore l’utilisation des ressources en ajustant dynamiquement le nombre d’instances de services en fonction de la charge de travail. Cependant, les outils de la mise à l’échelle automatique actuels, tels que Kubernetes, s’appuient principalement sur des approches réactives basées sur des seuils, qui sont difficiles à configurer et moins efficaces pour traiter des charges de travail complexes. Ces approches réactives entraînent un gaspillage dû au surprovisionnement des ressources et une dégradation des performances lors de la libération des ressources. D’autre part, la mise à l’échelle automatique proactive qui anticipe la charge de travail future nécessite encore une amélioration en termes de précision des prévisions afin d’optimiser les performances et l’efficacité du système.

L’objectif principal de ce travail est de proposer une approche pour le déploiement de services IoT à la périphérie qui s’adapte aux exigences de performance, à la disponibilité des ressources et à la dynamique de la charge de travail. Notre approche de l’adaptabilité du déploiement des services est basée sur la boucle MAPE-K (Monitor-Analyze-Plan-Execute over a shared Knowledge). Par conséquent, chaque phase de la boucle présente une étape dans la réalisation de chaque contribution de notre travail. Chaque étape doit inclure une revue de la littérature, l’étude et l’utilisation des techniques existantes et leur amélioration ou même la proposition de nouvelles techniques, l’implémentation, l’expérimentation et la validation.

Notre première contribution vise à remédier aux limites des solutions basées sur les seuils. En se basant sur le modèle de déploiement que nous proposons, encodé dans la logique des prédicats, notre solution génère automatiquement des règles pour différentes phases, telles que l’analyse et la planification.

La deuxième contribution propose une solution proactive de mise à l’échelle automatique. Elle utilise un modèle des réseaux de neurones de type LSTM (Long Short-Term Memory), mémoire à long terme et court terme, pour la prévision de la charge de travail grâce à sa précision et à sa vitesse de prédiction. Pour améliorer davantage la précision, notre approche ajoute une phase de caractérisation (featurization) automatique qui extrait des caractéristiques des séries temporelles de données sur la charge de travail. Elle aborde également, de manière originale, le problème de l’oscillation causé par les actions de mise à l’échelle fréquemment générées. Les caractéristiques extraites par la phase de la caractérisation sont utilisées comme grille pour atténuer le problème d’oscillation.

La troisième contribution vise à améliorer encore davantage la précision de la prévision de la charge de travail tout en tenant compte de la limitation des ressources des dispositifs IoT. Notre approche proposée d’apprentissage en ensemble dynamique (Dynamique Ensemble learning) réduit efficacement les valeurs aberrantes et maintient une précision élevée dans la prévision de la charge de travail et les performances d’auto-scaling.

Dans toutes nos contributions, nous avons validé notre approche à l’aide de diverses implémentations. Nous avons également mené les expériences nécessaires en comparant nos résultats avec des travaux connexes. Dans l’ensemble, la validation montre la faisabilité et l’efficacité de nos différentes contributions. Enfin, nous avons mis en évidence plusieurs perspectives de recherche et proposé des travaux futurs potentiels dans le cadre de l’étude présentée.

Type de document: Mémoire ou thèse (Thèse de doctorat électronique)
Renseignements supplémentaires: "Manuscript-based thesis presented to École de technologie supérieure in partial fulfillment for the degree of doctor of philosophy". Comprend des références bibliographiques (pages 189-200).
Mots-clés libres: Internet des objets (IoT), informatique périphérique, virtualisation, conteneur, Mise à l’échelle automatique, boucle MAPE-K, LSTM, atténuation des oscillations, apprentissage automatique, prévision des séries temporelles
Directeur de mémoire/thèse:
Directeur de mémoire/thèse
Gherbi, Abdelouahed
Programme: Doctorat en génie > Génie
Date de dépôt: 28 août 2024 19:46
Dernière modification: 28 août 2024 19:46
URI: https://espace.etsmtl.ca/id/eprint/3357

Gestion Actions (Identification requise)

Dernière vérification avant le dépôt Dernière vérification avant le dépôt