IMPLEMENTATION DE LA SOLUTION OPENSTACK ET GESTION DE LA SECURITE

Télécharger le fichier pdf d’un mémoire de fin d’études

ETAT DE L’ART SUR LE CLOUD COMPUTING

Dans ce chapitre, nous allons présenter les notions et les concepts fondamentaux du Cloud Computing. La technologie qui la constitue et les différents acteurs du secteur.

Définition du cloud computing

Le cloud computing est un néologisme utilisé pour décrire l’association d’internet et l’utilisation de l’informatique dans laquelle tout est dynamiquement couplé et les ressources sont fournies sous la forme de service au travers d’internet. Les utilisateurs n’ont ainsi besoin d’aucune connaissances ni expérience en rapport avec la technologie utilisée derrière les services proposées.
D’un aspect purement technique, le Cloud Computing n’est pas en soi une technologie nouvelle, le Cloud Computing provient de l’aboutissement de plusieurs technologies existantes antérieurement : Internet et la Virtualisation le tout appuyé sur un réseau fiable et à haut débit. La virtualisation étant la mutualisation des moyens techniques informatiques, sur une seule machine physique on peut exécuter plusieurs machines virtuelles donc plusieurs systèmes d’exploitation et de multiples applications, cette virtualisation permet de déporter l’informatique interne d’une organisation sur une grille de serveurs virtuels accessible via le réseau internet. Après les architectures de mainframe et de clients/serveurs, le Cloud Computing tend à s’imposer comme un nouveau modèle.
Pour l’aspect « services » et d’après les spécialistes du Cloud Computing, l’informatique change d’ère et devient un service consommable à l’instar de l’électricité, dans son ouvrage The Big Switch: Rewiring the World, From Edison to Google, Nicholas Carr fait cette analogie avec l’électricité que chacun consomme comme un service sans connaître précisément son origine et sa mise en œuvre. Le Cloud Computing amènerait donc l’informatique vers une ère de service où chacun puiserait les fonctions ou matériels qui l’intéressent que ce soit pour des besoins personnels ou professionnels. Avant de s’attaquer au milieu professionnel, certains acteurs du Cloud Computing ont d’ailleurs conquis de nombreux utilisateurs privés qui ont adopté leurs technologies, on peut citer Gmail pour la messagerie « offerte » par Google et Windows Live pour Microsoft.
On peut également indiquer que le Cloud Computing permet d’accéder à ses données depuis n’importe quel appareil quel que soit l’endroit où l’on se trouve, permettant ainsi la mobilité des utilisateurs.
Après cette définition générale, on peut donner une vision plus pragmatique du Cloud Computing en décrivant ses différents types et ses multiples modèles de déploiement.

Historique des Clouds

Lors d’une conférence au MIT (Massachusetts Institute of Technology) en 1961, John McCarthy suggéra que la technologie informatique partagée («time-sharing») pouvait construire un bel avenir dans lequel la puissance de calcul et même les applications spécifiques pouvaient être vendues comme un service public.
Et le Cloud Computing met en œuvre l’idée d’informatique utilitaire du type service public, proposée par John McCarthy.
C’est dans cette philosophie, que depuis les années 70, on inventa la notion de «service bureau» pour qualifier une entreprise louant des lignes téléphoniques, services informatiques etc. IBM lui-même était un « service bureau » en proposant la notion de « on-demand ».
À l’époque, le coût d’achat et d’exploitation de mainframes IBM était hors de prix.
C’est pourquoi, des solutions permettant aux entreprises de pouvoir exploiter ces technologies à moindre frais avec la notion de « paiement à la consommation » furent proposées.
Après le «service bureau» nous pouvons noter les ASP, « Application Service Provider » qui ont aussi leur part dans l’historique du Cloud Computing. Une ASP désigne une application fournie comme un service. Plutôt que d’installer le logiciel sur le poste client en ayant à assurer les phases d’installation et de maintenance sur chaque poste, les applications ASP sont hébergées et centralisées sur un serveur unique et accessible par les clients au travers de protocole standard comme http pour des applications Web. Le déploiement, la configuration, la maintenance, la sauvegarde, etc. sont désormais de la responsabilité du fournisseur du service, le client est alors consommateur.
La pierre vers l’ère du Cloud Computing a été posée par la virtualisation. En effet, cette notion permet une gestion optimisée des ressources matérielles dans le but de pouvoir y exécuter plusieurs systèmes «virtuels» sur une seule ressource physique et fournir une couche supplémentaire d’abstraction du matériel.
C’est donc depuis presque 50 ans que l’idée d’une informatique à la demande est présente dans les esprits même si les technologies n’étaient jusqu’alors pas au rendez-vous pour pouvoir concrétiser cette idée

Les éléments cœurs du cloud Computing

La virtualisation

La virtualisation consiste à faire fonctionner un ou plusieurs systèmes d’exploitation sur un ou plusieurs ordinateurs. Cela peut sembler étrange d’installer deux systèmes d’exploitation sur une machine conçue pour en accueillir qu’un, mais comme nous le verrons par la suite, cette technique a de nombreux avantages.
Il est courant pour des entreprises de posséder de nombreux serveurs, tels que les serveurs de mail, de nom de domaine, de stockage pour ne citer que ceux-ci. Dans un contexte économique où il est important de rentabiliser tous les investissements, acheter plusieurs machines physiques pour héberger plusieurs serveurs n’est pas judicieux. De plus, une machine fonctionnant à 15 pour cent ne consomme pas plus d’énergie qu’une machine fonctionnant à 90 pour cent. Ainsi, regrouper ces serveurs sur une même machine peut donc s’avérer rentable si leurs pointes de charge ne coïncident pas systématiquement. Enfin, la virtualisation des serveurs permet une plus grande modularité dans la répartition charges et la reconfiguration des serveurs en cas d’évolution ou de défaillance momentanée.
Les intérêts de la virtualisation sont multiples. On peut citer :
L’utilisation optimale des ressources d’un parc de machines (répartition des machines virtuelles sur les machines physiques en fonction des charges respectives)
L’économie sur le matériel (consommation électrique, entretien physique, surveillance)
L’installation, tests, développements sans endommager le système hôte

Datacenter ou Centre de données

Un centre de traitement de données en anglais «data center » est un site physique sur lequel se trouvent regroupés des équipements constituants du système d’information de l’entreprise (mainframes, serveurs, baies de stockage, équipements réseaux et de télécommunications, etc.). Il peut être interne ou externe à l’entreprise, exploité ou non avec le soutien de prestataires. Il comprend en général un contrôle sur l’environnement (climatisation, système de prévention contre l’incendie, etc.), une alimentation d’urgence et redondante, ainsi qu’une sécurité physique élevée. Cette infrastructure peut être propre à une entreprise et utilisé par elle seule ou à des fins commerciales. Ainsi, des particuliers ou des entreprises peuvent venir y stocker leurs données suivant des modalités bien définies.

Plateforme collaborative

Une plate-forme de travail collaboratif est un outil centralisateur des informations liées à la conduite d’un projet ou d’une mission collective. Le travail collaboratif permet aux acteurs d’une mission de travailler ensemble en partageant de l’information, des processus, puis des valeurs communes.
Il permet ainsi de faciliter et d’optimiser la communication entre les individus dans le cadre du travail ou d’une tâche. Les plates-formes collaboratives intègrent généralement les éléments suivant :
des outils informatiques
des guides ou méthodes de travail en groupe, pour améliorer la communication, la production, la coordination.
Un service de messagerie.
Un système de partage de ressources et de fichiers.
Des outils de type forum, pages de discussions
Un trombinoscope, ou annuaire des profils des utilisateurs.
Des groupes, par projet ou par thématique.
Un calendrier ;

Architecture du Cloud computing

Différentes couches et modèles de cloud

Le Cloud Computing (ou « l’informatique dans les nuages » en français) est donc un concept permettant de centraliser, les calculs et le stockage des données sur les serveurs de fournisseurs de « services dans les nuages » sur Internet. Actuellement la plupart des applications logicielles utilisées sont situées sur la machine de l’utilisation ou alors sur un serveur d’entreprise. Ceci nécessite une maintenance importante des machines, des mises à jour régulières, une gestion des pannes et une gestion des sauvegardes en interne (occupant une grande partie du temps de la DSI). Le Cloud Computing permet de confier ceci à un fournisseur de services, extérieur à l’entreprise. Les « services dans les nuages » peuvent être vus comme un modèle en plusieurs couches .

Le modèle IaaS (Infrastructure as a Service)

Cette couche « Infrastructure as a Service », aussi connu sous le nom « HaaS : Hardware as a Service (c’est-à-dire une infrastructure physique fourni sous la forme d’un service) est la base du Cloud Computing. Elle désigne la couche basse du Cloud Computing et peut être considéré comme un point d’entrée dans les technologies du Cloud. L’IaaS est la mise à disposition de ressources matérielles comme des unités de puissance de calcul, de traitement, des capacités de stockage. Le fournisseur met donc à disposition de ses clients des serveurs « virtualisés » évolutifs suivant la demande.
L’IAAS permet de délivrer des ressources physiques (serveurs, mémoire RAM, espace disque, bande passante…) à la demande et sans limite. On paye ce que l’on consomme. Ce service inclut la duplication des données sur plusieurs serveurs (et/ou sur plusieurs sites physiques), afin de garantir l’intégrité des données en cas de panne d’un ou plusieurs serveurs, de problème sur un disque dur, de problème réseau etc. La montée en charge est gérée automatiquement, en équilibrant les différentes demandes sur plusieurs serveurs, garantissant une haute disponibilité et un temps de réponse rapide, ce qui n’est pas toujours le cas avec des applications hébergées en interne.
Cette infrastructure sera pilotée et administrée par l’entreprise cliente. Auparavant, l’entreprise cliente louait un serveur physique aux caractéristiques bien déterminées, elle peut maintenant louer un serveur dont les ressources peuvent évoluer en fonction de ses besoins de façon dynamique. Pour L’IAAS, le fournisseur mutualise les ressources grâce à la virtualisation de ses serveurs, de son réseau (infrastructure et liaisons) et de ses capacités de stockage.
Si on illustre l’IAAS par l’exemple, on peut citer plusieurs possibilités : l’IAAS permet un choix hardware et de systèmes d’exploitation différents de ce qui existe en interne pour les clients, l’IAAS assure une connectivité internet garantie continue. Il permet l’installation des applications et est adapté à un lancement du service sans investissement « lourd » il permet d’éprouver les performances des applications.

Le modèle PaaS (Plateforme as a Service)

Evolution de l’IAAS, le PAAS pour Platform As A Service (c’est-à-dire une plateforme fournie sous la forme d’un service) propose d’avantage que la seule couche matérielle, cette couche est la couche intermédiaire d’une solution Cloud Computing. Cette couche contient tous les outils permettant le développement, les tests, le déploiement et la maintenance d’une application logicielle. Permettant de faciliter le déploiement d’application sans avoir à gérer le côté matériel (hardware) ou le côté logiciel de base (système d’exploitation, serveur web…).
Si le PAAS s’appuie sur les infrastructures du Cloud, il propose également des éléments de middleware (bases de données, serveurs d’application comme Apache Tomcat,…). Ces plates-formes sont donc directement utilisables par des éditeurs qui proposeront leurs logiciels en mode Cloud. Ici, la responsabilité du fournisseur est au niveau du matériel et des services middleware proposés alors que la responsabilité de l’éditeur se situe du côté des logiciels qu’il installera sur le PAAS et de l’exploitation qui en est faite.
Le PAAS offre des ressources machines et de l’espace de stockage, mais est aussi une plateforme d’exécution pour les logiciels d’un éditeur qui souhaite disposer d’une vitrine Cloud. On peut noter toutefois que ces plateformes sont très souvent spécifiques à des langages ou à des bases de données (Apache, langage PHP, base MySQL ou bases non SQL par exemple) et les applications déployées par les entreprises utilisatrices de PAAS devront être compatibles. Les offres de PAAS incluent généralement les notions de temps de processeur, d’espace de stockage utilisée et de bande passante consommée. L’entreprise utilisatrice paiera ensuite en fonction de ce qu’elle a consommé.

Le modèle SaaS (Software as a Service)

Cette couche « Software as a Service » (c’est-à-dire un logiciel fourni sous la forme d’un service) est la dernière couche d’une solution Cloud Computing. Cette couche contient l’ensemble des logiciels utilisés par l’utilisateur final, qui ne sont plus installés sur sa machine, mais utilisable depuis un navigateur Web ou depuis un client léger. Avec cette architecture logicielle, l’utilisateur ne paye plus l’achat de licence, mais il paye un abonnement dont le montant varie en fonction de l’utilisation qu’il fait de l’application. Les principaux avantages du SaaS sont les suivants :
– financiers : l’utilisateur ne paye pas un coût de licence important s’il utilise très peu l’application. De plus, comme cela marche sous forme d’abonnement, les coûts sont répartis au court du temps, permettant de mieux prévoir les dépenses logicielles.
– maintenance/sécurité : la maintenance de l’application et les mises à jour sont gérés par le fournisseur du service, les DSI et les utilisateurs peuvent dès lors se concentrer sur leur cœur de métier. Les données sont conservées sur les serveurs du fournisseur, évitant ainsi les risques de perte de données si une machine tombe en panne, ou en cas de vol.
– collaboration : les données étant stockées sur des serveurs, on peut facilement interagir avec d’autres utilisateurs de l’entreprise (partage de documents, messagerie intégrée, …).
L’utilisateur se connecte au service via son navigateur Web ou un client léger, celui-ci interagissant avec les serveurs du fournisseur du service sous forme de requêtes HTTP (ou HTTPS).

Différentes couches et modèles de cloud

Du point de vue économique, le Cloud Computing est essentiellement une offre commerciale d’abonnement économique à des services externes. Selon le National Institute of Standards and Technology, il existe trois catégories de services qui peuvent être offerts en Cloud Computing: IaaS, PaaS et SaaS.
Les avantages et les inconvénients de ces services ce résume dans le tableau ci-dessous.

Type de Cloud computing

Selon les besoins des entreprises et des utilisateurs, il existe trois types de Cloud Computing

Les Cloud privés

Ce type de Cloud est créé et géré en interne pour les besoins d’une entreprise. Les serveurs hébergeant les services sont localisés dans les bâtiments de l’entreprise accessible à travers un réseau sécurisé, interne et fermé. Il est sous l’administration de la direction du service informatique. Dans ce cas, l’entreprise met sur pied sa propre politique de gestion de son Cloud. Le Cloud privé est une nouvelle approche qui améliore l’organisation et la gestion des services et de ressources informatiques, mais aussi la façon dont l’entreprise les consomme et les met à l’œuvre.
Les ressources informatiques ne remplissent plus des rôles prédéfinis et limités, elles forment un pool flexible dans lequel les processus et le personnel de l’entreprise viennent puiser en fonction des besoins et au moment précis où ils en ont besoin.

Les Cloud publics

Ce type de Cloud est créé par un organisme spécialisé qui met à disposition ses infrastructures, ses ressources pour des entreprises aussi multiples que variées. Ainsi, ces entreprises consommatrices de services utilisent et payent à la demande des services dont elles ont besoin. Les fournisseurs de services Cloud Computing garantissent une disponibilité et une qualité de service à travers un contrat signé avec le consommateur du service.
Le Cloud public se compose d’une palette de services tiers accessibles via Internet qui ne cesse de s’élargir. Les services étant proposés par des géants comme Google, l’ampleur de l’offre est énorme et le coût unitaire, potentiellement très faible. Une petite entreprise peut externaliser son infrastructure technologique tout entière et la majorité de ses applications métiers dans le Cloud public, et toute jeune entreprise peut faire largement appel au Cloud.

Les Cloud hybrides

Ce type de Cloud combine les Cloud public et privé. On peut ainsi déporter nos applications vers un Cloud public qui consommera des données stockées et exposées dans un Cloud privé, ou bien faire communiquer deux applications hébergées dans deux Cloud privés distincts, ou encore consommer plusieurs services hébergés dans des Clouds publics différents.

Avantages et inconvénients du Cloud

Les Avantages du Cloud Computing

Les avantages apportés par le cloud sont nombreux :
 Flexibilité
Le cloud répond aux demandes croissantes des entreprises en matière de bande passante importante. Grace à leurs grandes capacités et leur rapidité, les serveurs distants du cloud apportent une réponse adéquate et adaptée.
 Récupération des données
Le cloud simplifie considérablement la récupération de données. Le fournisseur gère les processus de beaucoup plus rapide.
 Absence de frais d’investissement
Dans la plupart des offres, le cloud est facturé à l’utilisation donc le client n’a pas à débourser en frais d’investissement.
 Collaboration accrue
La collaboration est améliorée avec le cloud car elle permet à chaque personne de l’entreprise de mettre son travail à la disposition des autres et ainsi de synchroniser les taches.
 Mobile
À partir du moment où les employés disposent d’un accès Internet, ils peuvent travailler de n’importe quel endroit.
 Sécurité
Quelque 800 000 ordinateurs portables sont perdus chaque année rien que dans les aéroports. Cela peut avoir de graves conséquences sur le plan financier, mais lorsque toutes les données sont stockées dans le cloud, elles restent toujours accessibles quoi qu’il arrive à ces ordinateurs portables.
Les inconvénients de Cloud Computing

Les Inconvénients du Cloud Computing

 L’accès au Cloud passe nécessairement par une connexion Internet : par conséquent, si votre connexion est coupée, momentanément ou durablement, vous n’avez plus accès à vos documents ou services,
 Sécurité : la plateforme Cloud, si elle est externe (non installée sur le réseau interne ou avec une ouverture extérieure) doit être suffisamment sécurisée pour éviter le risque d’intrusion, de vol des données par piratage.
 La pérennité du service : Il est nécessaire de se demander si l’hébergeur cloud va durer dans le temps. Cet élément est important à prendre en compte car un changement d’hébergeur peut prendre du temps, et peut nécessiter un recodage des applications.

Conclusion

Le cloud computing présente de nombreux avantages. Cependant, certaines entreprises n’ont pas intérêt à passer à l’informatique dans les nuages sans pour autant tenir compte des aspects sécuritaires et législatifs.

Le rapport de stage ou le pfe est un document d’analyse, de synthèse et d’évaluation de votre apprentissage, c’est pour cela rapport-gratuit.com propose le téléchargement des modèles complet de projet de fin d’étude, rapport de stage, mémoire, pfe, thèse, pour connaître la méthodologie à avoir et savoir comment construire les parties d’un projet de fin d’étude.

Table des matières

SIGLES ET ABREVIATIONS
CHAPITRE 1 : PRESENTATION GENERALE DE CSI-WARI
I.1 Historique
I.2 Etude de l’existant
I.2.1 Objectifs
I.2.2 Solutions proposées au marché
I.2.3 Direction Générale
I.3 Problématique
I.4 Objectifs et Méthodologie
I.4.1 Objectifs
I.4.2 Méthodologie
CHAPITRE 2 : ETAT DE L’ART SUR LE CLOUD COMPUTING
II.1 Définition du cloud computing
II.2 Historique des Clouds
II.2 Les éléments cœurs du cloud Computing
II.2.1 La virtualisation
II.2.2 Datacenter ou Centre de données
II.2.3 Plateforme collaborative
II.3 Architecture du Cloud computing
II.3.1 Différentes couches et modèles de cloud
II.3.1.1 Le modèle IaaS (Infrastructure as a Service)
II.3.1.2 Le modèle PaaS (Plateforme as a Service)
II.3.1.3 Le modèle SaaS (Software as a Service)
II.3.2 Différentes couches et modèles de cloud
II.4 Type de Cloud computing
II.4.1 Les Cloud privés
II.4.2. Les Cloud publics
II.4.3 Les Cloud hybrides
II.4.4 Avantages et inconvénients du Cloud
II.4.4.1 Les Avantages du Cloud Computing
II.4.4.2 Les Inconvénients du Cloud Computing
CHAPITRE 3 : LES SOLUTIONS DU CLOUD COMPUTING
III.1 Plateforme propriétaire de Cloud Computing
III.1.1 Microsoft Windows Azure
III.1.2 Google AppEngine
III.1.3 La plateforme EC2 d’Amazon
III.2 Solutions open sources de Cloud Computing
III.2.1 Eucalyptus
III.2.2 OpenNebula
III.2.3 OpenStack
III.2.3.1 Les logiciels cœurs d’OpenStack
III.2.3.1.1 Nova (OpenStack Compute)
III.2.3.1.2 Swift (OpenStack Object Storage)
III.2.3.1.3 Imagine Service (OpenStack Compute)
III.2.3.2 Etude comparative et choix de la solution open source de Cloud Computing
CHAPITRE 4 : IMPLEMENTATION DE LA SOLUTION OPENSTACK ET GESTION DE LA SECURITE
IV.1 Installation de la solution OpenStack
IV.1.1 Prérequis
IV.1.2 Architecture de notre système
IV.1.3 Configuration Réseaux
IV.1.4 Installation des dépendances
IV.1.5 Installation du serveur de temps NTP
IV.1.6 Préparation de la base de données MYSQL
IV.1.7 Installation et configuration du composant Keystone
IV.1.8 Dashboard Horizon
IV.2 Sécurité du Cloud Computing
IV.3 Gestion de la sécurité du Cloud
IV.4 Quelques outils de supervision pour améliorer la sécurité
IV.4.1 EtherApe
IV.4.2 IPtraf
IV.4.3 Dstat
CONCLUSION ET PERSPECTIVES
ANNEXES
BIBLIOGRAPHIE
WEBOGRAPHIE

Télécharger le rapport complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *