Windows Azure : concepts de base, modèle économique et programme d’adoption

Selon le Gartner, le marché pour les services en ligne s’élèvera à $150 Milliards en 2013. Il y a ici des opportunités à saisir pour tous : Microsoft et ses partenaires.

Windows Azure est l'offre "Cloud Computing" de Microsoft. Certains parlent de "Cloud OS" (système d'exploitation pour les nuages), d'autres qualifient cette offre de "Platform As A Service" (PaaS). Il s'agit en effet d'une plateforme permettant d'accueillir votre code et vos services applicatifs avec un système de facturation à la demande, cad sur la base des ressources consommés (éxécution, stockage, bande passante réseau).

Ce billet rappelle quelque concepts de base de Windows Azure, comment commencer à tester la plateforme, ainsi que les prix publics.
Si vous êtes éditeur de logiciels et vous avez un projet sérieux pour Windows Azure : continuez à lire, il y a une opportunité à saisir !

Si vous ne connaissez pas encore Windows Azure et souhaitez obtenir plus d’information, je vous invite à consulter le portail Windows Azure Platform.

Un système d’exploitation pour le “Cloud” ?

De la même manière qu'un système d'exploitation, Windows Azure fourni une abstraction sur la plateforme matérielle sous-jacente, un ensemble de services de base communs (unité d'exécution, stockage) pour les applications, un ensemble d'APIs permettant d'accéder à ces services, ainsi que des outils pour développer vos applications.

Mais contrairement à un système d'exploitation plus classique, Azure propose de gérer quelques scénarios spécifiques au "Cloud" tels que la gestion de grappes de serveurs, répartition de charge, provisionnement de machines virtuelles (ou plus spécifiquement des Roles), qui garantissent la montée en charge efficace ou la mise à l'échelle des applications.
Azure gère et automatise également toutes les tâches d’administration telles que la sauvegarde, le déploiement des applications sur les différents nœuds ou machines virtuelles, la maintenance et montée des versions du système sous-jacent … afin de vous permettre de vous concentrer sur l’essentiel : votre code applicatif !

Développer pour Azure

Développer pour Windows Azure est très comparable à développer pour Windows. En effet, le développement est basé sur le Framework .NET 3.x (on peut néanmoins développer dans le langage/outil de son choix) et le SDK s’intègre naturellement à Visual Studio. Ce dernier fourni également un environnement d’émulation pour des tests sur le poste de développement.

La version la plus récente du SDK correspond au Windows Azure Tools for Microsoft Visual Studio July 2009 CTP.

Les briques de base

Cette plateforme, Windows Azure, est composé des briques suivantes :

  • Windows Azure
  • SQL Azure
  • .NET Services (workflow sera intégré ultérieurement)

SQL Azure (anciennement SQL Data Services) correspond à une base de données relationnelle qui repose sur SQL Server.
Ce module est différent des services de stockage non-relationnels fournis par la brique Windows Azure (Tables, Blobs, Queues), conçus pour les besoins de mise à l’échelle extrêmes de certains scénarios pour le “Cloud”.

Où commencer, comment tester ?

Vous trouverez de plus amples informations relatives à l’offre Azure sur le portail Windows Azure Platform.

Si vous n'avez pas encore testé Windows Azure, je vous invite à vous registrer sur le site Microsoft Connect, afin d'obtenir un jeton (ou token) qui vous permettra d'accéder à la plateforme et de la tester pendant la phase de Community Technology Preview (CTP).

Qu'attendez vous : inscrivez-vous et commencez à bâtir vos applications pour le "Cloud" dès aujourd'hui.

Combien ça coute ?

Windows Azure est encore en phase CTP. Pendant cette période, vous pouvez tester la plateforme et bâtir vos futurs applications gratuitement jusqu'au mois de Novembre, date approximative à partie de laquelle cette plateforme sera disponible commercialement et accessible depuis 3 centres à Dublin, Singapour et US.

Vous êtes nombreux à nous demander des détails sur le modèle économique associé à cette offre. Voici les informations qui ont été dévoilée durant la Microsoft Worldwide Partner Conference (WPC) il y a quelques jours :

Windows Azure:
Exécution = $0.12 / heure (par machine virtuelle)
Stockage = $0.15 / Go de stockage / mois,  $0.01 / 10K opérations 
Bande passante = $0.10 / Go en entrée,  $0.15 / Go en sortie
(les transferts de données au sein du datacenter ne sont pas comptabilisés)

SQL Azure:
Web Edition = $9.99 / mois, limité à 1 BD de 1 Go de stockage et 10 heures d’exécution de requêtes
Business Edition = $99.99 / mois, limité à 1 BD de 10 Go de stockage et 100 heures d’exécution de requêtes
Bande passante = $0.10 / Go en entrée,  $0.15 / Go en sortie

.Net Services:
Messages = $0.15 / 100K message ou opérations (Service Bus et Access Control)
Bande passante = $0.10 / Go en entrée,  $0.15 / Go en sortie

Les tarifs ci-dessus correspondent à l’offre standard basée sur la consommation de ressources, elle est flexible et économiquement accessible.
Nous étudions d’autres offres plus prédictibles pour nos partenaires éditeurs de logiciels, basées sur un modèle de souscription avec engagement de volume. 

Garantie de qualité de service (SLA):

Azure Role = 99.95% uptime
Azure Storage = 99.9% uptime
SQL Azure = 99.9% uptime
.Net Services = 99.95% uptime

Ce SLA sera affiné dans les prochains mois, il prévoit un crédit de ressources (temps cpu/stockage) en cas de non respect de la qualité de service.

Vous pouvez consulter tous les détails sur le prix et qualité de service depuis le site Windows Azure Pricing & Licensing Overview.

Vous avez un projet Azure ?

Comme pour chaque rupture technologique, les premiers acteurs à profiter des innovations sont souvent les mieux positionnés pour se différencier sur le marché et face à la concurrence.
Et en tant que précurseurs, ils sont également plus à même d’influencer certaines orientations technologiques via une collaboration plus étroite avec le fournisseur.

Pour ceux d’entre vous qui ont un réel projet d’envergure sur Windows Azure, et qui souhaitent mener une collaboration plus proche avec Microsoft, vous pouvez présenter votre candidature pour un programme d’adoption qui comporte les bénéfices suivants :

  • Plus de ressources (Roles, Instances) sur la plateforme CTP, pour des tests en condition réelle.
  • Accès au système de facturation (factures valorisées à $0 en CTP), pour préparer votre lancement commercial.
  • Echanges avec les équipes de développement : présentation des plans pour les futures version, vos feedbacks (prévoir un voyage à Redmond en Septembre).
  • Travaux pratiques approfondis avec l’équipe de développement sur votre application (prévoir un voyage à Redmond).
  • Sessions Live Meetings réguliers, pour vous informer de notre roadmap, et des opportunités associées.

Si vous êtes déjà engagé sérieusement sur un projet Windows Azure et que vous souhaitez bénéficier des avantages ci-dessus, je vous invite à envoyer un message à stephanc@microsoft.com, en décrivant votre projet, les services utilisés ainsi que votre roadmap.