2. Déploiement d’une application dans le cloud.
1. Cloud Computing en 2010
2. Offre EC2 – AMAZON
3. Cas Pratique : Portage d’un Intranet vers EC2
4. Utilisation EC2 et Conclusion
5. Bibliographie
Paris | Novembre 2010 Page 2
3. Cloud Computing 2010 - Définition
Cloud Computing ( Utilisateur ) :
Commercialiser des ressources informatiques sous forme de service
Cloud Computing ( technique ) :
Virtualiser les ressources des ressources partagé avec d’autres personnes.
Obtenir et résilier à la demande les services et pouvoir y accéder simplement.
Paiement à la commande et consommation sans investissement (Pay as you go ).
Paris | Novembre 2010 Page 3
5. Cloud Computing 2010 – Les alternatives
SAAS :
SalesForce.com - gestion commerciale ( SFA )
OVH ( intégrateur) - Intranets - blogs (Drupal, Joomla, Wordpress).
Google - suite bureautique ( google documents )
PAAS :
Microsoft Windows Azzure - Plate forme Windows – SqlServer - .NET
Google application - Plate forme Linux – BigTable – Java
OVH (intégrateur) - Plate forme Java – Apache-PHP et Mysql.
IAAS :
Amazon - Serveurs Linux - Windows + services ( private cloud,
load balancing , Ip adressing, storage )
GoGrid - Serveurs Linux - Windows + services ( private cloud,
load balancing , Ip adressing, storage )
OVH ( intégrateur ) - Serveurs Linux + services ( private cloud,
load balancing , Ip adressing, storage )
Paris | Novembre 2010 Page 5
6. Offre EC2 – AMAZON
Critères de choix
Leadership sur le marché ( choix restreint à Microsoft, Google et Amazon ).
Support des serveurs applications traditionnels ( J2EE et PHP )
Support des bases de données relationnelle. ( Clef de toutes les applications
existantes )
Standards ouverts et non dépendant d’un éditeur.
Choix final
Microsoft éliminé, car plate forme propriétaire
Google éliminé , car base de donnée propriétaire et ne supportant pas les standards (
JPA partiel – pas JDBC ou SQL ). Semble en perte de vitesse.
Par défaut Amazon EC2 semble la plate-forme la plus séduisante.
Paris | Novembre 2010 Page 6
7. Offre EC2 – AMAZON
Offre utilisée dans le cadre du projet
API’s – Console
Relational Data Elastic Map reduce
PlateForme SimpleDB
Service ( HADOOP)
Cloud Watch
Infrastructure Elastic Cloud Elastic Block
Computing Storage
Paris | Novembre 2010 Page 7
8. Cas Pratique : Portage d’un Intranet vers EC2 – Résultat sous EC2
Paris | Novembre 2010 Page 8
9. Cas Pratique : Portage d’un Intranet vers EC2 – Architecture initiale.
Les couches logicielles de notre Intranet
Application Open Source CMS DRUPAL
Serveur application Apache / PHP
Base de données MYSQL
Système d’exploitation Linux
Paris | Novembre 2010 Page 9
10. Cas Pratique : Portage d’un Intranet vers EC2 – Implémentation 1
La première implémentation sous EC2 ( Système et données sur AMI )
Backup sur partition externe ( Block EBS )
Instance EC2 : AMI LAMP
Application Open Source CMS DRUPAL
Serveur application Apache / PHP
Base de données MYSQL
Système d’exploitation Linux
Paris | Novembre 2010 Page 10
11. Cas Pratique : Implémentation 1 - Console EC2 - Amazon
Paris | Novembre 2010 Page 11
12. Cas Pratique : Implémentation 1 : Accès via des clefs privées
Paris | Novembre 2010 Page 12
13. Cas Pratique : Implémentation 1 - Groupes de sécurité
Paris | Novembre 2010 Page 13
14. Cas Pratique : Implémentation 1 - Sauvegarde des données via EBS
Paris | Novembre 2010 Page 14
15. Cas Pratique : Implémentation 1 - Conclusion
Scalabilité verticale via la création d’un nouveau serveur plus puissant.
Automatisation de la création d’un serveur
• Création d’un script de démarrage ( via EC2 API Tool ).
• Création d’une AMI privée
• Utilisation de l’API programmable ( Web Services )
Mais les instances EC2 sont des ressources temporaires non garanties par Amazon.
La garantie n’est effective que sur les systèmes de stockages ( EBS, RDS ou S3 ) qui sont
répliqués de façon régulière.
Dans le cas présent, cela veut dire repartir de la sauvegarde à chaque perte d’instance.
Donc ce serait préférable de mettre les données sur un autre support que l’instance EC2.
Paris | Novembre 2010 Page 15
16. Cas Pratique : Portage d’un Intranet vers EC2 – Implémentation 2
La seconde implémentation sous EC2 ( Séparation du système et des données ).
Backup sur partition externe ( Block EBS )
Instance EC2 : AMI LAMP Stockage des données EBS
Application Open Source CMS DRUPAL
Serveur application Apache / PHP
Fichiers Apache et
Données Mysql
Base de données MYSQL
Système d’exploitation Linux
Paris | Novembre 2010 Page 16
17. Cas Pratique : Portage d’un Intranet vers EC2 – Implémentation 2
Quelles sont les données à sauvegarder ?
• Configuration Apache : /var/www et /etc/httpd
• Configuration Mysql : répertoire de données et fichier log.
Comment procéder pour les modifications.
Mettre les répertoires sur le disque EBS.
mv /var/www /drupal/www
sudo ln -s /drupal/www /var/
Modifier le fichier configuration système.
Fichier de configuration : /etc/my.cnf
Modification du datadir et log-error.
Paris | Novembre 2010 Page 17
18. Cas Pratique : Portage d’un Intranet vers EC2 – Implémentation 2
Architecture un peu plus complexe à mettre en œuvre, car elle nécessite une
connaissance interne du fonctionnement des applications. ( On sauvegarde quoi ?)
La restauration et la fiabilité du stockage des données est simplifiée. Nous pouvons
rapidement recréer une instance avec la capacité de calcul voulue et surtout en cas
d’arrêt de l’instance, les données sont préservées.
Mais nous sommes limités à la puissance des instances EC2. De plus, nous aurons en
cas de forte charge concurrence entre les services de base de donnée et les services
Apache.
Donc, ce serait mieux d’avoir un service qui s’occupe de la gestion des pages web et
un autre qui s’occupe des bases de données.
Paris | Novembre 2010 Page 18
19. Cas Pratique : Portage d’un Intranet vers EC2 – Implémentation 3
La troisième implémentation sous EC2
( Block EBS )
partition externe
Backup sur
Instance EC2 : Serveur Apache/PHP Stockage des données EBS
Application Open Source CMS DRUPAL
Fichiers Apache
Serveur application Apache / PHP
Instance RDS
Client Mysql
Snapshots RDS
Base de données MYSQL
Système d’exploitation Linux
Données MYSQL
Paris | Novembre 2010 Page 19
20. Cas Pratique : Implémentation 3 – allocation d’une instance RDS
Paris | Novembre 2010 Page 20
21. Cas Pratique : Implémentation 3 – RDS configuration sauvegardes.
Paris | Novembre 2010 Page 21
22. Cas Pratique : Implémentation 3 – RDS groupe de sécurité.
Paris | Novembre 2010 Page 22
23. Cas Pratique : Implémentation 3 – Conclusion.
RDS versus une solution classique EC2 –Mysql
Avantages
Simplification des opérations de sauvegarde/restauration.
Simplification de la scalabilité.
Multi A-Z déployment.
Inconvénients
Aucun accès direct à l’instance RDS.
Pas de possibilité de piloter depuis son poste personnel. ( Initial setup un
peu compliqué à faire ).
Une base par instance RDS. ( Attention aux coûts ).
En conclusion :
Architecture de production. Bonne architecture en cas de grosse base de production et
équipes administration réduite.
Paris | Novembre 2010 Page 23
24. Cas Pratique : Implémentation 3 – Conclusion.
Pour aller plus loin.
• Services Apaches, mettre en parallèle plusieurs serveurs ‘ ( load balancing ).
- Persistance des sessions ( equiv à - mod_jk – mod_proxy ? )
- Unicité du stockage des données ou réplication.
• Mysql avec RDS, mettre en place les réplicas en mode lecture des bases RDS.
• Mysql, mettre en place le clustering dans une solution classique EC2-Mysql.
Paris | Novembre 2010 Page 24
25. Utilisation EC2 et Conclusion
Un nouveau moyen flexible et programmable d’allocation de ressources
Pour expérimenter de nouvelles solutions logicielles en payant une location à l’heure,
Pour avoir une flexibilité maximale pour les start-up dans le domaine du WEB,
Pour créer un écosystème favorable à l’open source,
Pour permettre à des éditeurs ( open-source ou propriétaire ) de proposer une plate
forme SAAS et d’être rétribué via Amazon.
Un système de repli en cas d’attaque externe ( Wikileaks ).
Et tout ceci sans ingénieur système, ni administrateur de base de données ???
Paris | Novembre 2010 Page 25
26. Bibliographie
Site Amazon : http://aws.amazon.com/ec2/
Livre de référence : Host your Web Site in the Cloud
Paris | Novembre 2010 Page 26