fiche technique windows azure - 123virtualization · voici le mécanisme de base de windows azure...
TRANSCRIPT
[email protected] EXAKIS | NANTES
Fiche Technique Windows Azure
OBJECTIF VIRTUALISATION
Le 25/03/2013
Page 1 sur 14 Objectif Virtualisation
Fiche Technique Windows
Azure
Identification du document
Titre Projet Date de création Date de modification
Fiche Technique
Windows Azure
Objectif
Virtualisation 25/03/2013 27/03/2013
Suivi & Validation du document
Version Auteur Date Action
0.1 Mathieu Caizergues 25/03/2013 Création
0.2 Mathieu Caizergues 26/03/2013 Modification
0.3 Mathieu Caizergues 27/03/2013 Modification
1.0 Mathieu Caizergues 27/03/2013 Validation
Confidentialité
Le document peut être :
Public : tout le monde peut avoir accès au document ;
Interne : la diffusion est limitée au sein d’Exakis seulement ;
Privé : seuls les auteurs ont accès au document.
☒ Public
☐ Interne
☐ Privé
Page 2 sur 14 Objectif Virtualisation
Fiche Technique Windows
Azure
Table des matières
Identification du document ..................................................................................................................1
Suivi & Validation du document .........................................................................................................1
Confidentialité ...........................................................................................................................................1
Table des matières ...................................................................................................................................2
Table des illustrations .............................................................................................................................2
1 Notions sur Windows Azure ........................................................................................................3
2 Comment fonctionne Azure ? .....................................................................................................4
2.1 Mécanisme de base ................................................................................................................4
2.2 Hébergement dans Azure .....................................................................................................5
2.3 SQL Azure ...................................................................................................................................7
2.4 Azure Storage ............................................................................................................................9
3 Que faire avec Azure ? ................................................................................................................ 10
3.1 Azure pour héberger son site Internet .......................................................................... 10
3.2 Azure pour publier des applications Mobile ou Sociale ......................................... 12
3.3 Azure comme IaaS ................................................................................................................ 12
3.4 Azure et le Cloud Hybride ................................................................................................. 13
4 Sources ............................................................................................................................................. 14
Table des illustrations
Figure 1 - Avantage Azure ....................................................................................................................3
Figure 2 - Mécanisme de base.............................................................................................................4
Figure 3 - Architecture SQL Azure ......................................................................................................9
Figure 4 - Azure Storage ..................................................................................................................... 10
Page 3 sur 14 Objectif Virtualisation
Fiche Technique Windows
Azure
1 Notions sur Windows Azure
Windows Azure est le nom de la plateforme de Cloud Public de Microsoft. C’est un
projet relativement récent qui date d’octobre 2008.
L’objectif de Windows Azure est d’héberger dans un centre de données hautement
sécurisé et hautement disponible, des applications ou des services et de les rendre
disponible à l’échelle du globe.
Comme nous allons le voir plus en détail, Microsoft Azure propose plusieurs formes
de Cloud Computing.
SaaS : des applications à la demande ;
IaaS : des infrastructures à la demande.
Les enjeux sont multiples.
Augmenter la fiabilité, la sécurité des services ;
Déployer à l’échelle du globe un site web, une application ou un service ;
Payer à l’usage et bénéficier de plus de flexibilité.
Figure - Avantage Azure
Nous allons voir quelles sont les fonctionnalités de Windows Azure et quels peuvent
être les scénarii d’usage.
Fiabilité Diffusion Flexibilité
Page 4 sur 14 Objectif Virtualisation
Fiche Technique Windows
Azure
2 Comment fonctionne Azure ?
Lorsqu’on parle de Windows Azure, on parle de plateforme de Cloud Computing.
Lorsqu’on parle de Cloud Computing, on parle de Datacenter.
Un Datacenter est un centre de données, c’est-à-dire une infrastructure très sécurisée,
hautement disponible et gérée entièrement par une société qui assure,
contractuellement, l’accès et la protection des données.
2.1 Mécanisme de base Voici le mécanisme de base de Windows Azure et de tout Datacenter en général.
Figure - Mécanisme de base
Quand on décide d’héberger un service ou une infrastructure dans Azure, on accède
à une partie du Datacenter hébergé et géré par Microsoft. Ce Datacenter comprend
trois éléments principaux qui régissent le mécanisme de base.
Page 5 sur 14 Objectif Virtualisation
Fiche Technique Windows
Azure
Si l’on déploie un site Web par exemple, systématiquement, ce n’est pas un serveur
qui sera déployé, mais au minimum 3 et bien souvent plus. Les données sont ainsi
toujours répliquées, ce qui garantit la haute disponibilité des services.
Les fichiers sont stockés dans un système nommé Blob Storage. L’intérêt du Blob
réside dans le fait que les données sont mutualisées pour la batterie de serveurs qui
assurent la haute disponibilité. L’architecture ressemble quelques peu à un stockage
sur baie SAN. Les données sont donc indépendantes des serveurs.
Le second intérêt est que ce Blob Storage peut être contacté par protocole HTTP. Les
utilisateurs du globe entier, qu’ils soient sur PC, Mac, tablette ou mobile pourront
accéder aux données.
Pour les utilisateurs, tout est absolument transparent et ils ne se soucient pas de
savoir quel serveur ou quel stockage ils contactent. Et ceci est possible grâce au
LoadBalancer. C’est un répartiteur de charge qui va aiguiller les requêtes vers les
serveurs. De plus, il permet de distribuer les données présentes sur le Blob.
Notons également la présence d’éléments nommés CDN1. Un CDN est un serveur de
cache qui permet de rapprocher les utilisateurs du contenu. Ainsi, une requête qui
provient de Paris n’atteindra pas le Datacenter qui se trouve aux USA. Un CDN plus
proche de l’utilisateur, à Paris, traitera la requête et distribuera les données. Le CDN
permet d’accélérer la vitesse d’accès au service et d’alléger la charge sur le
Datacenter.
2.2 Hébergement dans Azure Dans Windows Azure, il existe trois possibilités pour héberger un service.
VM Role : la première option consiste à déployer, installer et configurer une
VM de la même manière qu’un serveur « On Premise », c’est-à-dire de A à Z.
Worker Role : l’autre possibilité est de faire appel à une VM préconfigurée et
préinstallée par Microsoft. Ainsi, l’OS, le LoadBalancer et l’administration sont
garantis par Azure.
Web Role : le Web Role est presque identique au Worker Role, à ceci près que
le rôle IIS est déjà configuré. Il s’agit d’un mode dédié au serveur Web.
1 Content Delivery Network
Page 6 sur 14 Objectif Virtualisation
Fiche Technique Windows
Azure
Attention : Le VM Role est peu conseillé car très chronophage.
Cependant, lorsqu’on utilise un Worker ou Web Role, on n’a pas accès pleinement à
la machine comme on peut avoir accès à l’administration avec un Windows Server.
Mais heureusement, il existe des méthodes pour gérer précisément la machine qui
héberge le service.
Scénario : J'ai un Web Role avec IIS et une application Web déployée.
Comment faire pour ajouter d'autres services au serveur ?
Il existe deux options.
Protocole RDP
On peut se connecter à la machine depuis son poste avec le protocole RDP. Pour
activer RDP dans Azure, il faut un certificat pour authentifier la machine, puis définir
un Login et un Mot de passe qui seront chiffrés.
Attention : Seule une machine est impactée. La configuration ne
s’applique pas à l’ensemble des serveurs. De plus, à chaque redémarrage
on perd les modifications apportées.
Startup Task
Ceci permet de définir des séquences de tâches au démarrage. Les tâches peuvent
être exécutées avec privilèges. Ces actions sont répertoriées dans le LoadBalancer et
s’appliquent pour toutes les machines.
Une Startup Task est définie par deux critères.
Quel est le privilège
Quel est le mode de fonctionnement
Simple : tant que la tâche n'est pas déroulée, on ne démarre pas la
machine ;
Background : elles ne bloquent pas l'exécution de la machine ;
Foreground : tant que la tâche n'est pas déroulée, on refuse le
redémarrage de la machine.
On peut lancer tout type d'exécutable, notamment CMD et Powershell.
Page 7 sur 14 Objectif Virtualisation
Fiche Technique Windows
Azure
2.3 SQL Azure SQL Server est une pièce importante de toute infrastructure réseau. Dans Windows
Azure, il existe deux possibilités pour monter une base de données SQL Server.
Déployer une machine en VM Role et administrer complètement les
composants Windows Server et SQL Server ;
Utiliser le composant SQL Azure.
Qu’est-ce que SQL Azure ?
SQL Azure est un service à la demande, qui s’appuie sur le produit SQL Server. Cela
signifie qu’on souscrit à l’offre SQL Azure et qu’il n’est pas nécessaire d’administrer
ou de gérer l’environnement SQL Server. On ne se soucie que des données et de
l’usage.
SQL Azure est donc un service et plus précisément, il est disponible en deux éditions.
SQL Azure edition Web
SQL Azure business Edition
La différence réside dans la taille maximale de la base.
Dans SQL Azure, on paye à l’usage, c’est-à-dire au Go de données hébergées, par
pallier de 1Go. L’édition Web s’étend de 1Go à 50Go, ce qui présente 97% des bases
de données en entreprise.
Pourquoi utiliser SQL Azure ?
Il existe plusieurs avantages à utiliser SQL Azure plutôt qu’une machine SQL Server.
Comme tous services Azure (Azure AD, Office 365, machine Worker Role) SQL Azure
profite de l’infrastructure native, qui est hautement disponible (redondance machine,
Blob Storage, LoadBalancer).
Le paiement à l’usage permet plus de souplesse et donne la possibilité d’adapter la
taille de sa base et donc le prix en fonction des pics d’activité. Les coûts sont donc
lissés sur une année.
Comme nous le verrons ci-après, les données sont accessibles par requête PHP, à
travers le globe et par de nombreux types de Device.
Page 8 sur 14 Objectif Virtualisation
Fiche Technique Windows
Azure
Quelles sont les limites de SQL Azure ?
Scénario : Je souhaite monter une infrastructure SharePoint. Puis-je
recourir à SQL Azure ?
Non. C’est là les limites de SQL Azure. Il est avant tout destiné aux usages classiques
des bases de données, principalement pour des serveurs Web ou des applications
Web.
Les grandes structures comme SharePoint, très consommatrices de ressources, ont
besoin d’une base SQL robuste. Pour héberger SharePoint dans Azure, il faudra
monter une machine en VM Role avec Windows Server et SQL Server, pleinement
administrer. On perd donc les avantages de la redondance et du Blob Storage.
Autres limites
= ≠
Même noyau
Même langage, même outils.
On peut donc facilement migrer une
application "On-Premise" vers Azure.
SQL Server: produit qu'on installe
SQL Azure : service à la demande
Limite de fonctionnalité :
Pas d'accès au log
Tableau - Similitude et Différences SQL Server et SQL Azure
Architecture de SQL Azure
Les serveurs qui hébergent les applications et services sont connectés à l’entité SQL
Azure, qui profite elle aussi de redondance.
Il existe deux solutions pour contacter les données dans SQL Azure.
Les données dans SQL Azure sont accessibles en HTTP grâce au protocole
OData. N’importe quel Device peut donc venir récupérer les données ;
Les requêtes peuvent être envoyées depuis l’extérieur du Datacenter en
passant à travers un Pare-feu géré par Azure, mais qui peut être paramétré.
Page 9 sur 14 Objectif Virtualisation
Fiche Technique Windows
Azure
Figure - Architecture SQL Azure
2.4 Azure Storage Azure Storage est la solution développée pour assurer le stockage dans Windows
Azure. C’est un système un peu particulier qui mérite d’être expliqué.
Le stockage dans Azure est appelé Blob. Un Blob est un ensemble de fichiers
partagés entre plusieurs entités (exemple serveurs Web), un peu à la manière d'un
partage NFS.
Les fichiers dans les Blob sont déposés en HTTP et récupérés en HTTP, ce qui permet
de consulter les données depuis n’importe quel Device. De plus, les Blob disposent
d'un mécanisme de redondance pour garantir la haute disponibilité des données.
La zone de fichiers (Blob) est accessible via une URL et une clé d'API, qui permettent
d'écrire et d'administrer les fichiers dans le Blob. En .NET, il existe des classes de
manipulation de fichiers nommées Blob container.
Page 10 sur 14 Objectif Virtualisation
Fiche Technique Windows
Azure
Figure - Azure Storage
3 Que faire avec Azure ?
Comme nous allons le voir à présent, on peut imaginer plusieurs scénarii d’utilisation
de Windows Azure.
3.1 Azure pour héberger son site Internet Déployer un site Web dans Azure peut s’avérer être très avantageux.
Votre site est très rapidement disponible en ligne ;
Votre site est tout de suite accessible et proche des visiteurs du globe
entier ;
Votre site est sécurisé et hautement disponible.
Page 11 sur 14 Objectif Virtualisation
Fiche Technique Windows
Azure
PHP et Azure
Il existe deux façons de déployer du PHP dans Azure
Installer le Runtime sur l'application PHP et déclarer dans IIS l'application au
moyen de Startup Task ;
Utiliser WebPI (Web Plateforme Installer) et une des distributions de PHP
disponible et maintenue à jour sur Web.php.net.
Traditionnellement, quand on monte un site web, celui-ci est composé d’un code qui
est chargé sur une page Web et de fichiers qui peuvent être déposés sur le serveur.
Question : Comment faire pour que le code PHP puisse tirer parti du Blob
et de SQL Azure ?
Concernant SQL Azure, il existe des drivers qui permettent d’accéder et de se
connecter aux bases de données (exemple PDO).
Stream Wrapper est une méthode qui offre un point de transmission unique entre les
Blob et les Serveurs. Ce Stream Wrapper permet de simuler un File System. Les Blob
sont donc parfaitement transparents pour le code PHP.
DNS et Multi-sites
La première fois que l’on charge un site Web dans Azure, on obtient une URL de type
cloudApp.net
Heureusement, il est possible de créer des allias qui permettront de personnaliser
l’URL du site Internet. L’un des intérêts d’Azure est que le nombre d’Allias est illimité.
De plus, IIS est capable de gérer le multi-site, c’est-à-dire qu’une instance de IIS peut
comprendre plusieurs sites.
Question : Comment IIS fait-il pour traiter différemment des requêtes qui
proviennent d’allias différents ?
Page 12 sur 14 Objectif Virtualisation
Fiche Technique Windows
Azure
Trois solutions.
Mapper 1 port par site ;
Distinguer par adresse IP Le LoadBalancer masque l'IP réelle ;
La technologie Host Header Name qui permet à IIS de distinguer les
requêtes en fonction des Allias.
On comprend alors tout l’intérêt de IIS, du multi-site et des Allias illimité. Grâce à
Azure, vous pouvez créer au sein d’une instance IIS, autant de site Internet et gérer
différemment plusieurs clients.
3.2 Azure pour publier des applications Mobile ou
Sociale Une autre utilisation de Windows Azure consiste à créer des applications pour
plateforme Mobile ou réseaux sociaux. Le Cloud public Azure peut s’avérer être une
bonne opportunité pour diffuser son application auprès d’un large public.
Scénario : Je souhaite publier un service pour les utilisateurs de mon
application Windows Phone
Scénario : Je souhaite concevoir une application pour le réseau social
Ces scénarii sont possibles grâce à Azure. Au regard des protocoles ouverts et des
Clés API qui constituent l’architecture Azure, toutes ces formes d’usages sont très
faciles.
3.3 Azure comme IaaS Windows Azure est un formidable moyen de créer une infrastructure dans le Cloud
(Infrastructure as a Service). Comme nous l’avons vu, il existe plusieurs solutions
d’exploiter les possibilités d’Azure.
On peut envisager de créer une infrastructure à l’aide des offres entièrement
managées par Microsoft, telles SQL Azure, Azure AD ou Office 365.
Page 13 sur 14 Objectif Virtualisation
Fiche Technique Windows
Azure
Mais il est possible aussi de déployer son infrastructure de serveurs à l’aide de VM
que l’on administre soit même.
Scénario : J’ai une entreprise multi-sites avec des collaborateurs mobiles.
Je consomme le service Office 365 pour offrir Mail et Office à mes
utilisateurs où qu’ils se trouvent.
Scénario : Je veux pouvoir gérer complètement mon infrastructure, mais
que les ressources puissent être adaptées de manière flexible et pouvoir
lisser les coûts. Je déploie une infrastructure à l’aide de VM Role ou
Worker Role.
3.4 Azure et le Cloud Hybride Les derniers produits Microsoft, à savoir Windows Server 2012, SQL Server 2012,
HyperV 2012, SCCM 2012, introduisent la notion de Cloud Hybride.
Le Cloud hybride consiste à tirer parti des avantages du Cloud « On Premise » gérés
et hébergés dans les locaux de l’entreprise et du Cloud public comme Windows
Azure.
Windows Server 2012 permet de facilement basculer du Cloud privé au Cloud public
et permet la création de nouveaux scénarii.
Scénario : Grâce à SQL Azure Data Sync, on peut envisager d’avoir une
plateforme SQL Server 2012 « On Premise » et de sauvegarder la base
dans Azure.
Scénario : On peut également envisager de synchroniser tout ou partie
des données SQL locales pour les publier dans Azure. Les données ainsi
publiées pourraient alimenter des applications hébergées dans Azure
(PHP, mobile, etc.). Un usage serait par exemple de communiquer
certaines données à des partenaires.
Nous voyons que les possibilités de Windows Azure sont grandes et les
scénarii imaginables très nombreux.
Page 14 sur 14 Objectif Virtualisation
Fiche Technique Windows
Azure
4 Sources
http://www.windowsazure.com/en-us/
http://www.youtube.com/watch?v=DiVVH3Shvg8
http://www.youtube.com/watch?v=DiVVH3Shvg8
http://www.windowsazure.com/en-us/manage/services/networking/active-directory-
forest/#Step5