Développer un site Webfonctionnel et élastiquesur AzureBenjamin Guinebertièrehttp://blogs.msdn.com/benjguin, @benjguinDivi...
Plan Introduction Scénario CMS Azure Exemple avec Orchard Elasticité Pour aller plus loin Conclusion                      ...
Scénarios Site qui commence avec peu d’utilisateurs, mais a de grosses ambitions.    Payer peu tant qu’il y a peu d’audien...
Scénarios pour le Cloud                               Inactivité                                                          ...
Personnaliser sans tout gérer                                  Informatique                                               ...
Personnaliser sans tout gérerHébergé sur du PaaS, on                              Cloud PaaSpeut se concentrer sur la     ...
Ne pas partir de rien Content Management Server                        8
DémoFonctionnalités de base d’un CMS                     9
Mise en page               10
Critères de choix du CMS Quelques critères:    Capacité à personnaliser    Technologie de développement    Type de licence...
Public PaaS Microsoft             Expérience Développeurs           Utilisation des outils et compétences existantes      ...
Azure dans l’abonnement MSDNhttp://j.mp/azuremsdnhttp://www.microsoft.com/windowsazure/msdn-benefits/                     ...
Les rôles Azure          Front-End           Front-End                       14
Site Web typique sur AzureNavigateur                                Web Site                               Web Site       ...
Blobs              http://<account>.blob.core.windows.net/<container>/<blobname>        Account                  Container...
Azure Drive              Application                 Drive X:                            Lease                            ...
Critères liés à Windows Azure Exécution sur Windows Server    Le langage n’est pas un critère bloquant.    Windows Azure p...
Fonctionnement en ferme Webdu Web Role                 Un rôle Azure      Instance        (VM)                 = une ferme...
Stockage centralisé  Le stockage sur la VM est possible pour des données transitoires,  ou du cache  Les fichiers centrali...
Fonctionnement en ferme web Points d’attention    Session gérée en mémoire    Fichiers locaux à chaque serveur Plus spécif...
Quelques CMS sur Azure                          Liste non exhaustive                          Rendre votre CMS            ...
Exemple avec Orchard Code open source (fondation Outercurve) Contribution importante de la part de Microsoft ASP.NET MVC3,...
Etapes Prendre en main le CMS Créer le package dont on a besoin    Avec les bons modules et thèmes    Avec les éventuelles...
Tester rapidement sur uneinstance unique Pour avoir une machine de test sur Azure    Créer un nouveau projet Azure    1 we...
DémoPrise en main d’Orchardsur une instance uniqueVidéo accélérée et quelques copies d’écrans                             ...
(vidéo non incluse ici, car incompatible avec le formatde publication)                             27
28
Et pour le vrai site?  Téléchargement des sources  Inclusion des modules et thèmes dans les sources  Choix du type de mach...
Démo- Parcours des sources permettant de créer le  package- Exécution du site hébergé sur Azure (2  instances)- Passage à ...
Et qu’est-ce que je gagne? Changement de la taille de la ferme Créer de nouveaux environnements pour la pré- production, r...
Et l’élasticité elle-même ?      Pour ajuster le nombre d’instances à l’audience du site, il      faut avoir          Des ...
Quelques guides sur le sujet Real World: Dynamically Scaling a Windows Azure Application AzurePHP - Scaling PHP Applicatio...
Sur Azure Marketplace AppMarket                 35
Descente en charge Plusieurs sites sur une même ferme Azure    Peut être pris en charge par le CMS    Windows Azure permet...
Très grande montée en charge Pour des fermes avec des centaines d’instances    Partitionnement fonctionnel: www, search, …...
Tests de charge dans Azure                       Cf http://aka.ms/AzureLoadTestSummary                  38
Affinité de session                           Cf http://aka.ms/AzureARR                      39
Conclusion             40
Conclusion Héberger un site Web construit à partir d’un CMS open source sur du PaaS permet    De disposer d’un site web pe...
Ressources http://windowsazure.fr + les liens dans la présentation elle-même                           42
Développer un site Web fonctionnel et élastique sur Azure
Développer un site Web fonctionnel et élastique sur Azure
Prochain SlideShare
Chargement dans…5
×

Développer un site Web fonctionnel et élastique sur Azure

923 vues

Publié le

L'audience d'un site Web peut varier dans l'année, ou dans la journée, son succès peut arriver plus vite que prévu. Une plateforme d'informatique en nuage (cloud) telle que Windows Azure permet d'adapter les ressources d'hébergement nécessaires au succès du site. Bien qu'on veuille pouvoir personnaliser le site de façon poussée, il est intéressant de partir d'un framework existant pour bâtir son site. Nous verrons comment cela peut se faire par exemple avec Orchard.
V111109a

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
923
Sur SlideShare
0
Issues des intégrations
0
Intégrations
1
Actions
Partages
0
Téléchargements
9
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Développer un site Web fonctionnel et élastique sur Azure

  1. 1. Développer un site Webfonctionnel et élastiquesur AzureBenjamin Guinebertièrehttp://blogs.msdn.com/benjguin, @benjguinDivision Plateforme & EcosystèmeMicrosoft France4ème trimestre 2011 2
  2. 2. Plan Introduction Scénario CMS Azure Exemple avec Orchard Elasticité Pour aller plus loin Conclusion 3
  3. 3. Scénarios Site qui commence avec peu d’utilisateurs, mais a de grosses ambitions. Payer peu tant qu’il y a peu d’audience Pouvoir répondre à la demande rapidement quand elle arrive Pouvoir s’adapter à des pics, par exemple lors de passage de spots publicitaires à la télévision Quels types de sites Site de nouvelles Site web de commerce Site institutionnel Campagne marketing spécifique … 4
  4. 4. Scénarios pour le Cloud Inactivité Compute Compute Utilisation Utilisation Utilisation Moyenne Temps Temps Compute Compute Utilisation Moyenne Utilisation Moyenne Temps Temps 5
  5. 5. Personnaliser sans tout gérer Informatique Cloud IaaS Cloud PaaS Cloud SaaS Traditionnelle Infrastructure Plate-Forme Software de cloud Géré par l’utilisateur Applications Géré par l’utilisateur de cloud Applications Applications Applications Runtime Runtime Runtime RuntimeGéré par l’utilisateur de cloud Géré par l’opérateur Cloud Middleware Middleware Middleware Middleware Géré par l’opérateur Cloud O/S O/S O/S O/S Géré par l’opérateur Cloud Virtualisation Virtualisation Virtualisation Virtualisation Serveurs Serveurs Serveurs Serveurs Stockage Stockage Stockage Stockage Réseau Réseau Réseau Réseau • Dans le cadre d’un cloud privé, l’opérateur de Cloud, c’est vous • La gestion des couches « grises » est souvent automatisée au maximum 6
  6. 6. Personnaliser sans tout gérerHébergé sur du PaaS, on Cloud PaaSpeut se concentrer sur la Plate-Forme de cloud Géré par l’utilisateurpersonnalisation du site Votre Site Web(développement),et le contenu éditorial 7 Géré par l’opérateur Cloud
  7. 7. Ne pas partir de rien Content Management Server 8
  8. 8. DémoFonctionnalités de base d’un CMS 9
  9. 9. Mise en page 10
  10. 10. Critères de choix du CMS Quelques critères: Capacité à personnaliser Technologie de développement Type de licence Mode de support Ecosystème Références Couverture fonctionnelle (éventuellement via des modules complémentaires) Gestion du multilingue Architecture Capacité à monter en charge Hébergement possible sur une plateforme de cloud + les critères en lien avec Windows Azure 11
  11. 11. Public PaaS Microsoft Expérience Développeurs Utilisation des outils et compétences existantes MarketPlace 12
  12. 12. Azure dans l’abonnement MSDNhttp://j.mp/azuremsdnhttp://www.microsoft.com/windowsazure/msdn-benefits/ 13
  13. 13. Les rôles Azure Front-End Front-End 14
  14. 14. Site Web typique sur AzureNavigateur Web Site Web Site LB Web ASMX, WCF) (ASPX, Role (ASPX, ASMX, WCF) Cache distribué AppFabric Roles CDN LB Blobs Tables Storage SQL Azure 15
  15. 15. Blobs http://<account>.blob.core.windows.net/<container>/<blobname> Account Container Blob PIC01.JPG images PIC02.JPG cohowinery videos VID1.AVI 16
  16. 16. Azure Drive Application Drive X: Lease Windows Azure Blob Service 17
  17. 17. Critères liés à Windows Azure Exécution sur Windows Server Le langage n’est pas un critère bloquant. Windows Azure peut exécuter du .NET, PHP, Java, Ruby, … Architecture compatible avec Windows Azure Fonctionnement en ferme Web, sans affinité de session Stockage centralisé Base de données relationnelle SQL Azure Autres (URL des media, …) Points à prendre en compte Pour le moteur Mais également pour les modules 18
  18. 18. Fonctionnement en ferme Webdu Web Role Un rôle Azure Instance (VM) = une ferme de serveurs Chaque instance peut tomber Instance Les instances ne tombent pas (VM) en même tempsLB (notion de domaine de panne) … C’est l’ensemble qui a une disponibilité de 99,95% Instance (VM) 19
  19. 19. Stockage centralisé Le stockage sur la VM est possible pour des données transitoires, ou du cache Les fichiers centralisés en Azure => blobs Attention à l’Azure Drive: lecture écriture depuis une VM à la fois max Base de données SQL Azure Drivers récents pour SQL Server. Au moins disponibles pour PHP Java (JDBC) ADO.NET en .NET Haute disponibilité des blobs et SQL Azure Cache distribué d’Azure en .NET uniquement, mais des caches open source peuvent s’installer sur Azure Ex: Memcached 20
  20. 20. Fonctionnement en ferme web Points d’attention Session gérée en mémoire Fichiers locaux à chaque serveur Plus spécifiquement pour les CMS, regarder Chargement dynamique de modules, de thèmes Stockage du contenu (en base, sur disque) Notification des modifications comme le changement d’un thème (invalidation de cache) Indexes (recherche) 21
  21. 21. Quelques CMS sur Azure Liste non exhaustive Rendre votre CMS compatible avec la plateforme Windows Azure est toujours une option http://aka.ms/AFewCmsOnAzure 22
  22. 22. Exemple avec Orchard Code open source (fondation Outercurve) Contribution importante de la part de Microsoft ASP.NET MVC3, avec syntaxe « Razor » http://orchardproject.net 23
  23. 23. Etapes Prendre en main le CMS Créer le package dont on a besoin Avec les bons modules et thèmes Avec les éventuelles personnalisations dans le code C# Déployer sur Azure Configurer … 24
  24. 24. Tester rapidement sur uneinstance unique Pour avoir une machine de test sur Azure Créer un nouveau projet Azure 1 web role Configurer Remote Desktop Déployer Se connecter en Remote Desktop C’est sur une instance unique => uniquement pour tester quelques instants 25
  25. 25. DémoPrise en main d’Orchardsur une instance uniqueVidéo accélérée et quelques copies d’écrans 26
  26. 26. (vidéo non incluse ici, car incompatible avec le formatde publication) 27
  27. 27. 28
  28. 28. Et pour le vrai site? Téléchargement des sources Inclusion des modules et thèmes dans les sources Choix du type de machine virtuelle pour définir la granularité Package pour Azure Déploiement sur Azure Configuration initiale pour se connecter à SQL Azure 29
  29. 29. Démo- Parcours des sources permettant de créer le package- Exécution du site hébergé sur Azure (2 instances)- Passage à 3 instances au lieu de 2 31
  30. 30. Et qu’est-ce que je gagne? Changement de la taille de la ferme Créer de nouveaux environnements pour la pré- production, recette ou intégration Copier une base est simple Basculement entre staging et production Environnement pour exécuter des tests de charge Haute disponibilité, CDN, … 32
  31. 31. Et l’élasticité elle-même ? Pour ajuster le nombre d’instances à l’audience du site, il faut avoir Des indicateurs de performances qui remontent de la plateforme Des API pour modifier le nombre d’instances Une gestion automatisée de l’ajout et de la suppression des instances Des règles qui décident de l’augmentation, ou de la réduction du nombre d’instances Un environnement d’exécution des règlesOutillage fourni par la plateforme Windows AzureVoir guides de mise en œuvre 33
  32. 32. Quelques guides sur le sujet Real World: Dynamically Scaling a Windows Azure Application AzurePHP - Scaling PHP Applications on Windows Azure Windows Azure Autoscaling Block BETA is out (Enterprise Library) Auto-scaling in Azure. - Strive for excellence through continuous improvements - Site Home - MSDN Blogs 34
  33. 33. Sur Azure Marketplace AppMarket 35
  34. 34. Descente en charge Plusieurs sites sur une même ferme Azure Peut être pris en charge par le CMS Windows Azure permet de configurer un Web Role pour qu’il héberge plusieurs sites. Voir billet de Wade Wegner Windows Azure Accelerator for Web Roles Hébergement de plusieurs sites dans une ferme Azure http://waawebroles.codeplex.com/ 36
  35. 35. Très grande montée en charge Pour des fermes avec des centaines d’instances Partitionnement fonctionnel: www, search, … Partitionnement SQL Azure (fédérations) Voir le blog de Cihan Biyikoglu Modèle noSql: tables Windows Azure Traffic Manager pour répartir la charge sur divers centres de calculs Azure 37
  36. 36. Tests de charge dans Azure Cf http://aka.ms/AzureLoadTestSummary 38
  37. 37. Affinité de session Cf http://aka.ms/AzureARR 39
  38. 38. Conclusion 40
  39. 39. Conclusion Héberger un site Web construit à partir d’un CMS open source sur du PaaS permet De disposer d’un site web personnalisable De ne pas se préoccuper des détails d’infrastructure D’adapter les ressources d’hébergement à l’audience courante du site Le CMS peut prendre plus ou moins en compte l’architecture Azure, Azure peut aussi s’adapter Testez gratuitement Windows Azure http://windowsazure.fr 41
  40. 40. Ressources http://windowsazure.fr + les liens dans la présentation elle-même 42

×