WINDOWS AZURE ET LES ISV GUIDE DESTINÉ AUX DÉCISIONNAIRES DAVID CHAPPELL JUILLET 2009 AVEC LA PARTICIPATION DE MICROSOFT CORPORATION
TABLE DES MATIÈRES Les ISV et le Clud cmputing... 2 Rapide présentatin de Windws Azure... 3 Technlgie... 3 Stratégie cmmerciale... 6 Utilisatin de Windws Azure : exemples d'ptins dispnibles pur les ISV... 7 Utilisatin du stckage clud depuis vtre applicatin lcale... 7 Assciatin du Clud cmputing avec vtre applicatin sur site... 8 Créatin d'une versin SaaS de vtre applicatin... 8 Furniture de services de supprt technique pur les platefrmes clud... 11 Cmparaisn de Windws Azure à d'autres slutins... 12 Hébergement classique... 12 Des VM à la demande... 13 Cnclusins... 14 À prps de l'auteur... 14 1
LES ISV ET LE CLOUD COMPUTING Purqui un éditeur de lgiciels indépendant (ISV) devrait-il s'intéresser au Clud cmputing? La répnse est simple : le clud ffre à l'isv une chance d'augmenter ses bénéfices et/u de réduire ses dépenses. Il peut y avir des avantages certains à exécuter du cde et stcker des dnnées sur des rdinateurs faisant partie de grands datacenters, accessibles par Internet et détenus par d'autres persnnes. Tute persnne chargée d'établir une stratégie pur un ISV devrait sérieusement penser à la manière dnt le Clud cmputing affectera sn activité. L'une des ptins dnt dispse un ISV qui cherche à tirer avantage du clud, c'est d'utiliser Windws Azure. Cnçu pur prendre en charge des applicatins hautement évlutives et fiables, Windws Azure est la technlgie de platefrme clud phare de Micrsft. Le présent article se penche sur les raisns pur lesquelles les ISV devraient utiliser Windws Azure et sur la manière dnt ils devraient s'en servir. Nus identifierns clairement les raisns qui fnt du Clud cmputing un élément essentiel pur les ISV, et nus décrirns de quelle manière ces derniers peuvent mettre en œuvre cette nuvelle platefrme. Avant de nus plnger dans le sujet, il est imprtant de résumer tut d'abrd certaines idées essentielles. Vici quelques pints clés qu'il est indispensable de cmprendre : L'une des principales missins de Windws Azure est de prpser une platefrme sur laquelle les ISV nt la pssibilité de créer des applicatins SaaS (lgiciel en tant que service). Les clients snt de plus en plus séduits par l'idée de dispser d'une ptin SaaS pur les lgiciels qu'ils achètent. Afin de répndre à cette demande et de ne pas se laisser distancer par la cncurrence, de nmbreux ISV chisissent de prpser une versin SaaS de leurs prduits actuels et à venir. La créatin d'une applicatin SaaS nécessite de mettre en place un service hautement évlutif et fiable basé sur le clud, qui puisse être utilisé simultanément par plusieurs entreprises clientes. Créer à cette fin vtre prpre infrastructure n'aurait pas plus de sens que de rédiger vtre prpre système d'explitatin pur une applicatin sur site. De la même manière que Windws furnit une infrastructure pur les applicatins sur site classiques, Windws Azure peut furnir une infrastructure pur les applicatins SaaS. De même que le Clud cmputing n'est pas frcément une ffre de type «tut u rien», les applicatins SaaS ne snt pas la seule ptin. Une applicatin sur site existante peut être enrichie de fnctinnalités basées sur le clud, cmme l'exécutin de cde u le stckage d'un sus-ensemble de dnnées sur Windws Azure. Cette apprche évlutive d'utilisatin d'une platefrme clud peut permettre de réaliser des écnmies et d'amélirer les fnctinnalités d'une applicatin actuelle. Elle peut également cnstituer un myen peu risqué de décuvrir ce nuveau type de technlgie. Les platefrmes clud ne snt accessires que pur les entreprises qui créent des applicatins pur utilisateur final. Si, en tant qu'isv, vus prpsez des mdules cmplémentaires d'infrastructure u des aides aux dévelppeurs pur un envirnnement Windws lcal, il est prbable que vus puissiez aussi créer des prduits à valeur ajutée pur Windws Azure. Une part de plus en plus imprtante de l'infrmatique est transférée vers le clud ; la créatin de nuvelles ffres va dnc très prbablement devenir un myen essentiel de maintenir vs surces de revenus. 2
Une platefrme clud telle que Windws Azure est différente d'un hébergement classique. D'un pint de vue technique, Windws Azure prpse une administratin plus simple, ainsi que des services cnçus pur créer des applicatins évlutives et fiables. Les différences en termes d'activité incluent un engagement initial minimal et des myens plus simples d'augmenter et de réduire les ressurces infrmatiques utilisées par vtre applicatin. Ces différences signifient que Windws Azure a la pssibilité de prpser des technlgies plus évluées à mindres cûts pur les applicatins des ISV. À l'rigine, Windws Azure est cnçu pur prendre en charge les applicatins d'aujurd'hui dans le clud. Il est cependant intéressant de suligner que les platefrmes clud ffrent des services jamais vus jusqu'alrs, cmme l'accès à un grand nmbre d'uc à mindres cûts et un stckage de dnnées massivement évlutif. Outre le supprt technique mndial que nus cnnaissns déjà, nus devns nus attendre à ce que les ISV, tujurs plus créatifs, truvent le myen de créer de nuvelles ffres grâce à ce nuveau type de platefrme. RAPIDE PRSENTATION DE WINDOWS AZURE Pur prendre de bnnes décisins sur la manière d'utiliser Windws Azure, il cnvient en premier lieu d'avir une cmpréhensin élémentaire de la platefrme. Cette sectin furnit une présentatin de la technlgie et de la stratégie cmmerciale assciée. TECHNOLOGIE Windws Azure cmprte tris parties principales : un service de calcul qui exécute les applicatins, un service de stckage qui cnserve les dnnées et une fabrique qui prend en charge les services de calcul et de stckage. La figure 1 présente cette répartitin. Figure 1 : Windws Azure cmprte tris parties principales : le service de calcul, le service de stckage et la fabrique sur laquelle ces deux services repsent. Pur utiliser le service de calcul, un dévelppeur crée une applicatin Windws. Cette applicatin peut être rédigée en utilisant C# et.net Framewrk, C++ et les API Win32 u bien via un autre myen. Quel que sit sn mde de créatin, l'applicatin dit être mise en place avec des rôles Web, des rôles de travail, vire les deux. La figure 2 illustre cette idée. 3
Figure 2 : les applicatins basées sur le service de calcul Windws Azure peuvent cmprter des instances de rôle Web, des instances de rôle de travail, vire les deux. Cmme le suggère sn nm, une instance de rôle Web accepte les demandes Web. Elle peut être créée en utilisant ASP.NET u une autre technlgie cmpatible avec IIS (Internet Infrmatin Services). Quelle que sit la technlgie utilisée, Windws Azure ffre une fnctin d'équilibrage de la charge matérielle intégrée sur tutes les instances de rôle Web d'une applicatin dnnée. Dans le cas de fnctins nn cnçues pur répndre aux demandes Web, une applicatin Windws Azure peut aussi cntenir des instances de rôle de travail. Une instance de rôle de travail est simplement une applicatin Windws avec une fnctin principale() ; elle peut s'exécuter indéfiniment. Cette stratégie permet entre autres de créer des applicatins évlutives ù les instances de rôle Web acceptent les demandes, avant de les transmettre aux instances de rôle de travail pur traitement. Et tandis que les instances de rôle Web et les instances de rôle de travail snt des applicatins Windws rdinaires, quelques pératins, cmme la jurnalisatin, nécessitent un accès direct à Windws Azure. Pur ce faire, les applicatins peuvent directement envyer un appel dans un agent Windws Azure, cmme le mntre la figure 2. Ntez que chaque instance (rôle Web u rôle de travail) est exécutée sur sn prpre rdinateur virtuel (VM). Cet islement permet aux applicatins Windws Azure d'être exécutées en ttale cnfiance et ffre également un aperçu clair des perfrmances des applicatins, grâce à un mappage défini entre les VM et les cœurs de prcesseur. Mais un dévelppeur ne crée pas de manière explicite les VM. À la place, il télécharge une applicatin sur Windws Azure avec un fichier de cnfiguratin XML, qui indique le nmbre d'instances de rôle Web et d'instances de rôle de travail qui divent être exécutées. À l'issue de cette pératin, Windws Azure crée le nmbre de VM nécessaires, puis surveille leur exécutin. En cas d'échec d'une instance, Windws Azure en lance une nuvelle, en s'assurant que le nmbre indiqué d'instances de rôle Web et de rôle de travail est tujurs exécuté. (Cette pératin est effectuée par le lgiciel Fabric Cntrller, en charge de tutes les machines d'une instance dnnée de la fabrique.) Pur augmenter u réduire le nmbre d'instances exécutées, le prpriétaire d'une applicatin peut mdifier la valeur crrespndant à l'un u l'autre des types d'instance dans la cnfiguratin de l'applicatin. Windws Azure crée u arrête autmatiquement les VM pur crrespndre à ce nuveau paramétrage. 4
Étant dnné que les applicatins Windws Azure snt avant tut des applicatins Windws, il n'est pas surprenant que les dévelppeurs puissent les créer avec Visual Studi. Cet util furnit des mdèles pur la créatin d'applicatins clud avec des rôles Web, des rôles de travail, vire les deux. Windws Azure prpse également un Develpment Fabric, qui est une cpie de Windws Azure s'exécutant sur un rdinateur lcal. Les dévelppeurs peuvent l'utiliser pur créer leur cde et prcéder aux tests initiaux, avant de télécharger l'applicatin sur Windws Azure, une fis celle-ci prête. Les applicatins requièrent généralement un stckage permanent, aussi Windws Azure furnit-elle ses prpres mécanismes basés sur le clud, pur le stckage et la récupératin des dnnées. La platefrme prpse tris ptins de stckage, tutes accessibles via les pératins HTTP standard GET, PUT et DELETE. La figure 3 illustre ce fnctinnement. Figure 3 : le service de stckage Windws Azure est accessible via des applicatins Windws Azure u via des applicatins exécutées sur un autre emplacement. Les tris types de stckage Windws Azure snt les suivants : Blbs : permet de stcker des bjets binaires vlumineux, cmme des vidés u des images. Tables : permet un stckage très évlutif basé sur une entité (hrs tables relatinnelles). Files d'attente : permet l'envi et la réceptin de messages, par exemple entre les instances de rôle Web et les instances de rôle de travail d'une applicatin. Il est à nter que ces tris ptins snt également accessibles par des applicatins qui ne snt pas exécutées sur le service de calcul Windws Azure. Par exemple, une applicatin lcale u hébergée peut chisir de stcker des fichiers vidé vlumineux en tant que blbs Windws Azure. 5
La platefrme Windws Azure cntient également la base de dnnées SQL Azure (anciennement cnnue sus le nm de SQL Data Services). La base de dnnées SQL Azure prpse un stckage relatinnel standard basé sur SQL Server, accmpagné de prcédures stckées et d'autres éléments. Une seule base de dnnées SQL Azure ne peut pas cntenir autant d'infrmatins qu'une seule table de stckage Windws Azure ; tutefis, ces bases de dnnées ffrent une stratégie de stckage familière, accessible via ADO.NET et d'autres mécanismes d'accès aux dnnées largement utilisés. Pur une présentatin plus détaillée de Windws Azure, reprtez-vus à l'article Intrducing Windws Azure (Intrductin à Windws Azure). Pur une étude de la platefrme Windws Azure cmplète (anciennement cnnue sus le nm de platefrme des services Azure), reprtez-vus à l'article Intrducing the Azure Services Platfrm: An Early Lk at Windws Azure,.NET Services, SQL Services, and Live Services (Intrductin à la platefrme des services Azure : un aperçu anticipé de Windws Azure, des services. NET, des services SQL et des services Micrsft Live). STRATÉGIE COMMERCIALE L'un des principaux attraits de la platefrme clud, et l'une de ses différences majeures par rapprt à un hébergement classique, tient dans sn mde de facturatin à la cnsmmatin. Dans le cas d'un hébergement classique u d'un datacenter interne, le prpriétaire d'une applicatin est généralement facturé pur un ensemble d'rdinateurs et un nmbre d'heures dnnés. Dans le cas des applicatins à charge variable, cet ensemble dnné dit être suffisamment imprtant pur puvir faire face aux pics d'utilisatin les plus élevés, ce qui signifie que la capacité n'est pas entièrement utilisée en pérides hrs pics. Les platefrmes clud nt un fnctinnement différent. Dans le cas de Windws Azure, par exemple, le prpriétaire d'une applicatin est facturé en fnctin des ressurces de calcul et de stckage qu'il utilise. Lrsque la charge de l'applicatin est faible, il peut par exemple demander tris instances de rôle Web et deux instances de rôle de travail. Lrsque la charge est élevée, il peut étendre sa demande à six instances de rôle Web et quatre instances de rôle de travail. Dans les deux cas, le prpriétaire de l'applicatin n'est facturé qu'en fnctin des ressurces que sn applicatin utilise. Le principe de facturatin de Windws Azure est relativement simple, avec tris facteurs principaux : durée de calcul, stckage et accès aux dnnées, et bande passante entrante et srtante transférée. En ce qui cncerne la durée de calcul, le prpriétaire d'une applicatin est facturé un mntant fixe pur chaque heure d'exécutin d'une VM. En ce qui cncerne les dnnées, des frais fixes snt facturés par gigactet et par mis, auxquels viennent s'ajuter des frais pur les pératins effectuées sur les dnnées stckées, telles que les pératins GET et PUT. En ce qui cncerne la bande passante, le prpriétaire d'une applicatin est facturé un mntant fixe par gigactet de dnnées transférées depuis u vers un datacenter Windws Azure. (Aucun frais de bande passante n'est cependant prélevé pur puvir accéder aux dnnées d'un datacenter.) Les frais snt fixés cmme suit : Calcul = 0,12 $/heure pur chaque VM exécutée Stckage = 0,15 $/G stcké par mis, 0,01 $/10 000 pératins sur des dnnées stckées Bande passante = 0,10 $/G entrant transféré, 0,15 $/G srtant transféré 6
Les applicatins Windws Azure peuvent également utiliser la base de dnnées SQL Azure pur le stckage. Une nuvelle fis, les frais snt basés sur l'utilisatin, avec deux facteurs : le vlume de dnnées stckées et le vlume de dnnées transférées depuis u vers un datacenter Windws Azure. Les frais snt fixés cmme suit : Web Editin : 9,99 $/mis pur une base de dnnées relatinnelle jusqu'à 1 G de dnnées stckées Business Editin : 99,99 $/mis pur une base de dnnées relatinnelle jusqu'à 10 G de dnnées stckées Bande passante = 0,10 $/G entrant transféré, 0,15 $/G srtant transféré Bien que cela n'ait pas été défini lrs du lancement initial de la platefrme, Micrsft a indiqué qu'à terme, elle prpsera des remises sur la facturatin, basées sur l'engagement. Les clients qui suhaiternt s'engager seln des niveaux d'utilisatin minimaux définis verrnt leurs frais diminués. Les engagements permettent à Micrsft d'établir une planificatin de manière plus efficace et rentable, et les remises reflètent cette réductin des cûts. Cmme pur ses autres ffres, Micrsft dispse également d'un prgramme partenaire pur Windws Azure. Il est cnstitué pur une part d'un service de démarrage rapide Azure QuickStart, qui met à la dispsitin des ISV et des autres partenaires un emplacement centralisé pur cmmencer à décuvrir la platefrme Windws Azure et entrer en cntact avec Micrsft et les autres clients qui utilisent cette platefrme. L'entreprise dispse également d'une ffre Accélérateur de dévelppements accrdant aux ISV qui le suhaitent, des remises de facturatin sur l'utilisatin de la platefrme Windws Azure par leurs dévelppeurs, cntre un engagement de six mis. Des frums, une assistance téléphnique et d'autres services classiques snt également dispnibles ; cela démntre cmbien Micrsft a cnscience du rôle fndamental que les ISV juent dans le succès de Windws Azure. UTILISATION DE WINDOWS AZURE : EXEMPLES D'OPTIONS DISPONIBLES POUR LES ISV Pur savir si une platefrme clud purrait ptimiser vtre activité, vus devez d'abrd réfléchir en détail aux utilisatins que vus purriez en faire. La présente sectin a dnc pur bjectif de vus présenter quelques-unes des principales vies d'utilisatin de Windws Azure pur les ISV. UTILISATION DU STOCKAGE CLOUD DEPUIS VOTRE APPLICATION LOCALE Le stckage des dnnées est peut-être le myen le plus simple pur une applicatin ISV d'utiliser Windws Azure. Cmme mentinné ci-dessus, le stckage Windws Azure est accessible aussi bien depuis des applicatins sur site, que depuis des applicatins Windws Azure. Par exemple, une applicatin qui effectue actuellement des sauvegardes sur un système de stckage lcal, peut à la place chisir d'utiliser des blbs de stckage Windws Azure. Cela permet d'amélirer la fiabilité de la sauvegarde, car cmme tute chse dans le stckage Windws Azure, les blbs snt répliqués au mins tris fis. Cela permet également de réduire les cûts, cmpte tenu des écnmies d'échelles réalisées par les très vlumineux datacenters de Micrsft. Prenns également l'exemple d'une applicatin furnissant d'imprtants vlumes de dnnées à ses utilisateurs : vidés, fichiers audi u autre. Au lieu de stcker ces dnnées en lcal, l'applicatin purrait une fis encre chisir d'utiliser les blbs de stckage Windws Azure pur btenir une meilleure dispnibilité u une réductin des cûts, vire les deux. 7
Et le stckage Windws Azure n'est pas la seule ptin dispnible. Grâce à la base de dnnées SQL Azure, une applicatin a également la pssibilité de stcker des dnnées relatinnelles dans le clud. Par exemple, une applicatin qui a besin de partager un ensemble de tables relatinnelles dans plusieurs instances, exécutées à différents emplacements, purrait tirer avantage du fait d'avir accès aux dnnées depuis un seul emplacement. Il existe certaines restrictins (une seule base de dnnées SQL Azure ne peut pas excéder dix gigactets, par exemple), de srte que ce service ne revient pas exactement à exécuter SQL Server dans le clud. Certains avantages ptentiels snt cependant indéniables. Une bnne partie des tâches nécessaires pur administrer une base de dnnées est supprimée avec la base de dnnées SQL Azure, puisque Micrsft le fait pur vus. La dispnibilité de vs dnnées augmente également, puisque tut cmme le stckage Windws Azure, la base de dnnées SQL Azure stcke tris cpies des dnnées, afin de les prtéger des défaillances matérielles. Le cût de ce stckage peut même être inférieur au stckage lcal, en particulier pur les plus petites entreprises. L'utilisatin de la platefrme clud Micrsft pur stcker vs dnnées nécessite d'avir cnfiance en cette platefrme. Le meilleur myen d'établir un climat de cnfiance est de démarrer petit, puis, si cela s'avère légitime, de dévelpper sn utilisatin à partir de cette base. Un ISV qui envisage d'utiliser Windws Azure u la base de dnnées SQL Azure peut très bien truver plus apprprié d'utiliser ses services de stckage depuis une applicatin sur site afin de décuvrir cette nuvelle apprche, avant de s'engager davantage. Il peut s'agir d'un bn myen de se familiariser avec le Clud cmputing. ASSOCIATION DU CLOUD COMPUTING AVEC VOTRE APPLICATION SUR SITE S'il peut s'avérer judicieux de mettre les dnnées d'une applicatin dans le clud, il peut également être pertinent d'utiliser le clud pur exécuter du cde de vtre applicatin. Prenns l'exemple d'un ISV qui dispserait d'une applicatin susceptible de prfiter de la créatin d'un marché en ligne, parmi tutes les entreprises qui utilisent cette slutin. La créatin de cette fnctinnalité sur une platefrme clud cmme Windws Azure devrait prendre beaucup mins de temps et être beaucup plus écnmique que la créatin intégrale de cette même fnctinnalité. Prenns un autre exemple, celui d'une applicatin sur site qui purrait par mment bénéficier d'un nmbre plus imprtant de cœurs de prcesseur pur exécuter des charges sllicitant frtement l'uc. Cette applicatin purrait créer un certain nmbre d'instances de rôle de travail Windws Azure pur réaliser cette tâche, avant de les désactiver lrsqu'elles ne snt plus utiles. Cmme tujurs, le client serait uniquement facturé par rapprt aux ressurces qu'il utiliserait, à savir, le nmbre d'heures d'exécutin réelle de ces VM de rôle de travail. Il existe de nmbreuses situatins dans lesquelles le transfert cmplet d'une applicatin existante dans le clud n'est pas recmmandé. Le prtage de millins de lignes de cde vers une platefrme clud peut s'avérer trp risqué, trp néreux u simplement inutile. Dans de telles situatins, l'ajut d'une fnctinnalité exécutée dans le clud peut s'avérer plus pertinente. Windws Azure ffre une platefrme précnfigurée pur l'exécutin des applicatins clud, permettant ainsi de créer ce type de cde avec plus de facilité. CRÉATION D'UNE VERSION SAAS DE VOTRE APPLICATION Être un ISV a lngtemps cnsisté à installer des lgiciels directement sur les machines des clients. Grâce aux applicatins SaaS, ce n'est désrmais plus le cas. À la différence des lgiciels packagés classiques, une applicatin SaaS s'exécute dans un datacenter accessible par Internet et elle est généralement furnie aux clients via le Web. 8
Les applicatins SaaS peuvent présenter de réels avantages pur les clients, ntamment : Un risque mins élevé : à la différence des lgiciels packagés classiques, les applicatins SaaS ne nécessitent pas frcément un investissement initial imprtant. En général, les clients peuvent à la place essayer l'applicatin gratuitement avant de l'acheter, ce qui leur permet d'être plus cnfiants quant aux avantages qu'elle leur apprtera. Un principe de tarificatin plus attractif : les applicatins SaaS fnctinnent généralement sur le principe de la facturatin à l'utilisatin, sit un certain prix par utilisateur et par mis. Cela laisse aux clients la pssibilité de cmmencer avec un petit nmbre d'utilisateurs et d'en ajuter par la suite, seln besin. Cela permet également de remplacer des dépenses d'immbilisatin (achat de lgiciels) par des dépenses d'explitatin, ce qui peut présenter un avantage pur certaines entreprises. Un dépliement plus rapide et plus écnmique : les utilisateurs d'une applicatin SaaS n'nt plus à installer des lgiciels sur des rdinateurs lcaux ; à la place, ils nt généralement accès à l'applicatin via un navigateur Web standard. Des mises à niveau plus faciles : le client d'une applicatin SaaS n'a plus à mettre à jur ses prpres cpies d'un package lgiciel acheté ; à la place, il peut s'appuyer sur le furnisseur SaaS, qui effectue la mise à niveau de l'applicatin de manière centralisée. Il est certain que les avantages de la technlgie SaaS snt très tentants pur certains clients et certains types d'applicatins. Cette apprche présente cependant quelques désagréments et ne cnvient dnc pas à tutes les applicatins. Vici quelques-unes des questins que les clients SaaS se psent : Cnfiance : un client peut-il vraiment se fier au furnisseur d'une applicatin SaaS? L'applicatin sera-t-elle tujurs dispnible? Peut-n faire cnfiance au furnisseur d'applicatins cncernant les dnnées sensibles de l'entreprise? Les questins de cnfiance vis-à-vis du furnisseur snt le principal bstacle auquel la plupart des clients snt cnfrntés cncernant les applicatins SaaS. Il est imprtant de suligner que cette cnfiance dit également s'étendre à la platefrme clud sur laquelle une applicatin SaaS est basée. Questins de réglementatin et de cnfrmité : les guvernements attendent de nmbreuses entreprises qu'elles répndent à tutes srtes de standards, tels que la li Sarbanes-Oxley, les nrmes Bâle II, etc. Si une applicatin SaaS (et la platefrme clud sur laquelle elle est basée) n'est pas en mesure de respecter ces bligatins, l'entreprise ne peut pas l'utiliser. Persnnalisatin : les packages lgiciels lcaux classiques peuvent généralement être persnnalisés de différentes façns. En revanche, les applicatins SaaS snt habituellement mutualisées, ce qui signifie qu'une seule cpie du lgiciel est partagée par tus les utilisateurs. Même si la persnnalisatin est tujurs pssible, elle est suvent plus restreinte qu'avec les lgiciels packagés classiques. Intégratin à des applicatins sur site : une applicatin SaaS dit ffrir certaines pssibilités d'intégratin de sn cde et de ses dnnées à une applicatin lcale. Cela cmprend l'intégratin d'identité, car les clients suhaitent généralement dispser d'une authentificatin unique. 9
Gestin : la plupart des utils lcaux actuels de gestin et de surveillance des applicatins ne fnctinnent pas crrectement avec les applicatins SaaS. Même si cela va prbablement évluer, la situatin actuelle est plutôt incnfrtable pur certains clients. De la même manière que les applicatins SaaS présentent des aspects psitifs et négatifs pur les entreprises qui achètent les lgiciels, elles cmprtent des avantages et des incnvénients pur les sciétés qui vendent les lgiciels. Vici quelques-uns des avantages des applicatins SaaS pur les ISV : Ptentiel d'augmentatin des ventes : cmpte tenu de la réductin des risques et de l'engagement financier initial plus faible pur les clients, les premières ventes peuvent être plus rapides et plus rentables. Les applicatins SaaS peuvent également attirer de nuvelles catégries de clients, cmme des entreprises plus petites, car elles demandent mins de cmpétences infrmatiques en interne. Des mises à niveau plus faciles pur les clients : l'isv n'a plus à cnvaincre chaque client de remplacer un package lcal ; à la place, il peut effectuer la mise à niveau pur tus les utilisateurs de sn applicatin SaaS en même temps. Cela permet de réduire de manière significative les cûts de supprt technique d'un ISV, la nécessité d'effectuer le supprt des nmbreuses anciennes versins d'une applicatin ayant été supprimée. Cependant, rien n'est gratuit, et le passage dans le mnde de la technlgie SaaS présente également certains incnvénients pur les ISV. En vici quelques-uns parmi les plus évidents : Un mdèle de ventes et de revenus différent : l'argent arrive au cmpte gutte au lieu de rentrer à l'avance grâce aux frais de licence anticipés. Cela est synnyme de marges mins imprtantes, tut du mins au début. Un niveau d'engagement du client réduit : avec la suppressin des frais fixes liés à une applicatin sur site achetée (et peut-être même largement persnnalisée), les clients peuvent plus facilement se désengager au prfit d'un cncurrent. Des revenus de services liés à la persnnalisatin diminués : il se peut que les ISV, qui tirent une grande partie de leurs revenus des services de persnnalisatin, cnstatent une baisse de ces revenus dans le cas des applicatins SaaS. Des défis à relever au plan technique : la créatin d'une applicatin SaaS nécessite des cmpétences techniques différentes de celles dnt la plupart des ISV dispsent déjà. Au lieu de créer un lgiciel lcal qu'il cnnaît bien, vtre rganisme de dévelppement dit à présent dévelpper une applicatin partagée hautement évlutive et fiable. En utre, il peut s'avérer nécessaire de mdifier le cde existant, Windws Azure ne se cmprtant pas tujurs de la même manière que l'envirnnement Windws Server. Par exemple, lrsque Windws Azure équilibre la charge des demandes dans les instances de rôle Web d'une applicatin, il ne prend pas en charge l'affinité de sessin. Cela permet d'amélirer frtement l'évlutivité, mais peut ne pas crrespndre à la manière dnt vtre applicatin est cnçue à l'heure actuelle. Les faits snt clairs : les applicatins SaaS nt un rôle essentiel à juer, mais elles ne vnt pas pur autant faire disparaître les lgiciels lcaux. Tus les ISV qui prpsent une applicatin packagée divent examiner leurs ffres et prendre une décisin : quel est l'intérêt de furnir une versin SaaS? En 10
particulier si vs cncurrents s'engagent dans cette vie, la créatin d'une versin SaaS d'une applicatin sur site actuelle peut être le bn chix. Cmme mentinné plus haut, l'une des principales missins de Windws Azure est de prendre en charge les applicatins SaaS. De nmbreux aspects de sa cnceptin reflètent cette missin. Par exemple, une applicatin SaaS dit être plus évlutive qu'une applicatin sur site, car elle devra prendre en charge plusieurs clients en même temps. La distinctin rôle Web/rôle de travail de Windws Azure a pur bjectif de permettre la créatin d'applicatins massivement évlutives, en répartissant les tâches entre une sectin frntale Web et une sectin principale de travail. De même, les tables de stckage Windws Azure snt spécialement cnçues pur cnserver de grands vlumes de dnnées, bien plus imprtants que ceux qui peuvent être gérés par un seul système de gestin de bases de dnnées relatinnelles. Une applicatin SaaS dit également être plus fiable qu'une applicatin sur site, car une défaillance n'affecte pas qu'un seul client, mais plusieurs. En surveillant chaque instance exécutée d'une applicatin, le Windws Azure Fabric permet d'atteindre cet bjectif. En cas de défaillance d'une instance, d'une VM u même d'un rdinateur cmplet, la technlgie Fabric Cntrller en lancera un(e) autre pur le (la) remplacer. La technlgie Fabric Cntrller permet également de mettre à niveau une applicatin en curs d'exécutin sans l'arrêter, un service indispensable dans le cas d'une applicatin SaaS, qui dit être dispnible en permanence. La flexibilité est un élément encre plus imprtant caractérisant une applicatin SaaS efficace. Par «flexibilité», il faut cmprendre «capacité à gérer les pics de demande». Dans le cas d'une applicatin classique, un datacenter dit puvir supprter la charge maximale que cette applicatin sera jamais en mesure de prendre en charge. C'est sans aucun dute pssible, mais cela reste cher et inutile (une grande partie de la capacité du datacenter sera prbablement inutilisée la plupart du temps). Avec Windws Azure cependant, ce prblème peut plus facilement être réslu. Rappelns que le prpriétaire d'une applicatin peut mdifier le nmbre d'instances exécutées sur le champ, en s'appuyant sur la technlgie Fabric Cntrller pur créer u arrêter des VM seln besin. Étant dnné que les clients Windws Azure snt facturés uniquement pur les ressurces qu'ils utilisent, cette fnctinnalité leur dnne la pssibilité de payer pur un grand nmbre de ressurces infrmatiques, uniquement lrsqu'ils nt vraiment besin de ces ressurces. Lrsque la charge diminue, l'applicatin reprend sa taille nrmale. Les applicatins SaaS nt véritablement des besins différents des applicatins sur site classiques. Ces différences snt en grande partie la raisn pur laquelle la platefrme Windws Azure est cnçue de cette manière. Un ISV qui crée une applicatin SaaS est libre d'établir sa prpre platefrme, et c'est ainsi qu'nt prcédé certains ISV au début, car ils n'avaient pas d'autres alternatives. Cependant, avec l'apparitin des platefrmes clud, les ISV qui créent des applicatins SaaS peuvent à présent se cncentrer sur leur lgique métier, au lieu de s'attacher à l'infrastructure. À l'avenir, il est prbable qu'une majrité d'applicatins SaaS sera créée sur une platefrme clud cmme Windws Azure. FOURNITURE DE SERVICES DE SUPPORT TECHNIQUE POUR LES PLATEFORMES CLOUD Aujurd'hui, nmbreux snt les ISV qui furnissent une infrastructure et des services de gestin pur les envirnnements sur site. D'autres prpsent des lgiciels qui facilitent la vie des dévelppeurs. Certaines de ces slutins ne snt pas pertinentes dans le clud, et d'autres si. En utre, de nuvelles pprtunités 11
se présentent : celles-ci permettraient aux ISV de gagner de l'argent en apprtant une valeur ajutée à Windws Azure. Par exemple, Windws Azure permet d'accéder aux dnnées de perfrmance des applicatins en curs d'exécutin. Un util, utilisé pur regruper ces dnnées avant de les présenter via une interface utilisateur efficace, a permis aux clients de Windws Azure de gérer leurs applicatins clud. Windws Azure furnit également des API qui permettent à une applicatin de mdifier le nmbre d'instances de rôle Web et de rôle de travail exécutées sur le champ, au lieu de s'appuyer sur une persnne pur le faire. Cependant, la platefrme ne furnit pas de lgiciel permettant de surveiller la charge de l'applicatin, puis d'utiliser des API pur ajuster le nmbre d'instances exécutées en cnséquence. Un ISV peut cmbler ce manque, en furnissant du cde pur permettre aux dévelppeurs d'ajuter en tute simplicité ce cmprtement à leurs applicatins. L'avènement des platefrmes clud est un grand buleversement pur les ISV. Lrs de ce type d'événement, il est suvent pertinent d'pérer prgressivement, par exemple en utilisant le stckage clud de Windws Azure u en déchargeant une partie de vtre applicatin dans le clud. Si ces actins s'avèrent cncluantes (et snt intéressantes du pint de vue financier) vus puvez alrs passer à des étapes de plus grande envergure lrsqu'elles snt justifiées, en créant par exemple une versin SaaS cmplète de vtre applicatin. COMPARAISON DE WINDOWS AZURE À D'AUTRES SOLUTIONS Windws Azure n'est pas la seule ptin dispnible ; il existe en effet d'autres apprches. La présente sectin se prpse de cmparer Windws Azure à deux de ses slutins de remplacement les plus viables : l'hébergement classique et les platefrmes clud qui prpsent des VM à la demande. HÉBERGEMENT CLASSIQUE Le furnisseur d'hébergement est la première slutin de remplacement qui interpelle les persnnes à la recherche d'un emplacement externalisé pur exécuter leurs applicatins. Dans l'hébergement classique, un client sllicite un ensemble fixe de ressurces et s'engage à payer pur ces ressurces pendant une péride de temps définie. Ainsi, un ISV qui suhaite exécuter une applicatin SaaS peut passer un accrd avec un hébergeur cncernant la mise à dispsitin de six serveurs Windws pendant un an, en payant un mntant prédéfini pur ce service. L'hébergement cmprte de nmbreux avantages. Utiliser un hébergeur revient suvent mins cher que d'exécuter un datacenter en interne, en particulier pur les entreprises plus petites. Il sulage également le client de la difficulté que représente l'exécutin de sn prpre datacenter, tut en lui permettant de cnserver un cntrôle ttal sur les machines que ce dernier utilise. Même si l'arrivée des platefrmes clud va prbablement affecter l'activité de l'hébergement classique, ce mdèle n'est pas prêt de disparaître, car il demeure un chix judicieux dans de nmbreuses situatins. Cependant, une platefrme clud cmme Windws Azure cnstitue parfis un meilleur chix, tut du mins pur certaines applicatins. Les avantages incluent : La capacité d'augmenter rapidement le nmbre de serveurs utilisés : un hébergeur peut nécessiter plusieurs jurs avant de mettre à dispsitin une nuvelle machine, tandis qu'une applicatin Windws Azure peut furnir une nuvelle VM et l'exécuter en quelques minutes. 12
La capacité de diminuer rapidement le nmbre de serveurs utilisés : les hébergeurs demandent généralement un engagement pur un ensemble fixe de serveurs qui vus snt exclusivement réservés. Avec Windws Azure, une applicatin peut réduire le nmbre de VM qu'elle utilise (et par cnséquent, le cût d'exécutin de cette applicatin) en diminuant le nmbre d'instances de rôle Web et/u de rôle de travail. Il n'y a pas d'engagement initial pur un nmbre minimal de serveurs. La capacité de furnir des services explicitement cnçus pur des applicatins hautement évlutives et fiables : les hébergeurs furnissent généralement des systèmes Windws standard, en laissant à leurs clients la respnsabilité de faire ce qu'il faut pur que leurs applicatins s'exécutent crrectement. Cmme décrit plus haut, une platefrme clud cmme Windws Azure peut être explicitement cnçue pur prendre en charge des applicatins ayant des besins très élevés en termes d'évlutivité et de dispnibilité. Une réductin de la charge administrative : à la différence de Windws Azure, les hébergeurs dnnent généralement aux clients un accès ttal à leurs machines. En cntrepartie, le client dit gérer davantage de tâches administratives, de l'applicatin des crrectifs de systèmes d'explitatin à l'administratin des systèmes de gestin des bases de dnnées. Avec Windws Azure (et la base de dnnées SQL Azure), la plupart de ces tâches snt effectuées pur vus, permettant ainsi de réaliser des écnmies en termes de temps et d'argent. DES VM À LA DEMANDE Un certain nmbre de furnisseurs, y cmpris Amazn, Mss, GGrid et d'autres encre, furnissent des rdinateurs virtuels à la demande. À la différence des hébergeurs classiques, ces furnisseurs prpsent habituellement une facturatin basée sur l'utilisatin qui ne nécessite aucun engagement, pur des VM rapidement dispnibles. En d'autres termes, ils furnissent des platefrmes clud. Windws Azure est aussi une platefrme clud, mais même si elle utilise (et facture via) des VM, elle diffère par bien des aspects des platefrmes qui furnissent des VM à la demande. Par certains côtés, une platefrme uniquement basée sur des VM se rapprche davantage de l'hébergement : vus dispsez d'un cntrôle ttal, y cmpris sur l'accès administratif à vs VM, mais vus êtes aussi pleinement respnsable de la cnfiguratin et de la gestin de ces VM et des lgiciels qu'elles cntiennent. Avec Windws Azure, vus furnissez simplement une applicatin Windws, ainsi que des instructins sur le nmbre d'instances que vus suhaitez exécuter. La platefrme gère seule tut le reste, y cmpris la mise à jur des lgiciels du système lrsque cela s'avère nécessaire. Une autre différence imprtante cncerne la manière dnt les dnnées relatinnelles snt gérées. Dans le cas de platefrmes VM types, vus puvez exécuter une base de dnnées relatinnelle dans une VM, de la même manière que vus exécuteriez cette base de dnnées en lcal u auprès d'un hébergeur. Sans aucun dute, ce prcédé fnctinne, mais il nécessite d'installer, de mettre à jur et d'administrer cette base de dnnées vus-même. Assurer la fiabilité peut également représenter un véritable défi, car il est suvent impssible d'utiliser des clusters à disques partagés. Dans le mnde d'azure par cntre, une applicatin peut utiliser une base de dnnées SQL Azure. Cmme indiqué plus haut, cette technlgie ffre un système de stckage relatinnel géré par Micrsft, qui écrit tutes les dnnées plusieurs fis, pur plus de fiabilité. Encre une fis, vus perdez la capacité d'exercer un cntrôle ttal, mais vus gagnez en simplicité et en fiabilité intégrée. 13
CONCLUSIONS Cmme tutes les nuvelles platefrmes, Windws Azure ne sera un succès que si les ISV décident de créer des applicatins dessus. Micrsft a parfaitement intégré cette ntin, c'est dnc pur elle une pririté que de rendre cette nuvelle platefrme clud attrayante pur ce public. Vici les principaux attraits mis en avant : La platefrme Windws Azure permet aux ISV d'exécuter des applicatins et de stcker des dnnées dans un datacenter très vlumineux, tut en ne payant que pur les ressurces utilisées ; elle peut dnc présenter un intérêt écnmique certain. En furnissant une platefrme prête à l'empli cnçue pur prendre en charge des applicatins clud évlutives et fiables, Windws Azure permet de réduire le temps et les dépenses nécessaires pur créer et exécuter des applicatins SaaS u un autre type de cde basé sur le clud. Le Clud cmputing s'annnce cmme la prchaine révlutin de ntre industrie. De la même manière que les ISV nt dû s'adapter aux changements apprtés par les rdinateurs, les périphériques mbiles et d'autres platefrmes récentes, ils divent à présent déterminer cmment expliter les platefrmes clud. Et de la même manière que Windws a jué un rôle imprtant dans ces précédents buleversements, Windws Azure est sur le pint de tenir une place essentielle dans ce nuveau mnde. Si vus êtes chargé d'établir une stratégie pur vtre entreprise, décuvrir et évaluer l'envirnnement Azure s'avèrera prbablement être une très bnne initiative. À PROPOS DE L'AUTEUR David Chappell est directeur de Chappell & Assciates (www.davidchappell.cm) à San Francisc, Califrnie. Par ses interventins, ses écrits et ses cnseils, il cntribue à aider les utilisateurs du mnde entier à cmprendre, utiliser et prendre les bnnes décisins en matière de nuvelles technlgies. 14