Avantages et incontinents Cloud Computing
Présentation et planification du projet de stage
Contexte
Toutes les écoles se trouveraient ainsi en compétition et obligées de veiller à la qualité de leurs services pour garder leur « clientèle » et pour attirer de nouveaux clients.
Les écoles ne doivent plus seulement offrir un enseignement de qualité. Elles doivent innover et offrir des programmes variés et attrayants. Pour ce faire, la majorité de ces écoles s’orientent vers l’informatisation de leurs services.
Problématique
Les entreprises à des services communs comme les écoles privées ont les mêmes besoins et poursuivent la même finalité, nous proposons de mettre en place un système assurant la qualité des services demandés. Le système proposé est générique, flexible, réutilisable et adaptable aux exigences des clients actuels et des clients potentiels. La solution qui s’impose est un Software as a Service déployé dans notre cloud public payant.
Enjeux et objectifs
Notre solution BusinessaaS (Software as a Service) est un modèle de déploiement dans lequel Cast-info loue en main à ses clients (les écoles privées) en tant que service à la demande au lieu de leur facturer la licence du logiciel. De cette façon, l’utilisateur final n’a plus besoin d’installer le logiciel.
BusinessaaS permet de graduer le niveau d’externalisation : de l’hébergement du système d’information d’une école privée à l’externalisation complète en assurant les fonctions suivantes :
• Réduire les délais de déploiement d’une nouvelle application et d’acquisition de nouveaux matériels
• Réduire le coût des investissements informatique et de gestion de l’infrastructure
• Bénéficier d’une solution simple d’utilisation et avec des mises à jour automatiques et en temps réel
• Sécuriser et sauvegarder les données et informations avec une mutualisation des moyens pour une plus grande efficacité
• Accéder à l’information sans contraintes de lieux et de temps, via un simple navigateur Internet
La démarche adoptée dans la réalisation du projet
Le modèle que nous avons utilisé pour la réalisation de ce projet est le modèle du cycle en V. Son principe de base est l’association d’une phase de test à chaque phase de projet. A l’issue de chaque phase des livrables sont produits.
Figure 4 :Cycle en V
Nous avons adopté comme méthode de développement, la méthode UP.
Planification de projet
Afin d’organiser notre travail, la première étape que nous avons abordé est la planification du projet.Nous avons choisi de gérer notre projet en fonction de tâches. Pour chaque tâche bien déterminée nous avons fixé une durée de réalisation, date de début et de fin ainsi que les prédécesseurs de chaque tâche. Le tableau suivant représente les différentes tâches de notre projet.
Etat de l’art sur Cloud Computing
Historique
Techniquement, le concept de cloud computing est loin d’être nouveau, il est même présent depuis des décennies. On en trouve les premières traces dans les années 1960, quand John McCarty affirmait que cette puissance de traitement informatique serait accessible au public dans le futur. Le terme en lui-même est apparu plus couramment aux alentours de la fin du XXe siècle et il semblerait que Amazon.com soit l’un des premiers à avoir assemble des data centres et fournit des accès à des clients. Les entreprises comme IBM et Google ainsi que plusieurs universités ont seulement commencé à s’y intéresser sérieusement aux alentours de 2008, quand le cloud computing est devenu un concept ‘’ à la mode’’.
Réalisant ce qu’ils pourraient faire de toute cette puissance, de nombreuses compagnies ont ensuite commence à montrer un certain intérêt à échanger leurs anciennes infrastructures et applications internes contre ce que l’on appelle les ‘’ pay per-use service ‘’ (services payes a l’utilisation). [1].
Figure 5 : Intérêt pour le terme « cloud computing » sur Internet
Aujourd’hui, le « Cloud Computing » compte plus de 10,3 millions d’entrées dans Google. Sa portée est passée de simples services d’infrastructure tels que les ressources de stockage et de calcul à la mise à disposition d’applications. Cela signifie donc que les précurseurs tels que les prestataires de services d’application et les logiciels-services sont dorénavant inclus dans le « Cloud Computing ».Actuellement les experts sont convaincus que bientôt, nous utiliserons le cloud computing de la même manière que nous utilisons l’électricité, c’est à dire en payant uniquement ce que nous consommons sans même nous soucier des aspects techniques nécessaires au bon fonctionnement du système. Le principal facteur de développement restant le fait que toute cette puissance est à tout moment partagée par plusieurs utilisateurs et évité ainsi de perdre du ‘’temps machine’’ à ne rien faire. Cela devrait également drastiquement réduire les couts de développements et donc les prix.
Définition
Le cloud computing se traduit littéralement par « informatique dans les nuages », faisant référence aux technologies d’internet qui est souvent représenté schématiquement par nuage. On peut considérer de manière générale, lorsque l’on parle de cloud computing, qu’il s’agit de rendre accessible et exploitable des données et des applications à travers un réseau. Ce terme désigne à la fois les applications en tant que services sur Internet et le matériel et logiciels qui permettent de fournir ces services [3].A ce jour, il n’existe pas de définition officielle ou standardisée du Cloud Computing. Nous allons donc nous appuyer sur les définitions du NIST (National Institute of Standards and Technology) :“Le Cloud Computing est l’ensemble des disciplines, pratiques, technologies et modèles commerciaux utilisés pour délivrer comme un service à la demande et par le réseau des capacités informatiques (logiciels, plateformes, matériels)”.
Les différentes couches de service d’un cloud
Le concept de cloud computing est utilisé pour désigner des services, on distingue trois « catégories » de services fournis :
IaaS : Infrastructure as a Service :
C’est le service de plus bas niveau. Il consiste à offrir un accès à un parc informatique virtualisé. Des machines virtuelles sur lesquelles le consommateur peut installer un système d’exploitation et des applications. Le consommateur est ainsi dispensé de l’achat de matériel informatique. [4]
Ce modèle permet au client de faire abstraction du modèle physique (gestion des serveurs physique, des éléments relatifs aux centres de données comme l’électricité, la climatisation, la sécurité physique). Dans ce modèle, le fournisseur contrôle le matériel et la couche de virtualisation. Au niveau des données, le contrôle est partagé au niveau de la machine virtuelle (qui est stockée et sauvegardée par le fournisseur de Cloud de type IaaS).
• Avantage: grande flexibilité, contrôle total des systèmes (administration à distance par SSH ou Remote Desktop, RDP), qui permet d’installer tout type de logiciel métier.
• Inconvénient: besoin d’administrateurs système comme pour les solutions de serveurs classiques sur site.
PaaS : Plateforme as service
Plateforme sur laquelle des développeurs ou éditeurs de logiciels peuvent déployer des applications. Le PaaS dispose d’environnements spécialisés au développement comprenant les langages, les outils et les modules nécessaires.
Le consommateur a le contrôle des applications et peut ajouter ses propres outils. La situation est analogue à celle de l’hébergement web où le consommateur loue l’exploitation de serveurs sur lesquels les outils nécessaires sont préalablement placés et contrôlés par le fournisseur. La différence étant que les systèmes sont mutualisés et offrent une grande élasticité – capacité de s’adapter automatiquement à la demande, alors que dans une offre classique d’hébergement web l’adaptation fait suite à une demande formelle du consommateur. [4]
• Avantage: le déploiement est automatisé, pas de logiciel supplémentaire à acheter ou à installer.
• Inconvénient: limitation à une ou deux technologies (ex. : Python ou Java pour Google AppEngine, .NET pour Microsoft Azure, propriétaire pour force.com). Pas de contrôle des machines virtuelles sous-jacentes. Convient uniquement aux applications Web.
Les cibles sont les développeurs. Google App Engine est le principal acteur proposant ce genre d’infrastructures.
Saas : Software as a Service
Le client utilise une application standard selon un modèle de mise à disposition et paiement à l’usage et le fournisseur gère et contrôle les couches requises pour le service cloud. Les prestataires de solutions SaaS les plus connus sont : Google avec Gmail et Youtube ou encore les réseaux sociaux Facebook et Twitter. [5]
• Avantage : plus d’installation, plus de mise à jour (elles sont continues chez le fournisseur), plus de migration de données etc. Paiement à l’usage. Test de nouveaux logiciels avec facilité.
• Inconvénient: limitation par définition au logiciel proposé. Pas de contrôle sur lestock age et la sécurisation des données associées au logiciel. Réactivité des applications Web pas toujours idéale.
|
Table des matières
Introduction générale
Présentation d’organisme d’accueil
1.1 Présentation de l’entreprise
1.2 Les services
1.3 Infrastructure WAN CASTINFO
1.4 Parc technique de CASTINFO
1.5 Schéma de l’installation de réseau
Présentation et planification du projet de stage
2.1 Contexte
2.2 Problématique
2.3 Enjeux et objectifs
2.4 La démarche adoptée dans la réalisation du projet
2.5 Planification de projet
Etat de l’art sur Cloud Computing
3.1 Historique
3.2 Définition
3.3 Les différentes couches de service d’un cloud
3.4 Les différents niveaux de déploiement
3.5 Cloud Computing et clusters
3.6 Avantages et incontinents Cloud Computing
3.7 Conclusion
Etudes Comparatives
4.1 Introduction
4.2 Solution open source
4.2.1 Openstack
4.2.2 Eucalyptus
4.2.3 OpenNubela
4.2.4 CloudStack
4.2.5 Etude comparative
4.3 Les serveurs d’application JEE
4.3.1 Apache Tomcat
4.3.2 GlassFish
4.3.3 JBOSS
4.3.4 Etude comparative
4.4 Les systèmes de gestion de base de données
4.4.1 MySQL
4.4.2 PostgreSQL
4.4.3 HSQLDB
4.4.4 Etude comparative
4.5 Les logiciels de supervision informatique
4.5.1 Nagios
4.5.2 Zenoss
4.5.3 Zabbix
4.5.4 Etude comparative
4.6 Les logiciels de sauvegarde informatique
4.6.1 Les différents types de sauvegarde
4.6.2 Etude comparative
4.7 Les firewalls
4.7.1 Firewall Pfsense
4.7.2 Firewall IPCop
4.7.3 Firewall Smoothwall
4.7.4 Comparaison
4.8 Conclusion
Architecture Technique et Logicielle
5.1 Architecture technique
5.1.1 Architecture du réseau
5.1.2 Architecture du système
5.2 Architecture logicielle
5.2.1 Pattern de conception
5.2.2 Pattern de couche
5.2.3 Frameworks et base de données utilisés
5.2.4 Les outils utilisés
Analyse Et Conception
6.1 Phase d’inception
6.1.1 Diagramme de cas d’utilisation
6.2 Phase d’analyse
6.2.1 Diagramme de séquence
6.2.2 Diagramme de classes d’analyse
Implémentation
7.1 Mécanismes de la sécurité
7.1.1 Java Simplified Encryption(Jasypt)
7.1.2 HyperText Transfer Protocol Secure(HTTPS)
7.2 Application web de BusinessaaS
7.2.1 Front office de BusinessaaS
7.2.2 Back office de BusinessaaS
7.3 Application web des écoles privées (EcoleCloud)
7.3.1 Front office de l’application EcoleCloud
7.3.2 Back office de l’application EcoleCloud
Annexe 1. Serveur Cloud
Annexe 2. Serveur GlassFish
Annexe 3. Cluster de Serveur GlassFish
Annexe 4.Serveur MySQL cluster
Annexe 5.Serveur Nagios
Annexe 6.Serveur Backup(Bacula)
Annexe 7.Firewall (PfSense)
Annexe 8. SNORT
Bibliographie
Télécharger le rapport complet