• Like

Comment intégrer une application ASP.NET dans Windows Azure

  • 484 views
Uploaded on

Dans cette session, nous vous proposons d'aborder les problématiques que l'on peut rencontrer lorsque l'on souhaite intégrer une application Web ASP.NET dans le cloud computing Windows Azure : Quels …

Dans cette session, nous vous proposons d'aborder les problématiques que l'on peut rencontrer lorsque l'on souhaite intégrer une application Web ASP.NET dans le cloud computing Windows Azure : Quels sont les impacts sur l'architecture existante et les développements ? Quels sont les choix techniques les plus appropriés et quelles solutions mettre en oeuvre ?

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
484
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
6
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • Comme on vient de le voir, la plateforme Azure propose plusieurs solutions intéressantes dans plusieurs cas d’utilisation.Cela motive plusieurs clients a retenir cette solutionDans le cadre de la migration d’une application asp.net dans le cloud, il est légitime de se poser la question sur le complexité de cette opération.
  • Ouvrir un projet asp videAjouter une page default.aspxCoté design ajouter un calendar et un boutonDans le code behind ajourer une méthode associé a l’event click du boutonAjouter la méthode :privatevoidMessageBox(string message) { if (!string.IsNullOrEmpty(message)) {Response.Write("<script type=\\"text/javascript\\" language=\\"javascript\\">");Response.Write("alert('" + message + "');");Response.Write("</script>"); } }Et la consommer !
  • Pourquoi ?
  • Par ce que les applications ne sont pas autonomes et consomment de ressources
  • De nos jours, les sites web contiennent de plus en plus d’information personnalisée, exposent de plus en plus de service (réseaux sociaux, messagerie, jeux en ligne, etc.), dépendent de plus en plus les unes des autres (service de cartographie, authentification, réseaux sociaux, etc.)Les applications sont donc non autonomes (consommation de services et librairies tiers) et structurées (architectures logicielles)Donc, la migration des projets Web vers le cloud sont conditionnées par la portabilité ou capacité d’interaction avec les composants tiers.Attention !Dans le cas ou la mise en place d’un site web nécessite l’installation de logiciel spécifiques sur le serveur, on est contraint de migrer l’application en utilisant la VM Role
  • Quelques cas d’utilisation de dépendance de composantes tiers sont :
  • La solution Cloud Drive permet, avec un minimum de modification de code, de monter un disque virtuel et d’y accéder en mode I/O de façon transparente. =/= partager le disque virtuel est accessible en mode lecture par tout les intances et une seule instance que peut accéder en écriture =/= ne supporte pas la monte en chargeLa solution Azure table & Blobs =/= nécéssite de changer le code ++ supporte la montée en chargeBonne pratique : mutualiser les services de persistance pour minimiser le code a modifierNous recommandons d’utiliser les azure table & blob pour la persistance
  • Si on choisit d’utiliser Cloud Drive (qui n’est pas recommandé) pour écrire dans des fichiers de logs la migration est transparente pour les deux librairies Sinon, (utiliser azure blob et table) nécessite d’implémenter un nouvel Appender qui écrit dans une Azure Table pour Log4Net contrairement à Enterprise Librairie 5.0 qui est basé sur System.Diagnostics peut utiliser le listnerDiagnosticMonitorTraceListenerdans Microsoft.WindowsAzure.Diagnostics

Transcript

  • 1. palais descongrèsParis7, 8 et 9février 2012
  • 2. Comment intégrer une application ASP.NETdans Windows Azure ?Omar MERROUNArchitecte .NETAUSY Clément BOUDEREAU Expert Windows Azure AUSY Olivier Navarre Responsable Solutions Microsoft AUSYMardi 7 février 2012
  • 3. Agenda Introduction Rappel sur la Plateforme Azure Une intégration dans Azure facile ? Complexité des applications existantes Problématiques et solutions apportées Conclusion
  • 4. en quelques mots…1989 : création du Groupe par l’actuel président Microsoft Partner Gold et EmbeddedJean-Marie MAGNETConseil & Ingénierie en Hautes Technologies Notre Positionnement MicrosoftPrésence dans 15 pays (Europe, Asie, Afrique) Plateforme applicative19 implantations en France Applications métier et décisionnelles Infrastructures et réseaux2 grands domaines d’activité : Les systèmes d’information Expertise en infrastructure, architecture et Les systèmes industriels complexes développement : ASP .NET, Silverlight, WPF, SharePoint, Exchange, Lync, …Positionnement de multi-spécialiste Solutions mobiles : WP7 et Windows 8CA 2011 : 290 M€ Cloud Computing : Azure et Office 365Effectifs : + 3630
  • 5. VIDEOINTRODUCTION
  • 6. Introduction Transformation de l’industrie informatique Today | Cloud 2000s | Web 1990s | Client / Server 1970s and 80s | Mainframe
  • 7. Ressources « on demand »
  • 8. Plusieurs modèles de Service • Exécute un progiciel préconfiguré SOFTWARE • Délivre un service aux utilisateurs AS A SERVICE • Automatisation complète • Coût opérationnel très faible • Exécute les applications de l’utilisateur • Délivre des services aux applications PLATFORM (BD, haute dispo, montée en charge) AS A SERVICE • Automatisation importantes • Coût opérationnel faible • Exécute les applications de l’utilisateur • Délivre des ressources bas niveau INFRASTRUCTURE (Serveurs Virtuels, Réseaux, stockage) AS A SERVICE • Automatisation limitée • Coût opérationnel important
  • 9. Différentes couches Cloud Plateforme Windows Azure IT IaaS PaaS SaaS Vous gérez Applications Applications Applications Applications Vous gérez Données Données Données Données Runtime Runtime Runtime Runtime Middleware MiddlewareVous gérez Middleware Middleware Externalisé O/S O/S O/S O/S Externalisé Virtualisation Virtualisation Virtualisation Virtualisation Externalisé Serveurs Serveurs Serveurs Serveurs Stockage Stockage Stockage Stockage Networking Networking Networking Networking
  • 10. VIDEOWindows AZURE
  • 11. Plateforme Windows Azure Expérience Développeurs Utilisation des outils et compétences existantes Stockage Reporting Integration Composite App Facturation Place de Données marché de la APIs Traitement Admin relationnelles Administration Connectivité Caching Controle d’accès donnée
  • 12. VIDEOIntégration facile ?
  • 13. Intégration d’une application ASP.NET Cas simple Application autonome : sans aucune dépendance ni consommation de ressources Migration facile ! Ajouter les références Azure dans projet Web Ajouter « RoleEntryPoint » Ajouter un projet Azure à la solution Visual Studio Ajouter le web role dans le projet Azure Puis déployer !
  • 14. DEMOIllustration d’un cas simple
  • 15. ANNONCEEn pratique, ce cas simple ne se présente jamais !
  • 16. VIDEOComplexité des applications
  • 17. Architectures applicatives complexes Architecture modulaire, en couches avec différents composants Architecture logicielle Composant demandant une installation sur le Couche Présentation serveur ASP.NET Composants Solution : l’utilisation du VM Tiers Couche Service role Baisse du niveau de SLA Couche d’accès aux données
  • 18. Application intégrée dans un SI Consommation de ressources externes Active Service Web Serveur IIS Directory Windows Server Service de Messagerie Application Web Cache ASP .NET Exchange Dépendances Système de Base de données diverses fichiers
  • 19. VIDEOProblématiques et solutions apportées
  • 20. Démarche d’intégration Définir l’architecture cible dans le Cloud Etudier les problématiques techniques Planifier et réaliser la migration Tester l’application dans le Cloud
  • 21. 5 problématiques techniques Système de fichiers Logs et Exceptions Services WCF Base de données Authentification
  • 22. Système de fichiers 2 solutions proposées : Cloud Drive Azure Table & Blob Migration relativement Changer le code transparente Supporte la scalabilité Un seul rôle instance en I/O et les autres en O Nous préconisons cette solution
  • 23. Content Delivery Network Solution de cache Windows Azure Hébergement de contenu ( jpg, css, …) Cache de contenu proche de l’utilisateur final Optimisation de la gestion des Urls
  • 24. Logs/Exceptions Plusieurs solutions : Log4Net Enterprise Library 5.0 Non supporté en natif Supporté en natif Développer un Appender Utilise System.Diagnostics Ecrire dans une table AZURE Nous préconisons cette solution
  • 25. Services WCF 4 méthodes d’hébergement On Promise Services Internet (IIS) Services Windows Windows Process Activation Service WAS Auto-hébergement 2 méthodes d’hébergement dans le Cloud WebRole WorkerRole Modifier le fichier de .config du Modifier le fichier .config du projet Azure projet Azure Adapter le host (paramètres de l’ EndPoint)
  • 26. DEMOServices WCF
  • 27. Base de données – Stratégies 2 cibles dans SQL Azure Cible Full Cloud Cible Cloud Hybride Member Hub One Shot Sync On Premise Cloud On Premise Cloud
  • 28. Stratégie Full Cloud Migration du schéma et/ou données SQL Azure Migration Wizard http://sqlazuremw.codeplex.com On Premise Cloud
  • 29. Stratégie Cloud Hybride : Sync Synchronisation Data Sync Azure Worker Role (Sync Framework) Package SSIS, BCP Member Hub On Premise Cloud
  • 30. DEMOSynchronisation de bases de données
  • 31. Authentification Mode d’authentification Forms – Cloud SqlMembershipProvider TableStorageMembershipProvider Utilisation de la base de Mettre les utilisateurs dans un données SQL TableStorage Modifier la ConnexionString Codeplex : http://azureproviders.codeplex.com/
  • 32. Identification Mode d’authentification Windows - Cloud Fédération d’Identité AZURE Active Directory Federation Application ASP.NET Services Access Control Service Access Control Service On-promise ADFS Active Directory
  • 33. VIDEOConclusion
  • 34. Ce qu’il faut retenir… Intégration complexe : Environnement SI Pour maitriser l’intégration : Démarche construite Définition de la cible dans le Cloud Expertise en développement, architecture, administration Privilégier une approche globale et industrialisée
  • 35. ANNONCEQuestions / Réponses
  • 36. Rejoignez-noussur le stand AUSY…
  • 37. Contactez-nous… Equipe Microsoft AUSY techdays-microsoft@ausy.com Site : www.ausy.fr
  • 38. ANNONCEMERCI