pour MASTER ACADEMIQUE - univ-eloued.dz › images › memoir › file › M.T-133-01.pdf ·...

download pour MASTER ACADEMIQUE - univ-eloued.dz › images › memoir › file › M.T-133-01.pdf · 2015-10-26 · Tableau I -1 : avantages et Inconvénients des services cloud YYYYYYYYXXYY

If you can't read please download the document

Transcript of pour MASTER ACADEMIQUE - univ-eloued.dz › images › memoir › file › M.T-133-01.pdf ·...

  • République Algérienne Démocratique et Populaire

    Minstère de l’Enseignement Supérieur et de la

    Recherche Scientifique

    UNIVERSITÉ D’Echahid Hamma

    Lakhdar-EL-OUED

    FACULTE DES SCIENCES EXACTES

    Mémoire de fin d’étude

    pour l’obtention du diplôme de

    MASTER ACADEMIQUE

    Département : Mathématique et Informatique

    Filière : Informatique

    Spécialité : Système distribué & Intelligence Artificielle

    Présenté par : GUEDIRI Khelil & NASRI Redouane

    Thème

    Soutenu le Septembre 2015

    Devant le jury ci-dessous : Président

    Examinateur

    Rapporteur Mr MEDILAH Saci

    Année Universitaire 2014/2015

    N° d’ordre :

    N° de série :

    Réalisation et conception d’un cloud computing

    pour l’Université d’El-Oued

  • DEDICACES

    Je dédie mon travail aux femmes et hommes, qui doutent

    De leurs certitudes, osent aller à la difficile rencontre de l’autre

    Exploitent la connaissance et cherchent des moyens

    D’améliorer la qualité de vie des êtres humains

  • Remerciements

    Nous remercions Allah le tout puissant, qui nous a donné

    la force et la patience pour l’accomplissement de ce

    travail.

    Cette page n’aurait probablement pas pu s’écrire sans

    l’appui moral des membres de nos familles. Nous les

    remercions tous, particulièrement nos parents qui nous

    supporter dans toutes nos vie, et nous leur dédie ce

    mémoire. Nous frères pour l’amour qu’ils nous ont

    apporté tous les jours, et nous amis qui ont nous supporté.

    Mr

    MEDILAH Saci, pour l’effort fourni, les conseils

    prodigués, se patient et se persévérant dans le suivi.

    Ceci a été un plaisir et un honneur de travailler avec

    quelqu’un d’aussi compétent et d’aussi cultivé.

    Nous adressons également nos remerciements, à tous nos

    enseignants, pour leurs aides inestimables, qui nous ont

    donné les bases de la science, aussi les membres de jury

    d’avoir bien voulu accepter de faire partie de la

    commission d’examinateur.

    Nous tenons à remercier aussi l’ensemble du personnel

    de l'institut des sciences et technologies et surtout

    département Informatique.

    Merci à nos camarades d’informatique.

    A toute personne qui a participé de près ou de loin pour

    l’accomplissement de ce modeste travail. Enfin, pour

    finir et pour être sûre de n’oublier personne, nous

    remercions tout le monde.

  • ملخـــــــــــــــــــــــص:

    إن كبر حجم البٌانات و صعوبة نقلها من مكان آلخر، و كذا غالء تكالٌف شراء معدات ذات مواصفات عالٌة

    لمعالجة بعض البٌانات الكبٌرة أو المعقدة، أدى بالمؤسسات والخواص إلى البحث عن تقنٌة تحد من هذه العوائق.

    أدى هذا إلى ظهور ما ٌسمى بـالحوسبة السحابٌة.

    فً الحقٌقة ال ٌمكن أن نطلق على الحوسبة السحابٌة بالتقنٌة الجدٌدة ، وإنما هً خدمة بشكل جدٌد.

    و ٌمكن أن نعرف الحىسبة السحابية على أنها استخدام المصادر الحوسبٌة )العتاد والبرمجٌات( عن طرٌق االنترنت

    )افتراضٌة(، حٌث أنها مقّدمة على شكل خدمات.

    الهدف من بحثنا هو إنشاء حوسبة سحابٌة لجامعة الوادي، و أخذنا كمثال خدمة المكتبة اإلفتراضٌة حٌث تقدم قائمة

    الكتب و المذكرات، و كذا إضافة و تحمٌل ملفات أخرى.

    للحوسبة السحابٌة عدة فوائد أهمها: سهولة الوصول للبٌانات، خفض التكالٌف، ضمان عمل الخدمة بشكل دائم،

    االستفادة من البنى التحتٌة الضخمة و المكلفة.

    لكنها بالمقابل تحتوي على مساويء منها: ضعف تأمٌن البٌانات)خاصة السرٌة( رغم تطور وسائل األمان، انقطاع

    الكهرباء أو االنترنات.

    فً األخٌر ٌمكن أن نقول أن الحوسبة السحابٌة هً مستقبل خدمات االنترنات.

    :يةـــــــــــات مفتاحـــــــــلمـك

    افتراضية.، دمات الىيب خل نأمازو، بنية تحتيةالحىسبة السحابية،

  • Résumé

    La grande taille des données et la difficulté de la transporté d'un endroit à l'autre, ainsi

    que le coût élevé des prix de l'équipement de haute spécification pour traiter certaines des

    données complexe ou volumineux, ont conduit les institutions et les propriétés à chercher

    un technique pour réduire ces obstacles. Cela a mené à ce qu'on appelle le cloud

    computing.

    En effet, nous ne pouvons pas appeler le cloud computing comme une nouvelle

    technologie, mais il est un service dans une nouvelle façon.

    Cloud computing peut être définie comme l'utilisation des ressources informatiques

    (matériels et logiciels) via Internet (virtuellement), où il est prévu sur la forme des

    services.

    Le but de notre recherche est de créer un cloud computing à l'Université de l’El-Oued, et

    nous prenons comme un exemple le service de bibliothèque virtuelle, qui fournir une liste

    de livres et de mémoires, et ainsi que charger et télécharger d'autres fichiers.

    Cloud computing à des plusieurs avantages tel que : accès facile aux données, réduction

    des coûts, assurer le service définitivement, bénéficier de l'infrastructure énorme et

    coûteuse.

    Mais d'autre part, il présente des inconvénients, notamment: la faiblesse de sécurité des

    données (particulièrement les secrets), coupures de courant ou d’internet.

    Finalement, on peut dire que le cloud computing est l'avenir de services internet.

    Mots clés :

    Informatique en nuages, plateforme, Web Services d’Amazon, virtualisation.

  • Sommaire Introduction générale

    1

    Chapitre I : Etat de l'art 3

    I.1. Introduction 4

    I.2. Définition 4

    I.3. Historique 5

    I.4. Eléments constitutifs du Cloud Computing 6

    I.4.1. La virtualization 6

    I.4.2. Datacenter 6

    I.4.3. Plateforme collaborative 7

    I.5. Modèles de services Cloud 7

    I.5.1. Software as a Service (SaaS) 7

    I.5.2. Platform as a Service (PaaS) 8

    I.5.3. Infrastructure as a Service (IaaS) 8

    I.5.4. Avantages et Inconvénients des services 9

    I.6. Modèles de déploiement 9

    I.6.1. Le cloud public 9

    I.6.2. Le cloud privé 10

    I.6.3. Le cloud hybride 10

    I. 6.4. Le cloud communautaire 11

    I.7. Plates-formes de Cloud Computing 12

    I.7.1. Solution Open Source 12

    I.7.1.1. OpenNebula 12

    I.7.1.2. Eucalyptus 12

    I.7.1.3. OpenStack 13

    I.8.2. Solution propriétaire 14

    I.8.2.1. Microsoft Azure 14

    I.8.2.2. Redhat CloudForms 14

    I.8.2.3. Amazon S3 15

    I.9. comparaison entre OpenStack vs AWS 15

    I.10. Conclusion

    16

    Chapitre II : Architecture cloud computing 18

    II.1. Introduction 19

    II.2. Amazon Web Services 19

    II.3. Liste de services AWS 19

    II.4. Description d'Amazon S3 20

    II.5. Caractéristiques principales 21

    II.5.1. Protection des données 21

    II.5.2. Mécanismes de contrôle d'accès flexibles 21

    II.5.3. Journaux d'audit 21

    II.5.4. Contrôle de version 22

    II.5.5. Suppression authentification multi-facteurs 22

    II.5.6. Notifications d'événements 22

    II.5.7. Durabilité et fiabilité des données 23

    II.5.8. Stockage RRS (Reduced Redundancy Storage) 23

  • II.5.9. Gestion de vos données 24

    II.5.10. Gestion du cycle de vie des données 24

    II.6. Pourquoi Amazon S3 ? 25

    II.6.1. Architecture 25

    II.6.2. Croissance 26

    II.6.3. Exemples d’utilisation 26

    II.7. Conclusion

    26

    Chapitre III : Conception et Architecture générale 27

    III. Introduction 28

    III.2. LANGUAGE UML : 28

    III.2.1. Définition UML 28

    III.2.2.Pourquoi UML ? 29

    III.2.3.Les diagrammes UML [Ahmed, Introduction à UML, 2011] 29

    III.2.3.1. Diagrammes structurels ou diagrammes statiques (UML

    Structure)

    29

    III.2.3.2. Diagrammes comportementaux ou diagrammes dynamiques

    (UML Behavior)

    30

    Méthode d’analyse : Processus unifié 30

    III.3. Spécification des besoins fonctionnels : 31

    III.3.1. Acteurs et taches : 31

    III.3.2. Les Diagrammes de cas utilisation 32

    III.3.2.1. Général 32

    III.3.2.2. Diagrammes des cas d'utilisation détaillées par acteur 32

    III.3.2.2.1. Diagramme de cas utilisation d'Administrateur 32

    III.3.2.2.2. Diagramme de cas d'utilisation d'utilisateur 33

    III.3.2.2.3. Diagramme de cas d'utilisation de visiteur 34

    III.3.3. Diagramme de séquence et d’activité 35

    III.3.4. Diagramme de classe 40

    III.4. Conclusion

    41

    Chapitre IV : Implémentation 42

    IV.1. Introduction 43

    IV.2. ENVIRONNEMENT DU TRAVAIL 43

    IV.2.1. Choix du langage de programmation (PHP) 43

    IV.2.2. Choix d’éditeur 43

    IV.2.2.1. Dreamweaver 43

    IV.2.2.2. EasyPHP 43

    IV.2.2.3. Kit de développement logiciel (SDK) d’Amazon web services

    de PHP

    44

    IV.2.3. Choix technique 44

    IV.3. Configuration de plateforme Amazon S3 44

    IV.3.1 :Inscription 44

    IV.3.2.. Gestion de bucket sur Amazon S3 46

    IV.3.2.1. Définition de bucket 46

    IV.3.2.2. Création d'un Bucket 46

    IV.3.2.3. Parcourir les des objets dans votre bucket 49

    IV.3.2.4. Suppression ou vider un bucket Amazon S3 50

  • IV.3.2.5. Téléchargement des objets de bucket 52

    IV.4. Spécification du logiciel 53

    IV.5. Conclusion

    55

    Conclusion générale 56

  • Liste de figures Page

    Figure I-1 : Cloud compting …………………………………………………………………………….. 04 Figure I-2: Service du Cloud Computing …………………………………………..………….……….. 08

    Figure I-3: Cloud public ……………………………………………………………………….………….. 09 Figure I-4:Cloud Privé ……………………………………………………………………………………….… 10

    Figure I-5:Cloud Hybride ……………………………………………………………………..…………. 10

    Figure I-6:Cloud Communautaire ………………………………………………………….………... 11 Figure III -1 : Diagramme de cas utilisation générale de notre système ……..…... 32

    Figure III -2 : Diagramme de cas utilisation d'Admin ………………………………………. 33 Figure III -3 : Diagramme de cas utilisation d'utilisateur ………………………………….. 34 Figure III -4 : Diagramme de cas utilisation de visiteur ……………………………………. 35 Figure III-5: Diagramme de séquence de chargement un fichier pour

    l’administrateur ………………………………………………………………………………………………..

    36 Figure III-6: Diagramme de séquence de téléchargement un fichier pour

    l’administrateur …………………………………………………………………………………………………

    37

    Figure III-9: Diagramme de séquence de chargement un fichier pour l’utilisateur 38

    Figure III-10: Diagramme de séquence de téléchargement un fichier pour

    l’utilisateur………………………………………………………………...........

    38 Figure III-11: Diagramme de séquence de création de compte ……………………… 39

    Figure III-12: Diagramme d’activité ………………………………………………………………. 39

    Figure III-13: Diagramme de classe ………………………………………………………………. 41 Figure IV-1 : inscrire à Amazon Web Service ………………………………………………… 45

    Figure IV-2 : les service d’Amazon Web Service …………………………………………… 45

    Figure IV-3 : création de bucket – select le nom et région ……………………………… 46 Figure IV-4 : création de bucket - consignation de configuration …………………… 48

    Figure IV-5 : les buckets créé …………………………………………………………………………. 48 Figure IV-6 :panneau de saut ………………………………………………………………………….. 49 Figure IV -7 :passer à un objet dans un liste …………………………………………………… 50 Figure IV-8 : gestion de bucket ………………………………………………………………………. 51

    Figure IV-9 : validation ou annulation de suppression …………………………………………… 51

    Figure IV-10 :validation ou annulation de vider un bucket ……………………………… 52

    Figure IV-11 : page accueil de site ………………………………………………………………….. 53 Figure IV-12 : page de bibliothèque (charger/télécharger) ………………………………. 53

    Figure IV-13 : remplir les détails de fichier à charger …………………………………….. 54

    Figure IV -14 : charger un fichier ……………………………………………………………………. 54 Figure IV-15 : télécharger un fichier ……………………………………………………………….. 55

  • Liste de tableaux Page

    Tableau I-1 : avantages et Inconvénients des services cloud ……………………..……. 08

    Tableau I-2 : comparaison entre OpenStack vs AWS………………………………………. 15 Tableau II-1 : Nombre de fichiers informatiques enregistrés sur Amazon S3 …. 25

    Tableau III-1 : Les tâches des acteurs …………………………………………..…………..……. 32

    Tableau III-1 : Les classe et les Attributs ……………………………………………….….……. 40

    Table IV-1 : include de SDK…………………………………………………….. 44

  • Page 1

    Introduction générale

    Introduction

    De nombreux organismes et entreprises utilisent des ordinateurs pour stocker leurs

    ressources de données ou d'exécuter des applications ou à développer leurs programmes.

    Ces dispositifs ont besoin de maintenir et gérer et a fourni un endroit pour travailler et à

    garantir l'utilisation efficiente aussi, La nécessité de ces dispositifs varie de temps à

    autre. Alors, ces institutions et ces entreprises ont commencé à chercher d'autres solutions

    qui se basent sur deux facteurs importants qui sont: fournir des ressources et travailler de

    manière efficace.

    Il y'a beaucoup de solutions qui offrent ces deux facteurs, de ces solutions on a ce qu'on

    appelle "cloud computing" ce qui offrent à l'utilisateur de nombreuses options pour les

    services d'information à travers le Web.

    Cloud computing (en français, l'informatique dans le nuage) est devenu un concept

    majeur faisant référence à l'utilisation de la mémoire et des capacités de calcul des

    ordinateurs et des serveurs répartis dans le monde entier et liés par un réseau, tel Internet .

    Les utilisateurs (le plus souvent des entreprises, mais aussi vous ou nous) ne sont plus

    propriétaires de leurs serveurs informatiques mais peuvent ainsi accéder de manière

    évolutive à de nombreux services en ligne sans avoir à gérer l'infrastructure sous-jacente,

    souvent complexe. Les applications et les données ne se trouvent plus sur l'ordinateur

    local, mais sur le Cloud; composé d'un certain nombre de serveurs distants interconnectés

    au moyen d'une excellente bande passante indispensable à la fluidité du système. L'accès

    au service se fait par une application standard facilement disponible, la plupart du temps

    un navigateur Web. Dans notre projet, on a choisi le service de stockage en cloud.

    A la demande croissante pour l'utilisation des appareils mobiles tels que les téléphones

    intelligents et les tablettes de différentes tailles, le concept de stockage de données a été

    changé de sorte que le stockage local est déminué sur les disques dur de PC et les

    smartphones, au même temps l'incrise de cloud stockage. Stockage Cloud offre plusieurs

    caractéristiques, les plus importantes est: accès facile aux données à partir de n'importe

    où vous êtes, et offrant une plus grande fiabilité et disponibilité, parce que elle est

    protégée contre les catastrophes et dommages, ainsi que la possibilité de partager des

    fichiers avec d'autres personnes et la coopération dans divers réalisations de différentes

    activités.

  • Page 2

    Problématique

    A cause du cout élevé de serveur de stockage, leur gestion, sécurité et maintenance, en

    plus elle a besoin de grands lieux à installer. D’un autre côté, notre université nécessite

    une Grande espace de stockage pour leurs données tel que l’archive les documents

    (livres, mémoires, cours ...etc.).comme le cloud offre une espace de stockage et une

    sécurité élevée, on l'a choisi comme une solution.

    A ces points, l’objectif de ce projet est de réaliser un cloud pour l’université d’El Oued.

    Organisation de mémoire

    Dans le premier chapitre, on a présenté une vue générale sur le cloud, en commençant par

    les définitions de cloud, historique, éléments constitue de cloud. Après, on a passé vers

    les modèles de services, et déploiement. Ensuite, on a présenté les modèles plateformes le

    plus connu et comparaissant. On conclue par une présentation d’avantages et

    inconvénients.

    Le deuxième chapitre contient la présentation de plateformes choisis, et la justification de

    notre choix, ainsi que la description et les caractéristiques de la plateforme.

    Ensuite, dans le troisième chapitre on fait la conception et l’architecture générale, en

    utilisant le langage de modélisation UML.

    Enfin, dans le dernier chapitre nous présentons les moyens et les outils pour

    l’implémentation de notre projet et illustre avec des exemples.

  • Page 3

    Chapitre I :

    Cloud computing, Etat de l'art

  • Page 4

    I.1. Introduction Lorsque vous stockez vos photos en ligne plutôt que sur votre ordinateur à la maison, ou

    de l'utilisation webmail ou d'un site de réseau social, vous utilisez un service de "cloud

    computing". Si vous êtes une organisation, et que vous voulez utiliser, par exemple, un service de

    facturation en ligne est un service de «cloud computing ».

    Cloud computing fait référence à la livraison de ressources informatiques plus l'Internet.

    Au lieu de garder des données sur votre propre disque dur ou la mise à jour applications pour vos

    besoins, vous utilisez un service sur Internet, à un autre emplacement, pour stocker vos

    informations ou utiliser ses applications.

    Les synonymes du Cloud Computing en français sont : nuage informatique, l’informatique

    virtuelle, informatique dans les nuages, informatique en nuage ou encore informatique

    dématérialisée.

    I.2. Définition Selon la définition du National Institute of Standards and Technology (NIST), le cloud

    computing est l'accès via un réseau de télécommunications, à la demande et en libre-service, à

    des ressources informatiques partagées configurables (réseaux, serveurs, stockage, applications et

    services), qui peuvent être provisionnées rapidement et libérées avec un effort de gestion

    minimale ou prestataire de services interaction. Ce modèle de nuage est composé de cinq

    caractéristiques essentielles, trois modèles de services et quatre modèles de déploiement. [the

    NEST 2011]

    Pour CISCO Le Cloud Computing est une plateforme de mutualisation informatique

    fournissant aux entreprises des services à la demande avec l’illusion d’une infinité de ressources.

    [CISCO 2009]

    Alors, le Cloud Computing est un concept qui consiste à transférer des fichiers ou des bases

    de données sur des serveurs à distance, qui étaient auparavant stockés dans la machine de client.

    Il permet d’accéder sur demande aux mêmes informations par plusieurs personnes.

  • Page 5

    Figure I-1 : Cloud compting

    I.3. Historique

    Le Cloud Computing existait déjà sous différents noms comme « externalisation » et «

    hébergement sur serveur». Mais la faible performance des processeurs employés, la lenteur des

    connexions internet et les coûts exorbitants des matériels employés, ne permettaient pas

    l’exploitation des services et des espaces de stockage. Et les progrès de la technologie actuelle

    ont ouvert la voie pour ces opérations. Elle a apporté des serveurs nettement plus performants

    mais moins coûteux. De plus, les connexions en hauts débits, ont permis un traitement plus rapide

    des fluctuations des demandes.

    Le Cloud Computing en version exploitable, est le fruit des investigations effectuées par

    Amazon Web Services (IaaS) en 2002. Cette société leader du e-business, satisfaisait

    régulièrement les grosses commandes ponctuelles sur son site, lors des fêtes de Noël. Elle a

    investi dans un parc gigantesque de machines. Et ces dernières ne sont pas exploitées

    correctement le reste de l’année. La diminution de la puissance du parc, ne pouvait pas résoudre

    le problème. En effet, il subsistait toujours des pointes d’appels, lors des fêtes. Et l’indisponibilité

    de leur site serait cruciale pour leurs affaires, car elle représentait la majorité de son chiffre

    d’affaire. Ce sera un impact négatif difficile à rattraper.

    L’idée est alors venue chez Amazon, de louer ces ressources à des entreprises, durant les

    périodes hors fêtes, et à la demande. Le résultat ne s’est pas fait attendre, puisque les avantages

    de ce concept sont nombreux pour les entreprises. Elles n’ont pas à se soucier de l’investissement

  • Page 6

    en grosses machines, ou de la gestion de machines et d’hommes, alors que ses services sont

    effectués dans les normes et au moindre coût.

    Ses clients augmentent continuellement, et Amazon effectue des extensions de ses parcs et

    de ses prestations pour satisfaire les demandes. D’autres sociétés de service IT comme Google et

    Microsoft, ont suivi le courant. Elles se sont mises dernièrement à fournir des services identiques.

    Il y a également FlexiScale, RackSpace et GoGrid. On les classe comme des fournisseurs

    d’environnement Cloud. Selon l’Institut de consulting Gartner, une forte référence pour le

    domaine, le Cloud Computing arrivera bientôt au même niveau d’affaire que celui du E-business

    en son temps. 2013 était l’année de son adoption massive par les entreprises.

    Beaucoup de gens utilise le Cloud quotidiennement sans le savoir. On le retrouve par

    exemple dans toutes les versions de mails, Web mail, Hotmail, ou Gmail, dans les offices comme

    le Word et l’excell de microsoft. Les usagers de ces moyens informatiques accèdent, grâce à

    l’internet, à des ressources qu’ils ne peuvent pas situer physiquement. Ces accès, comme avec le

    webmail, peuvent être gratuits, tandis que d’autres fonctionnent par abonnement. Pour ce dernier

    cas, le service est garanti jusqu’à un certain niveau. L’abonné paye ce qu’il a consommé, comme

    la facturation d’électricité ou d’eau. La différence, c’est que la consommation en Cloud est

    pratiquement illimitée. [1]

    I.4. Eléments constitutifs du Cloud Computing

    I.4.1. La virtualization

    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 % ne consomme pas plus d'énergie qu'une machine fonctionnant à

    90 %. 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 un bien plus grande modularité dans la

    répartition des charges et la reconfiguration des serveurs en cas d'évolution ou de défaillance

    momentanée. [Noumsi 2012]

    I.4.2. Datacenter

    Un centre de traitement de données (data centre en anglais) est un site physique sur lequel

    se trouvent regroupés des équipements constituants du système d'information de l'entreprise

  • Page 7

    (mainframes, serveurs, baies de stockage, équipements réseaux et de télécommunications,

    etc.). Il peut être interne et/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ée 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. (Noumsi 2012)

    I.4.3. Plateforme collaborative

    Une plate-forme de travail collaboratif est un espace de travail virtuel. C'est un site qui

    centralise tous les outils liés à la conduite d'un projet et les met à disposition des acteurs.

    L'objectif du travail collaboratif est 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. [Noumsi 2012]

    I.5. Modèles de services Cloud

    I.5.1. Software as a Service (SaaS)

    Ce modèle de service est caractérisé par l’utilisation d’une application partagée qui

    fonctionne sur une infrastructure Cloud. L’utilisateur accède à l’application par le réseau au

    travers de divers types de terminaux (souvent via un navigateur web). L’administrateur de

    l’application ne gère pas et ne contrôle pas l’infrastructure sous-jacente (réseaux, serveurs,

  • Page 8

    applications, stockage). Il ne contrôle pas les fonctions de l’application à l’exception d’un

    paramétrage de quelques fonctions utilisateurs limitées. On prend comme exemple les logiciels

    de messagerie au travers d’un navigateur comme Gmail ou Yahoo mail. [2]

    I.5.2. Platform as a Service (PaaS)

    L’utilisateur a la possibilité de créer et de déployer sur une infrastructure Cloud PaaS ses

    propres applications en utilisant les langages et les outils du fournisseur. .L’utilisateur ne gère pas

    ou ne contrôle pas l’infrastructure Cloud sous-jacente (réseaux, serveurs, stockage) mais

    l’utilisateur contrôle l’application déployée et sa configuration. Comme exemple de PaaS, on

    peut citer un des plus anciens -Intuit Quickbase- qui permet de déployer ses applications bases de

    données en ligne ou -Google Apps Engine (GAE)- pour déployer des services Web. Dans ces

    deux cas l’utilisateur de ces services n’a pas à gérer des serveurs ou des systèmes pour déployer

    ses applications en ligne et dimensionner des ressources adaptées au trafic. [2]

    I.5.3. Infrastructure as a Service (IaaS)

    L’utilisateur loue des moyens de calcul et de stockage, des capacités réseau et d’autres

    ressources indispensables (partage de charge, pare-feu, cache). L’utilisateur a la possibilité de

    déployer n’importe quel type de logiciel incluant les systèmes d’exploitation.

    L’utilisateur ne gère pas ou ne contrôle pas l’infrastructure Cloud sous-jacente mais il a le

    contrôle sur les systèmes d’exploitation, le stockage et les applications. Il peut aussi choisir les

    caractéristiques principales des équipements réseau comme le partage de charge, les pare-feu, etc.

    L’exemple emblématique de ce type de service est Amazon Web Services qui fournit du calcul

    (EC2), du stockage (S3, EBS), des bases de données en ligne (SimpleDB) et quantité d’autres

    services de base. Il est maintenant imité par de très nombreux fournisseurs. [2]

    Figure I-2: modèles de services du Cloud Computing

  • Page 9

    I.5.4. Avantages et Inconvénients des services

    Avantage Inconvénient

    SaaS

    Pas d’installation

    Plus de licence

    Migration

    Logiciel limité

    Sécurité

    Dépendance de prestataire

    PaaS

    Pas d'infrastructure

    nécessaire

    Pas d'installation

    Environnement hétérogène

    Limitation des langages

    Pas de personnalisation dans la

    configuration des machines

    virtuelles

    IaaS

    Administration

    Personnalisation

    Flexibilité d'utilisation

    Sécurité

    Besoin d'un administrateur

    système

    Tableau I-1 : avantages et Inconvénients des services cloud

    I.6. Modèles de déploiement

    Certains distinguent quatre modèles de déploiement. Nous les citons ci-après bien que ces

    modèles n’aient que peu d’influence sur les caractéristiques techniques des systèmes déployées.

    I.6.1. Le cloud public

    Un service dans le cloud public est l'équivalent d'un service sur Internet. L'infrastructure et

    les applications du client sont hébergées chez un prestataire de services dans le cloud, à l'endroit

    où celui-ci est installé. Le client n'a aucune visibilité ni aucun contrôle sur l'endroit où les

    services sont hébergés dans le cloud. L'infrastructure principale est partagée par plusieurs

    entreprises, mais les données et l'usage des applications sont séparés logiquement, de manière à

    ce que seuls les utilisateurs autorisés y aient accès. Le service dans le cloud public intéresse les

    décideurs car il réduit la complexité et les délais de mise en œuvre, imputables aux tests et au

    déploiement de nouvelles applications. [3]

  • Page 10

    Figure I-3: Cloud public

    I.6.2. Le cloud privé

    On parle de service dans le cloud privé, ou encore de cloud interne ou de cloud

    d'entreprise, lorsque l'infrastructure informatique est hébergée sur une plateforme privée, dans le

    centre de données du client. Cette infrastructure est dédiée à l'entreprise et n'est pas partagée avec

    d'autres. La virtualisation est la clé de la mise en œuvre d'un cloud privé par les entreprises. Elle

    permet aux entreprises d'économiser sur les coûts en utilisant l'infrastructure matérielle existante,

    sans avoir à acquérir d'équipement supplémentaire, comme dans le cas du cloud public. La

    grande différence, bien sûr, est que le cloud privé est situé dans les locaux du client et que celui-

    ci peut mieux contrôler l'infrastructure. Il faut garder à l'esprit que le cloud privé offre également

    des capacités à la demande, grâce auxquelles des services peuvent être ajoutés aussi rapidement

    qu'il est nécessaire. [3]

    Figure I-4:Cloud Privé

    I.6.3. Le cloud hybride

    Un service de cloud hybride combine le cloud privé et le cloud public. Dans le cas du

    cloud hybride, l'entreprise garde certaines de ses opérations dans le cloud privé sur site et utilise

    les services de cloud public chez un hébergeur pour les autres. Par exemple, pour une entreprise

    qui a des besoins variables et travaille à la fois avec des données sensibles et non sensibles, le

    cloud hybride donne le meilleur des deux configurations de cloud. L'approche hybride permet de

  • Page 11

    bénéficier de l'extensibilité et de l'efficacité du cloud public, tout en conservant les applications

    importantes sur un cloud privé. [3]

    Figure I-5:Cloud Hybride

    I.6.4. Le cloud communautaire

    L'infrastructure Cloud est partagée par plusieurs organisations pour les besoins d’une

    communauté qui souhaite mettre en commun des moyens (sécurité, conformité, etc..). Elle peut

    être gérée par les organisations ou par une tierce partie et peut être placée dans les locaux ou à

    l’extérieur. [2]

    Figure I-6:Cloud Communautaire

  • Page 12

    I.7. Plates-formes de Cloud Computing

    I.7.1. Solution Open Source

    I.7.1.1. OpenNebula

    OpenNebula est une plate-forme de cloud computing pour la gestion hétérogène de données

    distribuées infrastructures des centres. La plate-forme gère OpenNebula infrastructure virtuelle

    d'un centre de données pour construire des implémentations privées, publics et hybrides de

    l'infrastructure en tant que service(IaaS). OpenNebula est un logiciel libre et open-source. [5]

    OpenNebula est soutenu par le projet européen RESERVOIR, qui propose une architecture

    complète pour la gestion de Datacenter et la création de services Cloud. [6]

    Les principes conception d’OpenNebula sont :

    L'ouverture de l'architecture, interfaces, et le code.

    Flexibilité pour se adapter dans ne importe quel centre de données.

    L'interopérabilité et la portabilité pour prévenir lock-in fournisseur.

    Stabilité pour l'utilisation dans des environnements de classe entreprise de production.

    L'évolutivité d'infrastructures à grande échelle.

    SysAdmin-centrisme avec un contrôle complet sur le cloud.

    Simplicité, facile à déployer, exploiter et utiliser.

    Légèreté pour une haute efficacité. [6]

    I.7.1.2. Eucalyptus

    Eucalyptus est un logiciel médiateur (anglais middleware) open-source pour

    l'implémentation du cloud computing sur une grappe de serveurs (computer cluster). Son nom fait

    référence à l'acronyme anglais « Elastic Utility Computing Architecture for Linking Your

    Programs To Useful Systems » qui peut se traduire en « Utilitaire d'Architecture informatique

    élastique pour relier vos programmes à des systèmes fonctionnels ». Eucalyptus est compatible

    avec Amazon Web Services. Il est intégré dans la distribution Gnu/Linux Ubuntu 9.04 en tant

    qu'outils de « cloud computing ». [7]

    En Septembre 2014, Eucalyptus fut racheté par Hewlett-Packard. [7]

    Ces Fonctionnalités sont :

    Compatible avec Amazon Web Services API.

    Installation et déploiement avec l'outil de gestion de grappe de serveurs Rocks Linux.

    Communication sécurisée entre les processus interne via SOAP et WS-Security.

    Outils d'administration basique.

    Capacité à configurer de multiples grappes de serveurs comme un seul « cloud ». [7]

  • Page 13

    I.7.1.3. OpenStack

    OpenStack est un ensemble de logiciels open source permettant de déployer des

    infrastructures de cloud computing (infrastructure en tant que service). La technologie possède

    une architecture modulaire composée de plusieurs projets corrélés (Nova, Swift, Glance...) qui

    permettent de contrôler les différentes ressources des machines virtuelles telles que la puissance

    de calcul, le stockage ou encore le réseau inhérents au centre de données sollicité.

    Le projet est porté par la Fondation OpenStack, une organisation non-commerciale qui a

    pour but de promouvoir le projet OpenStack ainsi que de protéger et d'aider les développeurs et

    toute la communauté OpenStack. C'est un logiciel libre distribué selon les termes de la licence

    Apache.

    En juillet 2010, Rackspace Hosting et la NASA ont lancé conjointement un nouveau projet

    open source dans le domaine du cloud computing sous le nom d'OpenStack. L'objectif du projet

    OpenStack est de permettre à toute organisation de créer et d'offrir des services de cloud

    computing en utilisant du matériel standard. La première version livrée par la communauté, dont

    le surnom est Austin, fut disponible seulement quatre mois après. Il est prévu de livrer

    régulièrement des mises à jour logicielles à quelques mois d'intervalle.

    OpenStack possède une architecture modulaire qui comprend de nombreux composants.

    Voici la liste des composants dits intégrés à OpenStack.

    Compute : Nova (application).

    Object Storage: Swift (stockage d'objet).

    Image Service : Glance (service d'image).

    Dashboard : Horizon (interface Web de paramétrage et gestion).

    Identity : Keystone (gestion de l'identité).

    Network : Neutron (auparavant nommé Quantum) (gestion des réseaux à la demande).

    Storage : Cinder (service de disques persistants pour les machines virtuelles).

    Orchestration : Heat (service d'orchestration à base de template).

    Telemetry : Ceilometer (service de métrologie notamment pour la facturation).

    Database Service : Trove (Service de Base de donnée à la demande).

    Data Processing : Sahara ( Service de Big data grâce à Hadoop ).

    Il existe aussi des composants qui sont dits en incubation car ils ne sont pas encore

    suffisamment stables pour être intégrés.

    Ironic: Service de Bare Metal provisioning.

    Manila: Service de gestion des systèmes de fichier partagés.

    Zaqar: Service de Middleware à la demande.

    Designate: Service de gestion des DNS.

    Barbican: Service de gestion des clés et secrets.

  • Page 14

    TripleO: OpenStack On OpenStack. Service de déploiement de cloud OpenStack grâce à

    OpenStack. [8]

    I.8.2. Solution propriétaire

    I.8.2.1. Microsoft Azure

    Microsoft Azure est le nom de la plate-forme applicative en cloud de Microsoft. Son nom

    évoque le concept de « cloud computing » ou informatique en cloud (l'externalisation des

    ressources informatiques d'une entreprise vers des datacenters distants). Il s'agit d'une offre

    d'hébergement (applications et données) et de services (workflow, stockage et synchronisation

    des données, bus de messages, contacts…). Le projet a été annoncé par le PDG de Microsoft

    Steve Ballmer lors de sa Professional Developers Conference, qui se tenait du 26 au 30 octobre

    2008 à Los Angeles. [9]

    Il est organisé autour de quatre composants principaux :

    AppFabric: il réalise le premier rôle de la plateforme. C'est la plateforme de développement des

    applications entreprises qui seront externalisées vers le cloud.

    Windows Azure: il réalise le second rôle de la plateforme. C'est lui qui déploie et exécute les

    VM dans l'IaaS (grâce à son composant Frabric Controller conçu pour le système de

    virtualisation Hyper-V).

    SQL Azure : C'est le système de gestion de base de données d'Azure.

    Marketplace : C'est une plateforme de vente et d'achat de composants logiciels développés sur

    AppFabric. En effet, dans le but de faciliter les développements sur AppFabric, les clients

    peuvent se procurer des briques logiciels prédéveloppées et mises en vente sur Marketplace.

    [Akbi, Zehri 2013]

    I.8.2.2. Redhat CloudForms

    Est une plateforme propriétaire de Redhat permet de mettre en place un cloud privé, public

    et hypride du type IAAS. [Akbi, Zehri 2013]

    Le fonctionnement de CloudForms s’appuyé sur cinq composants principale voir :

    Cloud interface : fournit l'interface principale pour les utilisateurs de CloudForms, Une API est

    également disponible en tant que méthode d'accès alternatif.

    Content Provision Management : fournie par le composant Katello qui fournit une collection

    des logiciels qui alimente l’image, lors de la construction et la modification des images. Ce

    contenu peut provenir d'une variété de ressources

  • Page 15

    Application Description Generation : est l'ensemble des fonctionnalités qui permet au

    consommateur de Cloud pour créer une recette décrivant une application qu'ils souhaitent

    déployer.

    Image Lifecycle Management : permet de crée, stocke et conserve les images, elle est assurée

    par des multiples produits composants:

    • Conductor

    • Image Factory

    • Image Warehouse

    Application Lifecycle Management : permet au consommateur de Cloud pour contrôler l'état

    des instances dans le cloud, soit le lancement, l'arrêt, la surveillance, son fonctionnement est

    assuré par plusieurs composant :

    • Conductor

    • Condor

    • Audrey

    • Deltacloud

    • Image Warehouse [Akbi, Zehri 2013]

    I.8.2.3. Amazon S3

    Amazon Simple Storage Service (Amazon S3) offre aux développeurs et aux équipes

    informatiques un espace de stockage d'objets sécurisé, durable et hautement évolutif. Amazon S3

    est facile à utiliser et doté d'une interface de services Web simple pour stocker et récupérer toute

    quantité de données depuis n'importe où sur le Web. Avec Amazon S3, vous ne payez que le

    stockage que vous utilisez réellement. Il n'y a aucun frais minimum ni frais d'installation.

    Amazon S3 peut être utilisé seul ou conjointement avec d'autres services AWS tels

    qu'Amazon Elastic Compute Cloud (Amazon EC2), Amazon Elastic Block Store (Amazon EBS)

    et Amazon Glacier, ainsi qu'avec des passerelles et des référentiels de stockage tiers. Amazon S3

    fournit un espace de stockage d'objets économique pour de nombreux et divers cas d'utilisation,

    notamment les applications dans le cloud, la distribution de contenu, la sauvegarde et l'archivage,

    la reprise après sinistre et les analyses Big Data. [10]

    I.9. comparaison entre OpenStack vs AWS

    Caractéristique OpenStack Amazon Web Service

    Stockage Bien ; juste l’essentiel, espace

    de stockage partagé.

    Très bien ; un service spécial

    S3.

    Hyperviseur Xen,KVM Xen,KVM,VMware

    Réseau

    Vous pouvez créer des réseaux et

    des fonctions de mise en réseau,

    par exemple. Forwarding L3,

    NAT, pare-feu de pointe, et IPsec

    VPN.

    Routeurs ou commutateurs

    virtuels peuvent être ajoutés.

    Orientation Cloud public et privé. Cloud public et privé.

  • Page 16

    Sécurité

    Très bien ; Lorsque vous

    lancez une machine virtuelle,

    vous pouvez injecter une paire

    de clés, qui offre un accès SSH

    à votre instance.

    Très bien ; Pour vous

    connecter à votre exemple,

    indiquer le nom de la paire de

    clés lorsque vous lancez

    l'instance, et de fournir la clé

    privée lorsque vous vous

    connectez à l'instance.

    Installation Facile ; installation

    automatisée et documentée.

    Facile ; installation très facile.

    Documentation

    Excellente ; site bien fourni et

    facile d’accès avec à la fois un

    wiki contenant l’essentiel et

    une documentation officielle

    disponible et très détaillée.

    Excellente ; site bien fourni et

    facile d’accès, contenant

    l’essentiel et une

    documentation officielle

    disponible et très détaillée.

    Langage supporté Python Ruby, Python, C, java, PHP

    Flexibilité

    Bonne ; OpenStack se décline

    en deux versions : une version

    orientée stockage et une

    version orientée applications,

    ce qui permet d’adapter le

    cloud à ses besions.

    Très bonne ; tant que l’on

    reste dans une architecture

    classique, sa grande modularité

    est un atout qui permet de

    facilement le déployer sur une

    architecture multi-sites et

    permet également de l’étendre

    à la demande.

    simplicité

    Bonne ; en effet, grâce à la

    documentation et les scripts

    d’installation fortement

    commentés tout se passe bien

    en suivant le pas-à-pas du

    wiki.

    Très bonne ; Arpège Web

    Suite est une solution simple

    d'utilisation, organisée sous

    forme de menus qui parlent à

    l'utilisateur.

    Tableau I-2 : comparaison entre OpenStack vs AWS

    I.10. Conclusion

    On conclusion, nous donnons les avantages et les inconvénients de coud computing.

    Les avantages :

    Un démarrage rapide :

    Le cloud computing permet de tester le business plan rapidement, à coûts réduits

    et avec facilité.

  • Page 17

    L'agilité pour l'entreprise :

    La résolution des problèmes de gestion informatique simplement sans avoir à vous

    engager à long terme.

    Un développement plus rapide des produits :

    La réduction du le temps de recherche pour les développeurs sur le paramétrage des

    applications.

    Pas de dépenses de capital :

    On a plus besoin des locaux pour élargir vos infrastructures informatiques.

    Les inconvénients :

    La bande passante peut faire exploser votre budget :

    La bande passante qui serait nécessaire pour mettre cela dans le Cloud est

    gigantesque, et les coûts seraient tellement importants qu'il est plus avantageux

    d'acheter le stockage nous-mêmes plutôt que de payer quelqu'un d'autre pour s'en

    charger.

    Les performances des applications peuvent être amoindries :

    Un Cloud public n'améliorera définitivement pas les performances des applications.

    La fiabilité du Cloud :

    Un grand risque lorsqu'on met une application qui donne des avantages compétitifs

    ou qui contient des informations clients dans le Cloud.

    Taille de l'entreprise :

    Si l’entreprise est grande alors les ressources sont grandes, ce qui inclut une

    grande consommation du cloud. Les concepteurs trouvent peut-être

    plus d'intérêt à mettre au point un Cloud privé plutôt que d’utiliser un externalisé.

    Les gains sont bien plus importants quand on passe d'une petite consommation

    de ressources à une consommation plus importante.

  • Page 18

    Chapitre II :

    Architecture de cloud computing

  • Page 19

    II.1. Introduction

    Pour la gestion de bibliothèque , il y a

    plusieurs plateformes qui assurent le stockage et la gestion de données et métadonnées

    dans le cloud par exemple, Google Storage, Amazon Simple Storage Service (S3),

    Dropbox , et notre choix sera Amazon S3 . Dans ce chapitre on va voir pourquoi on a

    choisi (Amazon S3)?

    II.2. Amazon Web Services

    Amazon Web Services (AWS) est une collection de services informatiques

    distants (aussi appelés services Web) fournis via internet par le

    groupe américain de commerce électronique Amazon.com. [13]

    II.3. Liste de services AWS

    �x Amazon Elastic Compute Cloud (EC2), fournissant des serveurs virtuels évolutifs

    utilisant Xen.

    �x Amazon Virtual Private Cloud, fournissant un réseau virtuel privé au sein d'AWS.

    �x Amazon Elastic Block Store (EBS), fournissant un niveau de blocs persistants pour

    les volumes de stockage EC2.

    �x Amazon Simple Storage Service (S3), fournissant un stockage basé sur les services

    web.

    �x Amazon Glacier, fournissant un stockage basé sur les services web. Ce service est

    et il est destiné aux données rarement accédées.

    �x Amazon Simple Queue Service (SQS), fournissant un fil de messages hébergés pour

    les applications web.

    �x Amazon Simple Email Service (SES), service d'envoi en nombre et transactionnel

    d'emails.

    �x Amazon Mechanical Turk (Mturk), gérant des petites unités de travail distribué à de

    nombreuses personnes.

    �x Alexa Web Services, fournissant des données de trafic, des vignettes et d'autres

    informations à propos des sites web.

    �x Amazon Associates Web Service (A2S, anciennement Amazon E-Commerce

    Service ou ECS), fournissant un accès aux données produit d'Amazon et des données

    de commerce électronique.

    memoire pdf 2015-1.pdfDEDICACES.pdfRemerciements.pdfملخـــــــــــــــــــــــصSommaire.pdf