Cloud Simulator

Le Cloud computing fournit toutes sortes de services informatiques tels que l’évolutivité, le provisionnement des ressources, la sécurité, la tolérance aux pannes et la durabilité, etc. Pour garantir l’applicabilité de toutes ces caractéristiques, il est nécessaire d’évaluer les applications cloud avant de les implémenter ou de les déployer dans le monde réel. La principale raison derrière cela est qu’il est assez difficile de modifier les limitations survenues lors de l’exécution en temps réel. Cela peut entraîner des frais généraux pour le fournisseur, une augmentation des coûts et une perte de temps. La simulation est la meilleure méthode pour éviter tout ce genre de frustrations.

Le tout premier outil de simulation CloudSim a été publié en 2009 par le Cloud Computing and Distributed Systems (CLOUDS) Laboratory, au Département d’Informatique et de Génie Logiciel de l’Université de Melbourne. Succédant à CloudSim, de nombreux autres simulateurs tels que CloudAnalyst, EmuSim, DCSim, Icancloud ont évolué progressivement pour faciliter la mise en œuvre d’applications personnalisées.

Le simulateur CloudSim

CloudSim est l’outil de simulation de base qui permet de mettre en œuvre les applications personnalisées et donc la motivation d’adopter cet outil pour les travaux de recherche en cours. Différentes versions de CloudSim ont été publiées depuis 2009 et sont répertoriées dans le tableau.

Versions de CloudSim

Versions de Carte Sim Cloud

Année

Sim Cloud 1.0

Sim Cloud 2.0

Juillet 2010

Sim Cloud 2.1

Jan 2011

Sim Cloud 3.0

Jan 2012

Sim Cloud 3.0.1

Oct. 2012

Sim Cloud 3.0.2

Nov. 2012

Sim Cloud 3.0.3

Mai 2013

  1. Architecture de CloudSim

Cloudsim Suit l’architecture en couches.Comme il ressort clairement de la figure, l’architecture comprend principalement trois couches de code utilisateur, des composants de CloudSim et le moteur de simulation. Il fournit l’environnement virtualisé complet ainsi que l’interface keen pour les services de machines virtuelles, les services cloud et le réseau. Chacun des composants est brièvement décrit comme suit.

  • Code utilisateur

Cette section comprend les spécifications de simulation et la politique de planification. Il interprète les entités de base pour l’hébergement telles que les machines virtuelles, les configurations de machines virtuelles, les exigences de machines virtuelles, le nombre d’utilisateurs et les processus de planification.À l’aide de ces configurations, le développeur de cloud peut déployer les clouds fédérés et implémenter l’application personnalisée de provisionnement des ressources et de répartition de la charge.

Architecture en couches de Cloud Sim

  • Composants de CloudSim

Cette couche englobe les structures d’interface utilisateur, les services de machines virtuelles, les services cloud, les ressources cloud et les applications réseau. Chaque composant de cette section a ses propres fonctionnalités et fournit différents types de services. Il gère tous les problèmes fondamentaux du cloud.

  • Moteur de simulation

Cette section prévoit la simulation, c’est-à-dire que toutes les applications personnalisées sont construites et simulées dans cette section.

Diagramme de classes de CloudSim:

Cette sous-section délimite le bloc de construction de CloudSim sous la forme d’un diagramme de classes. Il se compose de plusieurs classes décritesplus loin dans la section.

Le diagramme de classes du centre de données Cloud Sim

fournit des services d’infrastructure de base, à savoir. matériel et logiciels offerts par les fournisseurs de ressources dans le paradigme du cloud computing. Il offre à la fois des configurations de ressources homogènes et hétérogènes. Chaque composant d’un centre de données utilise un ensemble de stratégies qui sont ensuite utilisées pour allouer la bande passante, la mémoire et les périphériques de stockage. Le courtier de centre de données sert d’intermédiaire entre les utilisateurs et les fournisseurs de services.Il agit au nom de l’utilisateur et aide à rechercher le fournisseur de cloud approprié et négocie avec le fournisseur en termes de prix pour répondre à la QoS et aux exigences des utilisateurs.Cloud developer peut étendre cette classe pour créer des applications personnalisées.SANStorage signifie storage area network et est utilisé pour stocker une grande quantité de données dans les centres de données. Avec l’aide de cette classe, l’utilisateur peut stocker et récupérer les données à tout moment sous réserve de la disponibilité de la bande passante du réseau. La classe de machine virtuelle est utilisée pour créer des instances d’une machine virtuelle. Il prend également en charge la gestion de la machine virtuelle et est utilisé pour stocker les caractéristiques d’une machine virtuelle comme la mémoire, le processeur et sa politique de planification. Tous les composants sont extraits de la classe VMScheduling. Cloudlet est utilisé pour les services applicatifs basés sur le Cloud tels que la diffusion de contenu, les réseaux sociaux et le flux de travail métier.La complexité d’une application peut être représentée en termes d’exigences de calcul. Chaque composant de l’application a une instruction pré-assignée et une quantité de transfert de données.Cloudcoordinatorfournit la capacité de fédération à un centre de données. Cette classe est responsable de la communication avec d’autres services cloudcoordinator pairs et des courtiers en nuage. Il surveille également périodiquement l’état interne d’un centre de données pendant la simulation. BWProvisioner est une classe abstraite utilisée pour allouer la bande passante réseau entre les stratégies de provisionnement. Les développeurs peuvent étendre cette classe dans leur propre stratégie en fonction des besoins des utilisateurs.Memoryprovisionerest une autre classe abstract utilisée pour allouer la mémoire aux machines virtuelles dans un DC.L’hôte de la machine virtuelle n’est réalisable que si cette classe trouve l’espace libre.De même, VMProvisioner représente la stratégie de provisionnement pour l’hébergement de la machine virtuelle. Sa principale responsabilité consiste à sélectionner l’hôte disponible dans un centre de données répondant aux exigences de mémoire, de stockage et de disponibilité pour un déploiement de machine virtuelle. Il est également utilisé pour implémenter les stratégies optimisées. Comme les classes mentionnées ci-dessus, VMMAllocationPolicy est une classe abstraite utilisée pour implémenter les stratégies de temps partagé. Il alloue également la puissance de traitement aux machines virtuelles.

  1. Caractéristiques de CloudSim

CloudSim possède certaines caractéristiques importantes qui en font le simulateur le plus approprié pour simuler notre travail. Les fonctionnalités des clés sont répertoriées comme suit:

  • Il est capable de gérer des applications de modélisation et de simulations à grande échelle.
  • Il prend en charge la stratégie de provisionnement des ressources à l’aide de la virtualisation pour héberger des machines virtuelles sur le serveur.
  • Il est également utilisé pour la modélisation et la simulation des ressources de calcul d’énergie.
  • Il a la capacité de simuler des topologies de réseau et des applications de transmission de messages.
  • Les nuages fédérés peuvent également être simulés.
  • L’utilisation de cet utilisateur a le contrôle sur les opérations de simulation telles que démarrer, reprendre et quitter.
  • Il a la possibilité de simuler des stratégies ou des politiques d’allocation de ressources définies par l’utilisateur sur des machines virtuelles.

L’objectif principal de CloudSim est de fournir un cadre extensible et complet qui facilite la modélisation, les simulations et tout autre type de services tels que IaaS, SaaS, etc. À l’aide de simulateurs, les utilisateurs peuvent se concentrer sur un problème spécifique examiné. Tous les autres simulateurs de cloud héritent des fonctionnalités de CloudSimirrespective du fait que l’interface utilisateur graphique (GUI) est disponible ou non.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.