Depuis son lancement lors de la PDC 2008, de nombreuses applications ont pu bénéficier des services de la Plateforme Windows Azure. Pour bénéficier des ressources du Cloud, les applications d’entreprise ont dû peu à peu être adaptées pour évoluer vers un modèle hybride : cloud et à demeure. Ces premières expériences permettent aujourd’hui d’avoir le recul suffisant pour apporter un premier niveau de réponses aux questions suivantes : • Quels profits peut-on tirer de ce modèle ? • Quels en sont les scénarios d’usage et les contraintes (synchronisation de données, connectivité applicative et réseau, sécurité,…) ? • Quels sont les chemins de migration d’une application à demeure vers le cloud et inversement ? • Comment prendre en compte la capacité à reconsidérer la répartition des services d’une application entre le mode cloud et à demeure, voire, à l’extrême, cibler la totale réversibilité de cette application ? Dans le cadre de cette session nous nous efforcerons donc de répondre à chacun de ces points et bien entendu d’illustrer notre propos avec quelques démonstrations…
3. ARC 301 - Windows Azure :
Modèle hybride et réversibilité
Franck MUSSON Roch BADUEL Stéphane GOUDEAU
Architecte Architecte Architecte
NEOS-SDI MCNEXT DPE, Microsoft France
4. MCNEXT
Depuis 2007 - 150 Collaborateurs – Paris-Lyon-
Genève
100 % Microsoft - 4 pôles d’expertises
Dot Share
NET Point
Business
Intelligence
Biz
Microsoft Talk
5. NEOS-SDI
Mission SSII Pure Player Microsoft
Accélérer la Transformation des usages
et des business modèles, élaborer et 150 collaborateurs
formaliser une stratégie Numérique au
travers de missions de conseil, de 5 pays: France, Suisse,
pilotage, de conception, de Luxembourg, Belgique,
développement et de support de projets
innovants en technologies Microsoft et
USA
écosystème. Gold Partner / Azure Circle
Ambition dans plus de 14 domaines
Mettre l’innovation au service de la
compétitivité de nos clients et être leur + 200 Grands Comptes
partenaire de référence pour les projets
de développement, d’infrastructure, de Centre des usages
business intelligence et de CRM et ceci
On Premise ou dans le Cloud. Microsoft
Tech.days Stand 49
8. Cloud Hybride : Définition
Plusieurs interprétations :
Modèle de déploiement dans lequel l’infrastructure résulte
de la composition de deux clouds ou plus (private cloud,
community cloud, ou public cloud) liés par une technologie
propriétaire ou standard permettant l’échange des données
ou l’interaction des applications
http://nitaac.nih.gov/nitaac/cloud-computing
Modèle de déploiement dans lequel infrastructures à
demeure et Cloud collaborent
Le scénario le plus fréquent aujourd’hui
Particulièrement pour les grandes entreprises
Au delà d’un modèle de déploiement, le cloud hybride est avant
tout un modèle d’architecture
9. Modèle Hybride : Scénarios
Optimisation de processus métier :
Utilisation de services Cloud complémentaires
Exposition sécurisée de ressources internes du SI vers des
solutions Cloud ou à demeure chez des partenaires
Optimisation des coûts :
Choix du stockage, des services de traitement les plus rentables
Site Web et applications publics vs Applications internes
d’entreprises
Extension de ressources :
Stockage et services de traitement Cloud pour un site de secours
« High Performance Compute » : « Cloud bursting »
Sécurité et gestion d’identité :
Extension des modes d’authentification pour une application
Cloud ou à demeure
Fédération d’identité entre applications Cloud et à demeure
Gestion des données :
Synchronisation de données Cloud et à demeure
Big Data
Respect des réglementations
10. Réversibilité du Cloud :
Définition
Vision « statique » de la réversibilité
D’un cloud vers un autre : Indépendance vis-à-vis du prestataire
de services Cloud
Du cloud vers le SI à demeure : Ne pas aller vers le Cloud sans
parachute
Différent facteurs déclencheurs : Rupture de contrat, fin de
contrat, …
Mise en œuvre : Définir la capacité d’assurer le transfert des
éléments constitutifs du service vers un autre prestataire de
services Cloud ou de le ré-internaliser
Vision dynamique de la réversibilité
Dans certaines conditions, il est opportun de basculer une partie
des composantes du SI à demeure vers le Cloud et inversement
Mise en œuvre : Les mêmes principes que ceux exposés pour la
vision statique s’appliquent
Offre une dimension supplémentaire au modèle de déploiement
Cloud Hybride.
12. Cloud Hybride et Architecture
Gestion des états
Montée en charge
Dépendances
Latence entre composants
Données Confidentielles
SLA requis
Réglementation
15. Scenario Quizz
Quizz mode web
Frontal
Web + Service Notifications
Soumission Résultat Azure Queue
Azure
Data
Sync
Notifications Push
ou mail
16. Principes de développement
Conception prenant en compte les contraintes liées à l’environnement
Cloud : latence réseau, proximité des données, performance, sécurité,
…
Des Patterns éprouvés et réfléchis :
Communication Asynchrone
Architecture Event-driven
Couplage faible entre clients & serveurs
Mise en place de framework d’abstraction :
Logs, Configuration, Persistance, « Universal Providers »,…
Appel à « RoleEnvironment.IsAvailable » pour connaître le
contexte d’exécution
Injection de dépendances
Instrumenter le code
Profiler son code pour économiser ses ressources
Informer le système de l’état de santé de l’application
21. Gestion d’identité : Principes
Service de
jetons de
sécurité (STS)
Revendications
• nom : stephgou,
• rôles : …
1 Signature
Jeton
2
Client Partie de confiance
22. Gestion d’identité : standards et
technologies Microsoft
Découpler du code applicatif l'authentification utilisateur requiert la
prise en charge de standards ouverts :
Formats de jeton : SAML, OpenID, SWT, JWT,…
Protocoles : SAML-P 2.0, WS-Federation, WS-Trust, OAuth2,
OpenID,…
Active Directory Federation Services (AD FS) 2.0
Authentifie l’utilisateur et émet les valeurs, formats et types
spécifiques de revendications requises par l’application ou le
service
Windows Identity Foundation (WIF)
Valide le jeton de sécurité émis par le STS
Extrait les revendications et les met à disposition de l’application ou
du service Cloud ou à demeure
Access Control Service (ACS) V2.0
« ADFS du Cloud » : Identité fédérée et autorisation pour tout type
d’Application : Web, Desktop, Mobile
Identity Providers: Facebook, Google, Yahoo, LiveID, STS WS-
24. Scenario fédération d’identité
Windows NTLM/Kerberos
Microsoft Online
SharePoint Online STS
SSO Web dans l’entreprise
Sites web SAML 1.1 (passif)
Web Services SAML 2.O (actif)
Azure ACS 2.0
SharePoint 2010 ADFS 2.0 Service WCF
25. Scenario fédération d’identité
ADFS 2.0 / Office 365
Microsoft Online
SharePoint Online STS
SSO Web dans l’entreprise et Office 365
Sites web SAML 1.1 (passif Office 365)
Sites web SAML 2.0
Relation de confiance avec Office 365 Azure ACS 2.0
Login par formulaire ou Windows
SharePoint 2010 ADFS 2.0 Service WCF
26. Scenario fédération d’identité
ADFS 2.0 / ACS 2.0
Microsoft Online
SharePoint Online STS
SSO Web avec Live, Google, Yahoo, Facebook,…
SSO Web avec Azure, Office 365 (Live ID sur invitation)
Relation de confiance avec ACS 2 / Azure
Azure ACS 2.0
Relation de confiance avec Office 365
Login par formulaire
SharePoint 2010 ADFS 2.0 Service WCF
29. Messaging sur Azure
Windows Communication
Foundation (WCF) : WCF
Exposition et consommation
de services sur Azure
SOA, REST, RIA, Data Service Bus
Services
Bindings Http et Tcp
Sécurisation via certificats Send
Service Bus : Relai de Send
communication fondé sur le
Cloud
Exposition du service à
travers NATs et firewalls Receive Receive
Contrôle d’accès fondé sur
ACS
Protocole Http ou Tcp
App 1 App 2
Enregistrement du endpoint
du Service, publication et
31. Scenario Messaging
AppFabric Service Bus / BizTalk 2010
BizTalk sur le réseau interne
AppFabric Service Bus
Aucune opération de routage configurée
Aucun port ouvert dans le firewall
Utilisation du NetTcprelayBinding
Publication du port BizTalk avec le Publishing wizard et le feature pack
Sécurisé avec une SharedKey, possibilité d’utiliser ACS.
BizTalk 2010
Partenaire
SAP
33. Intégration sur Azure
Migration de solutions EDI
BizTalk Server vers Windows
Azure Service Bus EAI and EDI
Labs
http://msdn.microsoft.com/en-
us/library/windowsazure/hh74902
8(v=vs.103).aspx
Azure Service Bus Queues :
Stockage fiable et durable
API Messaging API, WCF et
Interfaces HTTP/REST
Azure Service Bus Topics
Publication/Souscriptipn
Souscription : Une file
d’attente virtuelle qui reçoit
des copies du message
Filtres et actions
37. Content Delivery Network Azure
Service Azure de mise à disposition optimisée de contenu ou
de données
24 CDN Node locations
US
Ashburn, VA
Bay Area, CA
Chicago, IL
San Antonio, TX
Los Angeles, CA
Miami, FL
Newark, NJ
Seattle, WA
EMEA
Amsterdam, NL
Dublin, IE
London, GB
Moscow, RU
Paris, FR
Stockholm, SE
Vienna, AT
Zurich, CH
• MULTIPLE TERABITS PER SECOND OF CAPACITY
• 24 GLOBAL LOCATIONS Asia Pacific / Rest of the world
• 99.95% AVAILABILITY. Hong Kong, HK
São Paulo, BR
• AUTOMATICALLY WITHOUT USER INTERVENTION.
Seoul, KR
• LIVE INSIDE MICROSOFT FOR OVER 3 YEARS – NOW AVAILABLE TO WINDOWS Singapore, SG
AZURE CUSTOMERS. Sydney, AU
Taipei, TW
Tokyo, JP
Doha, QT
38. Cache Windows Azure
Service de cache distribué en mémoire Web Role
Performance Local Cache
Scalabilité
Output
Faible latence
Sessions
Haute disponibilité
Reference
Authentification et autorisations Data
intégrées avec Access Control Service
Activity
Sensiblement équivalent à AppFabric Data
Server Caching pour le Cloud Resource
Data
DB
42. Azure : Services de Stockage
Stockage persistant hautement disponible
Quatre types de stockage : Tables (entités), Blob (binaire), Queue
(Async), [+ Drives (NTFS)]
Accessible via des services WEB REST depuis une application
Cloud ou à demeure
Exposition de ces services via une librairie cliente .NET
Blob Storage Azure :
Données publiques :
Accès en lecture sur de données non confidentielles dans les
blobs sans clé de stockage
Données privées :
Les données peuvent être chiffrées et copiées dans des
containers protégés par une AccountSharedKey 256 bits
(SHA256)
Shared Access Signatures : Accès temporaire au container
privé
44. Azure : Services de bases de données
relationnelles - SQL Azure et
synchronisation
SQL Azure
Database
Data Sync
Retail Stores Service For SQL Remote Offices
Azure
Sync
On-Premises (Headquarters)
48. Azure : Services Réseau
Ajout d’un enregistrement CNAME pour mapper le sous-
domaine “www” (Ex: www.stephgou.org) avec l’application
Windows Azure (Ex: stephgou.cloudapp.net) Windows Azure
Filtrage par les Host Headers dans le cas de multiples site
hébergés sur la même instance Role
A
Role
B
Pas d’affinité de session Relay
Role
C
Windows Azure Connect :
Politique réseau administrée via le portail Windows
Azure
Contrôle de la connectivité entre rôles Azure et
machines à demeure
Configuration automatique d’IPsec
Dev machines
Résolution de nom DNS fondée sur les noms des
Databases
instances
Windows Azure Traffic Manager
Enterprise
Geo Load balancing entre dataCenters
Intégré dans le portail Windows Azure Platform
Trois scénarios actifs avec la CTP : Performance,
54. Matrice de réversibilité
ADFS Access Control
.NET WCF .NET WCF Azure Service Bus
AppFabric Server MSMQ Biztalk Service Bus Topics- EAI-EDI
Queues
Cache AppFabric Server Cache Azure CDN
MSMQ NTFS Table Queues Blobs
SQL Server SQL Azure DataSyn
c
Windows Server 2008 SSTP Azure Connect Traffic Manager
55. Modèle de Cloud Hybride
ADFS Access Control
.NET WCF .NET WCF Azure Service Bus
Biztalk Server AppFabric Server Service Bus Topics- EAI-EDI
Queues
Cache AppFabric Server Cache Azure CDN
NTFS Table Queues Blobs
SQL Server SQL Azure DataSyn
c
Azure Connect Traffic Manager
56. Modèle de Cloud Hybride
ADFS Access Control
.NET WCF .NET WCF Azure Service Bus
Biztalk Server AppFabric Server Service Bus Topics- EAI-EDI
Queues
Cache AppFabric Server Cache Azure CDN
NTFS Table Queues Blobs
SQL Server SQL Azure DataSyn
c
Windows Server 2008 SSTP Azure Connect Traffic Manager
57. Modèle de Cloud Hybride
ADFS Access Control
.NET WCF .NET WCF Azure Service Bus
Biztalk Server AppFabric Server Service Bus Topics- EAI-EDI
Queues
Cache AppFabric Server Cache Azure CDN
NTFS Table Queues Blobs
SQL Server SQL Azure DataSyn
c
Windows Server 2008 SSTP Azure Connect Traffic Manager
58. Modèle de Cloud Hybride
ADFS Access Control
.NET WCF .NET WCF Azure Service Bus
Biztalk Server AppFabric Server Service Bus Topics- EAI-EDI
Queues
Cache AppFabric Server Cache Azure CDN
NTFS Table Queues Blobs
SQL Server SQL Azure DataSyn
c
Azure Connect Traffic Manager
59. Integrating Applications with the
Cloud on Windows Azure
Chapter 1: "Introduction"
Chapter 2: "The Challenges of Cloud
Integration"
Chapter 3: "The Trey Research Scenario"
Chapter 4: "Deploying Functionality and
Data to the Cloud"
Chapter 5: "Authenticating Users and
Authorizing Requests"
Chapter 6: "Implementing Cross-boundary
Communication"
Chapter 7: "Implementing Business Logic
and Message Routing"
Chapter 8: "Replicating, Distributing, and
Synchronizing Data"
Chapter 9: "Maximizing Scalability,
Availability, and Performance"
Chapter 10: "Monitoring and Managing
Hybrid Applications"
http://wag.codeplex.com/releases/view/74838
60. Hybrid Reference
Implementation Using BizTalk
Server, Windows Azure, Service
Bus & SQL Azure
http://windowsazurecat.com/2011/08/hybrid-reference-implementation-biztalk-server-
windows-azure-sql-azure/
http://msdn.microsoft.com/en-us/library/windowsazure/hh547113(v=vs.103).aspx
61. Livre sur Windows Azure
Premier ouvrage rédigé en
Français
Sur l’intégralité de la
plateforme Windows Azure
Disponible dès aujourd’hui!
Consultation et achat
possible sur le stand (52)
des éditions ENI
62. Des ressources Windows Azure
gratuites
Testez Windows Azure Abonnés MSDN, vous
gratuitement pendant bénéficiez de
90 jours Windows Azure
http://aka.ms/
http://aka.ms/
tester-azure-90j
activer-azure-msdn
Scénario d’utilisation
(B2B): http://aka.ms/
b2b-avec-sqlazure
63. Pour aller plus loin
Prochaines sessions des Dev Camps
Chaque semaine, les 10
Live Open Data - Développer des applications riches avec le
février
DevCamps 2012
16
Meeting protocole Open Data
ALM, Azure, Windows Phone, HTML5, OpenData février
Live
Meeting
Azure series - Développer des applications sociales sur
la plateforme Windows Azure
2012
http://msdn.microsoft.com/fr-fr/devcamp
17
Live Comprendre le canvas avec Galactic et la librairie
février
Meeting three.js
2012
Téléchargement, ressources 21
février
Live La production automatisée de code avec CodeFluent
Meeting Entities
et toolkits : RdV sur MSDN 2012
2 mars Live Comprendre et mettre en oeuvre le toolkit Azure pour
http://msdn.microsoft.com/fr-fr/ 2012 Meeting Windows Phone 7, iOS et Android
6 mars Live
Nuget et ALM
2012 Meeting
Les offres à connaître 9 mars
2012
Live
Meeting
Kinect - Bien gérer la vie de son capteur
90 jours d’essai gratuit de Windows 13 mars
2012
Live
Meeting
Sharepoint series - Automatisation des tests
Azure 14 mars Live TFS Health Check - vérifier la bonne santé de votre
www.windowsazure.fr 2012 Meeting plateforme de développement
15 mars Live Azure series - Développer pour les téléphones, les
2012 Meeting tablettes et le cloud avec Visual Studio 2010
Jusqu’à 35% de réduction sur Visual 16 mars Live Applications METRO design - Désossage en règle d'un
Studio Pro, avec l’abonnement MSDN 2012 Meeting template METRO javascript
20 mars Live Retour d'expérience LightSwitch, Optimisation de
www.visualstudio.fr 2012 Meeting l'accès aux données, Intégration Silverlight
23 mars Live OAuth - la clé de l'utilisation des réseaux sociaux dans
2012 Meeting votre application