Vous êtes sur la page 1sur 23

D

r
e
c
tionRégionaleCT/ISTA NTIC/ BENI MELLAL

Projet De Fin Formation


:

« Déploiement d’une application sur google» cloud

Réalisée par : MORABIT Chaimaa


et JABRAN Bouchra
Filière Techniques
: des Réseaux informatiques
Groupe TRI204
:
Encadré par : M. ISSAKHI Mouhamed

Année universitaire
: 2019-2020
2
JABRAN Bouchra
DEDICASES
A mes très chers parents, source de vie,
D’amour et d’affection
A mes chers frères et leurs enfants, source de
Joie et de bonheur
A toute ma famille, source d’espoir et de
Motivation

A tous mes amis, tout particulièrement Hind et Mariam

A Bouchra, chère amie avant d’être binôme

A vous cher lecteur

Remerciement

3
JABRAN Bouchra
Au terme de ce projet de fin d’année, nos vifs
remerciements sont dédiés à notre encadrant contribué,
directement à l’élaboration de ce projet.

Nous tenons à remercier vivement Monsieur Mohamed


ISSAKHI notre encadrent. Sa disponibilité, ses directives et
son sens du détail nous ont permis de soigner et
d’améliorer constamment la qualité de ce travail.

C’est une immense fierté que nous adressons nos


remerciements les plus distingués à tous nos enseignants
qui nous ont transmis leur savoir et nous ont assuré la
meilleure des formations.

Notre dernier mot s’adresse à tous les membres du jury


pour l’honneur qu’ils nous font de participer à l’examen de
ce travail.

4
JABRAN Bouchra
Sommaire
 Introduction générale……………………………………………………………………………… 5
 Partie théorique :
 Chapitre I: CLOUD COMPUTING :
I. Définition du Cloud Computing …………………………………. 6
II. Le fonctionnement du Cloud Computing……………………. 7
III. Utilisations du Cloud Computing………………………………… 7
IV. Principaux avantages du Cloud Computing…………………. 8
1. Coût :
2. Vitesse :
3. Mise à l’échelle mondiale :
4. Productivité :
5. Performances :
6. Fiabilité :
V. Types de services Cloud : IaaS, PaaS, SaaS…………………. 11
1. Infrastructure as a Service (IaaS) :
2. Platform as a Service (PaaS) :
3. Software as a Service (SaaS) :
VI. Types de déploiement cloud : Public, Privé, Hybride…… 12
1. Cloud public :
2. Cloud privé :
3. Cloud hybride :
 Chapitre 2 : Déploiement d’une application sur Google Cloud :
I. Google App Engine………………………………………………………… 14
1. Introduction :
2. Google app Engine, Le Cloud selon Google
3. Les langages que sont supportés :
4. Google App Engine avec Eclipse :

 Partie pratique :
I. Installation Google App Engine avec Eclipse……………………… 17
II. Créer et déployer l’application………………………………………... 21

5
JABRAN Bouchra
Introduction générale
À l’ère de progrès technique de l’information et la demande persistante aux ressources en
informatique, ces dernières années, suscite de plus en plus l’intérêt des différents utilisateurs
d'Internet et de l’informatique qui cherchent à profiter au mieux des services et des applications
disponibles en ligne à travers le web en mode services à la demande et facturation à l’usage.

Ce qui donne naissance au nouveau concept avancé « Le Cloud Computing ».

Le Cloud Computing offre un modèle économique prometteur aux entreprises voire les
établissements académiques, en menant un changement dans le mode d’investissement et
d’exploitation des ressources informatiques.

Ces organismes n’ont plus besoin d’investir lourdement dans des ressources informatiques,
nécessairement limitées, et nécessitant une gestion interne lourde et coûteuse. Aujourd’hui la
migration vers le Cloud Computing constitue un atout où elles peuvent acheter ou louer des
ressources en ligne.

Ce modèle leur épargne les coûts de gestion interne puisque les ressources informatiques sont
administrées au niveau du fournisseur du Cloud. Ce modèle informatique offre également la
modularité des ressources informatiques (hard et soft) et leur disponibilité, en termes de volume
et dans le temps réel, selon les besoins du client et à sa demande.

Dans un contexte économique où les organismes cherchent à rentabiliser au maximum les


investissements et à limiter les coûts d’exploitation, le Cloud Computing se présente comme étant
la solution de ces charges.

6
JABRAN Bouchra
Partie théorique
Chapitre I: CLOUD COMPUTING
I. Définition du Cloud Computing :
Le Cloud Computing est un système informatique permettant aux utilisateurs de
bénéficier d’une infrastructure informatique complète à distance et par conséquent de
délocaliser un grand nombre de services informatiques (le stockage des données,
l’hébergement des applications, la sauvegarde des données, …).
Le Cloud Computing est un concept qui représente l’accès à des informations et
services, situés sur un serveur distant. Pour faire plus simple, il s’agit d’une forme
d’externalisation des serveurs et services rattachés d’une entreprise donnée.
Habituellement, les entreprises utilisent les ordinateurs de l’entreprise pour héberger
ces éléments, le Cloud permet de disposer des mêmes fonctionnalités sans
devoir investir dans une Infrastructure (serveur, applications, …), la seule contrainte
est de disposer de terminaux informatiques (ordinateurs de base) et d’une connexion
internet de qualité.
En résumé, il est question de placer ses données dans les « nuages » (clouds), à un
emplacement inconnu du client concerné qui ne se souciera que de la partie
applicative de ces données, délégant le reste à son fournisseur.

II. Le fonctionnement du Cloud Computing :

7
JABRAN Bouchra
En utilisant ce système, l’entreprise n’est
plus propriété su service informatique
utilisé puisqu’il est mis à disposition par
son prestataire. Cependant, elle peut
accéder de manière évolutive à de
nombreux services sans avoir à gérer
l’infrastructure sous-jacente, souvent
complexe (entretien de la base de
données, sauvegarde des données, mise
à jour des logiciels, entretien des
serveurs, …) qui nécessite des
compétences informatiques de plus en plus Importantes au fur et à mesure du
développement des besoins informatiques de l’entreprise.
Figure 1 : Le fonctionnement du Cloud Computing

Les applications et les données ne se trouvent plus sur l’ordinateur local, mais sur le
« Cloud » ou « nuage » qui est un ensemble de serveurs distants interconnectés au
moyen de liaisons internet de haute performance indispensable à la fluidité du
système. L’accès au service se fait par une application standard installée sur les
ordinateurs de l’entreprise et facilement disponible, la plupart du temps un
navigateur internet.

III. Utilisations du Cloud Computing :


Vous utilisez probablement en ce moment même le Cloud Computing sans le savoir.
Si vous utilisez un service en ligne pour envoyer des courriers électroniques, modifier
des documents, regarder des films ou regarder la télévision, jouer à des jeux ou
stocker des images ou autres fichiers, il est probable que le Cloud Computing
intervienne dans les coulisses. Les premiers services de Cloud Computing n’ont pas
encore dix ans, mais un grand nombre d’organisations, par exemple des start-ups, des
multinationales, des services administratifs ou des ONG, adopte cette technologie
pour de nombreuses raisons.
Voici ce que vous pouvez faire avec le Cloud :

• Créer des applications et des services.

• Stocker, sauvegarder et récupérer des données.

8
JABRAN Bouchra
• Héberger des sites web et des blogs.

• Diffuser du contenu audio et vidéo.

• Diffuser des logiciels à la demande.


• Analyser des données pour en tirer des informations et faire des prévisions.

IV. Principaux avantages du Cloud Computing :


Le Cloud Computing est radicalement différent de l’approche traditionnelle qu’ont les
entreprises des ressources informatiques. En quoi le Cloud Computing est-il spécial ?
Qu’est-ce qui rend le Cloud Computing si populaire ? Voici 6 raisons pour lesquelles
les entreprises choisissent les services de Cloud Computing:

1. Coût :
Pour les petites entreprises, le Cloud permet de lancer un service sans aucun
investissement capitalistique en hardware et peu en Software. C’est une solution,
souvent moins couteuse (20 à 25% d’économies) qui permet aussi de faire évoluer le
système en évitant les paliers d’investissements. Le cloud computing élimine la
nécessité d’investir dans du matériel et des logiciels et de configurer et de gérer des
centres de données sur site : racks de serveurs, alimentation électrique permanente
pour l’alimentation et le refroidissement, experts informatiques pour la gestion de
l’infrastructure. La facture est vite salée.

2.
Vitesse :
Il est possible d’avoir accès à des services parfois coûteux à moindre prix et de
manière évolutive. La plupart des services de Cloud Computing sont fournis en
libreservice et à la demande. D’énormes ressources de calcul peuvent donc être
mises en œuvre en quelques minutes et en quelques clics, offrant ainsi aux
entreprises un haut niveau de flexibilité et les dégageant de la pression liée à la
planification de la capacité.

9
JABRAN Bouchra
3. Mise à l’échelle mondiale :
Il permet de bénéficier d’économies d’échelle qui ont une répercussion économique.
Pas d’investissement dans les infrastructures et peu dans l’entretien du parc
informatique (serveurs, application, système de sauvegarde de données, ...). La mise à
l’échelle élastique est un des avantages des services de Cloud Computing. En termes de
Cloud, cela veut dire qu’il est possible de mettre en œuvre la quantité nécessaire de
ressources informatiques, par exemple plus ou moins de puissance de calcul, de
stockage ou de bande passante, au moment où elles sont nécessaires, là où elles sont
nécessaires.

4. Productivité :

La mutualisation des ressources permet de disposées de capacités illimitées en


matière de stockage et de bande passante.
Les centres de données sur site nécessitent en général la manipulation de matériel, la
mise à jour des logiciels et autres corvées informatiques qui prennent beaucoup de
temps. Le Cloud Computing supprime la plupart de ces tâches et les équipes
informatiques peuvent donc passer plus de temps à travailler à la concrétisation des
objectifs de l’entreprise.

5. Performances :
La sécurité du stockage des données est optimale.
Les plus grands services de Cloud Computing s’exécutent sur un réseau de centres de
données sécurisés, dont le matériel est régulièrement mis à niveau pour assurer des
performances rapides et efficaces. Ceci offre plusieurs avantages par rapport à un

10
JABRAN Bouchra
centre de données classique, y compris un temps de latence réseau réduit pour les
applications et de plus grandes économies d’échelle.

6. Fiabilité :
Le Cloud Computing simplifie la sauvegarde des données, la récupération d’urgence
et la continuité des activités et rend ces activités moins coûteuses, car les données
peuvent être mises en miroir sur plusieurs sites redondants sur le réseau du
fournisseur.

Cependant, ce système présente quelques inconvénients :

• L’entreprise dépend de son prestataire, tant au niveau technique que de la qualité


de service, il faut par conséquent être attentif à travailler avec un prestataire de
qualité qui connaît les applications métier et les contraintes du secteur d’activité de
l’entreprise.
• En cas de panne internet, ou d’une mauvaise connexion, l’entreprise peut être
fortement perturbée. Aucun prestataire sérieux ne vous garantira une disponibilité
de ses données à 100%.
• L’entreprise perd la maîtrise de son système informatique et notamment le cycle de
vie des applications (elles auront peut-être tendance à changer trop souvent (ce qui
peut perturber les équipes) ou au contraire trop peu souvent en fonction du mode
de fonctionnement du prestataire).
• Cela complique les questions d’ordre juridiques (sur la localisation des données) ou
celle des assurances (sur les indemnités en cas de sinistre par exemple).
• Les risques d’attaque et de perte de confidentialité sont augmentés car selon le
système utilisé, l’entreprise ne pourra pas forcément travailler ou disposer de ses
données hors réseau.
• Le retour à un service informatique « internalisé » est souvent couteux et complexe.

11
JABRAN Bouchra
V. Types de services Cloud : IaaS, PaaS, SaaS :
La plupart des services de cloud computing
peuvent être regroupés en trois
grandes catégories : IaaS (Infrastructure as a
service), PaaS (Platform as a service) et SaaS
(software as a service). C’est ce que l’on appelle
parfois la pile du cloud computing, car ces
catégories peuvent être empilées les unes sur les
autres
Figure 2 : Les types de services Cloud

1. Infrastructure as a Service (IaaS) :


La catégorie la plus basique des services de cloud computing. Avec l’laaS, vous louez une
infrastructure Informatique (serveurs, machines virtuelles, stockage, réseaux, systèmes
d’exploitation) auprès d’un fournisseur de services cloud, avec un paiement en fonction de
l’utilisation.Cette solution permet au client de conserver le contrôle de l’exploitation et
des applications.

2. Platform as a Service (PaaS) :


Platform-as-a-service (PaaS) se rapporte au service de cloud computing qui offre un
environnement à la demande pour le développement, le test, la diffusion et la gestion des
applications logicielles.
PaaS est conçu pour permettre aux développeurs de créer rapidement des applications
web ou mobiles sans avoir à se préoccuper de la configuration ou de la gestion de
l’infrastructure de serveurs, de stockage, de réseau et de bases de données nécessaire au
développement.

3. Software as a Service (SaaS) :


Software-as-a-service (SaaS) est une méthode de diffusion d’applications logicielles via
Internet, à la demande et en général sur abonnement. Avec le SaaS, les fournisseurs de
services cloud hébergent et gèrent les applications logicielles et l’infrastructure
sousjacente, et gèrent la maintenance, par exemple la mise à niveau des logiciels et
l’application des correctifs de sécurité. Les utilisateurs se connectent l’application via
Internet, en général par l’intermédiaire d’un navigateur web sur leur téléphone, leur
tablette ou leur PC.

12
JABRAN Bouchra
VI. Types de déploiement cloud : Public, Privé, Hybride

Tous les clouds ne sont pas identiques. Il existe trois types de déploiement des
ressources de cloud computing : Cloud Public, Cloud Privé et Cloud Hybride .

1. Cloud public :
Les clouds publics sont exploités par un fournisseur de services cloud, qui propose des
ressources de calcul, par exemple des serveurs et du stockage, via Internet. Microsoft
Azure est un exemple de cloud public. Dans un cloud public, tout le matériel, tous les
logiciels et toute l’infrastructure sont la propriété du fournisseur du cloud. Vous
accédez à ces services et vous gérez votre compte par l’intermédiaire d’un navigateur
web.

13
JABRAN Bouchra
2. Cloud privé :
Le cloud privé est l’ensemble des ressources de cloud computing utilisées de façon
exclusive par une entreprise ou une organisation. Le cloud privé peut se trouver
physiquement dans le centre de données local de l’entreprise. Certaines entreprises
paient également des fournisseurs de services pour qu’ils hébergent leur cloud privé.
Le cloud privé est un cloud dans lequel les services et l’infrastructure se trouvent sur
un réseau privé.

3. Cloud hybride :
Le cloud hybride regroupe des clouds publics et privés, liés par une technologie leur
permettant de partager des données et des applications. En permettant aux données et
aux applications de passer du cloud privé au cloud public, le cloud hybride offre aux
entreprises un plus grand niveau de flexibilité et plus d’options de déploiement

Chapitre 2 : Déploiement d’une application sur


Google Cloud :
14
JABRAN Bouchra
I.Google App Engine
1.Introduction :
Google App Engine est justement une de ces solutions cloud. C'est un service qui vous
permet d’utiliser les mécanismes du "cloud computing" et de bénéficier de leurs
avantages pour votre prochain site web.
Comme vous devez avoir une bonne compréhension globale des principes du cloud avant
toute chose, je vais justement vous expliquer dans ce premier chapitre ce qu’est le cloud
et comment ça fonctionne. Puis, je vous parlerai plus précisément de Google App Engine,
le cloud « façon Google », pour que vous puissiez décider si vous ferez votre prochain site
avec ces nouvelles technologies.

2.Google app Engine, Le Cloud selon Google


Rentrons un peu plus dans le détail du fonctionnement de Google App Engine. Pour
commencer, il faut savoir que Google propose plusieurs services cloud :

• App Engine : le service PaaS de Google, la star de la maison. De gros sites comme
Khan Académie ou Pulse l’utilisent.
• Compute Engine : le service IaaS de Google. Si vous avez besoin de puissance de
calcul brute (pour calculer des modèles mathématiques par exemple), c’est ce qu’il
faut utiliser.
• Cloud Storage : un service potentiellement « illimité » de stockage de fichiers dans
le cloud. C'est donc un... DaaS (Data base as a Service). Encore un acronyme à
connaître
• Big Query : des fonctionnalités permettant d’analyser de grosses quantités de
données en peu de temps (on parle de Big Data). Très utile pour les entreprises qui
veulent faire de la Business Intelligence (BI) pour avoir des indicateurs de tendance
basés parfois sur plusieurs Téra Octets de données.
• Cloud SQL : une base de données MySQL distribuée dans le cloud. Vous n’avez pas
besoin d’installer ni de mettre à jour MySQL. Pas même besoin de le configurer.
Vous pouvez créer des serveurs SQL répliqués en quelques clics si vous avez besoin
de plus de puissance.

15
JABRAN Bouchra
Figure : les services de Google App Engine

3. Les langages que sont supportés :


Les plateformes PaaS comme Google App Engine supportent un nombre limité de
langages de programmation. En effet, elles fournissent des fonctionnalités
supplémentaires sous la forme de bibliothèques, il faut donc que Google ait développé
les fonctionnalités correspondantes pour ces langages.
Voici les langages supportés par Google à l’heure actuelle (cette liste est susceptible de
s'agrandir à l'avenir) :
• Java
• Python
• Go (en bêta-test)
• PHP (en bêta-test)

4. Google App Engine avec Eclipse


Maintenant que nous savons un peu mieux ce qu'est le Cloud et en quoi consiste
Google App Engine, si nous passions un peu à la pratique ? Avant de commencer à
développer notre premier site utilisant App Engine, il va nous falloir transformer notre
ordinateur en "mini-serveur Google" pour pouvoir faire plus facilement. Google App
Engine est compatible avec Java 7 mais pas avec Java 8

16
JABRAN Bouchra
Partie pratique

I.Installation Google App Engine avec Eclipse :


• Installer Eclipse

17
JABRAN Bouchra
18
JABRAN Bouchra
Eclipse étant lui-même un programme Java, vous devez avoir installé Java
auparavant. Vous aurez besoin du JDK (Java Développement Kit) pour l'utiliser. •
Installer JDK

• Installer le plugin Google App engine


Installer le plugin Google App Engine dans Eclipse est vraiment très simple. Allez dans le menu
Help > Install New Software.

19
JABRAN Bouchra
Vous pouvez installer d'autres plugins si vous le voulez mais ça ne nous sera pas nécessaire ici.
Cliquez ensuite sur Next.

On vous demande de vérifier ce que vous allez installer. Cliquez encore sur Next.

20
JABRAN Bouchra
II. Créer et déployer l’application :
• Vérification de programme :
Une application qui vérifie si le numéro que je demande est pair ou impair

21
JABRAN Bouchra
Création de l’application
Pour créer une nouvelle application App Engine, utilisez le bouton "g" de Google qui
a été ajouté lorsque vous avez installé le plugin. Sélectionnez "New Web Application
Project".

22
JABRAN Bouchra
23
JABRAN Bouchra

Vous aimerez peut-être aussi