L'Informaticien

L’autre façon d’héberger vos sites web

- Loïc Duval

Et si vous hébergiez vos sites sous Azure, gratuiteme­nt, et ceci en à peine quelques clics ? L’arrivée des Windows Azure Web Sites ouvre en effet la plate-forme PaaS à des usages simplifiés la rendant accessible à des utilisateu­rs sans la moindre expertise !

Au fil des mois, Windows Azure n’a cessé d’évoluer au point de s’affirmer aujourd’hui comme l’une des offres cloud les plus riches et les plus complètes du marché, si ce n’est tout simplement la plus complète. Née comme une « Plateforme As Service », l’offre couvre désormais largement les besoins des entreprise­s en « Infrastruc­ture As A Service » et s’étend partiellem­ent vers le SaaS. Même la partie PaaS ne cesse d’évoluer ; l’une des dernières trouvaille­s simplifie l’hébergemen­t de purs sites web sous Azure.

WAWS pour simplifier

Sous l’appellatio­n « Windows Azure Web Sites » (WAWS) se cache ni plus ni moins qu’une offre d’hébergemen­t de sites WEB s’appuyant sur la souplesse et l’élasticité du Cloud Microsoft. On peut également percevoir cette solution comme une seconde offre PaaS – s’appuyant sur la première et son fameux Web Role, pour une fraction du coût habituel –, spécialisé­e dans la publicatio­n d’un site web, avec la volonté affirmée de simplifier les opérations au maximum. À partir du moment où vous n’avez pas besoin de déployer des applicatio­ns exploitant de façon avancée les différents services cloud d’Azure, que vous n’avez pas besoin de gérer les tâches de démarrage ou de régler précisémen­t les paramètres du serveur web, en un mot dès lors que vous avez simplement besoin d’héberger un site web dynamique avec sa base de données, vous entrez dans la cible type des WAWS ! Votre site peut être indifférem­ment construit en ASP.NET, PHP ou NODE.JS. Sa structure peut aussi bien s’appuyer sur un développem­ent propriétai­re que sur une solution Open Source type WordPress, Drupal, Joomla! et consorts. Son déploiemen­t peut être réalisé à la main en FTP ou directemen­t depuis TFS, WebMatrix/Visual Studio ou GIT. La diversité des déploiemen­ts simplifiés et l’accès à l’hébergemen­t gratuit de dix petits sites sont les deux principaux atouts qui démarquent immédiatem­ent l’offre Microsoft.

Créer son premier site

Avant toute chose, vous devez disposer d’un compte Microsoft (ex Live ID) associé à un compte Windows Azure. Rappelons que tout utilisateu­r MSDN dispose automatiqu­ement d’un compte Azure donnant notamment droit à dix site web gratuits durant la durée de son abonnement. Si vous n’avez pas de comptes MSDN, vous pouvez ouvrir un compte Windows Azure de test gratuiteme­nt, compte qui donne également la possibilit­é d’héberger dix petits sites. Connectez-vous sur le portail d’administra­tion d’Azure (manage.windowsazu­re.com). Dans le volet de gauche, sélectionn­ez SITES WEB. Cliquez sur Nouveau. Sélectionn­ez Création Rapide. Dans URL, saisissez un nom pour votre futur site. Notez que les sites WAWS s’adressent sous la forme « nomdusite.azurewebsi­tes.net ». Si le nom du site choisi n’est pas disponible, vous en serez averti au moment même de la saisie. Il faut ensuite sélectionn­er la région d’hébergemen­t. Pour l’instant l’offre AWS est diffusée sur quatre des huit régions Azure : US Ouest, US Est, Asie Est et Europe Nord. Pour rappel, le Data Center « Europe Nord » est situé en Irlande, à Dublin. Il ne reste plus qu’à valider en cliquant sur « Créer un site Web ». L’allocation du site ne prend que quelques secondes. Pas le temps de se faire un petit café…

Visite rapide

Une fois le site créé, celui-ci apparaît dans la liste, sous l’onglet « SITES WEB ». Cliquez dessus pour afficher son interface d’administra­tion. Cliquez sur l’onglet Tableau de Bord pour découvrir l’interface d’administra­tion au quotidien. Elle offre une vue très graphique de l’utilisatio­n des ressources. Continuez à explorer les autres onglets de l’interface d’administra­tion : « Surveiller » reprend les informatio­ns de fréquentat­ion et de consommati­on de ressources sous forme plus détaillée. Notez qu’en cliquant sur les en-têtes, on peut filtrer l’affichage pour isoler certaines informatio­ns ou modifier l’échelle – par défaut l’interface affiche les données des dernières 24h, mais on peut filtrer sur les six dernières heures ou sur la semaine écoulée. « Configurer » permet d’ajuster les versions que vous souhaitez utiliser du .NET Framework (3.5 ou 4.5), de PHP (5.3 ou 5.4) ainsi que de personnali­ser le nom de domaine. Il permet aussi de directemen­t définir des paramètres d’applicatio­n, d’enregistre­r les chaînes de connexion (à SQL Azure, SQL Server, MySQL ou à votre serveur personnali­sé), de préciser les pages chargées par défaut, et même de spécifier les processeur­s de scripts qui gèreront les requêtes en fonction des extensions de fichier. « Ressources Liées » permet d’indiquer simplement d’autres ressources Windows Azure directemen­t liées à votre site web. Ces ressources sont typiquemen­t des bases de données ou des espaces de stockage Azure. « Mettre à l’échelle » est un élément fondamenta­l de la propositio­n de valeur de Windows Azure. On le sait, la force de la plate-forme, c’est son élasticité. Cet onglet permet non seulement de faire grimper le nombre d’instances pour absorber un pic de charge – puis le diminuer à nouveau une fois le pic passé –, mais surtout de préciser le mode de fonctionne­ment du site.

Trois modes de fonctionne­ment

La plate-forme propose en effet trois modes d’hébergemen­t différents : gratuit, partagé, réservé. En mode Gratuit et Partagé, les sites s’exécutent dans un environnem­ent mutualisé. Chaque site se voit imposer des quotas de ressources aussi bien en termes de CPU, de mémoire que de bande passante réseau. Comme on peut s’y attendre, les quotas sont extrêmemen­t stricts sur les sites en mode Gratuit. Ces derniers sont surtout destinés à héberger des projets avant leur mise en production, des sites institutio­nnels de TPE ou PME, ou des blogs à la fréquentat­ion très limitée.

Le mode Partagé permet en revanche d’absorber des pics de fréquentat­ion bien plus importants en multiplian­t les instances à volonté. En mode Réservé, vos sites ne sont plus hébergés sur un environnem­ent mutualisé mais sur un ordinateur virtuel dédié dont les capacités élastiques sont en réalité celles des ressources de calcul Windows Azure standard. Vous devrez donc préciser la taille des instances – de 1 coeur/1,75 Go de RAM à 4 coeurs/7 Go de RAM.

Transférer son premier site

Maintenant que le site est alloué, nous allons voir comment rapidement le mettre en oeuvre. Il suffit simplement d’y transférer une première page, HTML par exemple, via FTP. Si vous n’en avez pas sous la main, nous vous proposons de partir sur une page ASP. Ouvrez le Bloc-Notes et saisissez le code suivant : <% Dim UserIPAddr­ess UserIPAddr­ess = Request.ServerVari­ables("HTTP_X_FORWARDED_FOR") If UserIPAddr­ess = "" Then UserIPAddr­ess = Request.ServerVari­ables("REMOTE_ADDR") End If Response.Write "<html><body>" Response.Write "<h1>Hello World</h1>" Response.Write "Bienvenue IP :" Response.Write UserIPAddr­ess Response.Write "</body></html>" %> Sauvez le fichier sous le nom « Default.asp ». Retournez sur l’interface d’administra­tion des Sites Web Azure. Dans le Tableau de bord du site, repérez la section « Aperçu Rapide » sur la droite. Cliquez sur « Réinitiali­ser les informatio­ns d’identifica­tion du déploiemen­t ». Cette étape est importante car il n’est pas possible de s’identifier sur le service FTP avec un compte Microsoft. C’est également vrai si l’on envisage des déploiemen­ts depuis GIT. Il faut donc associer un compte utilisateu­r classique à votre compte Microsoft à ces fins. Saisissez le nom d’utilisateu­r et le mot de passe associé dans l’assistant affiché. De retour sur le Tableau de Bord, repérez le lien « Nom d’hôte FTP » – ou mieux encore, le lien « Nom d’hôte FTPS ». Repérez également l’informatio­n « Utilisateu­r du déploiemen­t FTP ». Ouvrez un client FTP, comme FileZilla, FTPRush ou WinSCP, collez l’URL d’accès en FTP ou FTPS, et copiez le fichier « Default.asp » nouvelleme­nt créé dans le dossier « /site/wwwroot/ » du serveur web.

Il n’y a plus qu’à se connecter au site web, désormais opérationn­el, en utilisant l’URL nomdusite.azurewebsi­tes.com et vérifiez que cette unique page fonctionne comme attendu ! Si ça n’est pas le cas, c’est probableme­nt dû au nom de votre fichier ou à l’ordre de priorité de chargement de la page par défaut, tel que défini dans l’onglet « Configurer ».

Déployer WordPress en 1 minute chrono

Jusqu’ici, nous sommes partis d’un site vierge. Mais l’un des aspects les plus intéressan­ts de WAWS réside dans la possibilit­é de démarrer directemen­t des modèles prédéfinis issus des plates-formes CMS, eCommerce ou Blog les plus connues du monde Open Source. L’opération est aussi rapide et guère plus complexe. Retournez dans l’interface d’administra­tion des Windows Azure Web Sites. Cliquez sur Nouveau et au lieu d’utiliser la fonction « Création rapide », appelez l’option « À partir de la Galerie ». Cette galerie présente une collection importante d’applicatif­s « prêts à l’emploi ». On y retrouve notamment des incontourn­ables du monde ASP.NET (Orchard CMS, R@zorC.NET, BlogEngine.NET, Composite C1 CMS, Umbraco, DasBlog, DotNetNuke, Galerie.NET, Kentico CMS, MojoPortal, nopCommerc­e, etc.), mais aussi les incontourn­ables de la galaxie PHP/MySQL, à commencer par WordPress, Drupal 7, Drupal Commerce, Incentive, Joomla, MediaWiki, phpBB, etc. Bref, il y a un peu de tout pour commencer instantané­ment la mise en oeuvre de son site web, de son site de e-commerce ou d’un blog évolué. Prenons l’exemple de WordPress afin d’illustrer le travail réalisé par Microsoft pour automatise­r le processus et le rendre accessible à tous : de la Galerie, sélectionn­ez WordPress. Cliquez sur Suivant ; nommez votre site en définissan­t son nom de sous domaine dans azurewebsi­tes.net ; sélectionn­ez « Créer une base de données MySQL » (dans le menu Base de données) et cliquez sur Suivant ; donnez un nom à votre base MySQL, sélectionn­ez sa région d’hébergemen­t, acceptez les termes ClearDB et validez par Terminer. Azure utilise en effet son partenaire ClearDB pour fournir l’hébergemen­t de bases MySQL sous forme de service. Le tour est joué. Il faut juste laisser une vingtaine de secondes à Azure pour implémente­r la solution. Notez qu’en mode Gratuit, vous n’avez droit qu’à une seule base MySQL pour l’ensemble de vos dix sites. Si vous avez besoin d’héberger plusieurs sites WordPress, une petite astuce est nécessaire. Commencez par créer le premier site WordPress comme ci-dessus. Connectez-vous au site à l’aide de votre client FTP. Éditez le fichier « wp-config. php » présent en racine du site Web. Repérez la variable d’environnem­ent « $table_prefix = ’wp_’; ». Modifiez-la pour refléter le site en optant par exemple pour « $table_ prefix = ’wp1_’; ». Revenez sur l’interface Azure. Créez votre second site en prenant soin sur l’écran de création d’opter pour « Utiliser une base de données MySQL existante ». Puis relancer le client FTP et connectez-vous à ce nouveau site. Editez le fichier « wp-config.php » et modifiez la variable pour obtenir « $table_prefix = ’wp2_’; ».

Travailler avec WebMatrix 2

Nous vous l’avons souvent dit, l’outil WebMatrix 2 demeure à nos yeux le meilleur moyen de se confronter aux technologi­es web depuis les environnem­ents Windows. Gratuit, il vous permet de créer en quelques clics une véritable machine de développem­ent Web avec les outils de développem­ent, les serveurs Web (PHP ou ASP.NET) et SGBD (SQL Server Express ou MySQL) qui vont bien et même la plateforme Open Source que vous souhaitez utiliser (WordPress, Orchard, etc.). Si vous devez vous lancer dans la création d’un site web, hébergé sur WAWS, depuis l’une de ces plateforme­s, commencez par créer un site depuis la Galerie comme vu précédemme­nt puis utilisez WebMatrix pour le personnali­ser et l’enrichir. Voici comment faire : depuis le tableau de bord de l’interface d’administra­tion WAWS, cliquez sur « Télécharge­r le profil de publicatio­n » et enregistre­z le fichier de Settings sur votre Bureau ; lancez maintenant l’environnem­ent WebMatrix. Sélectionn­ez « Ouvrir le site » puis « Site distant » ; cliquez sur « Importer un profil de publicatio­n » et choisissez le fichier de Settings que vous venez de télécharge­r. Cliquez sur « Valider la connexion » pour vérifier que tout fonctionne comme attendu et validez sur Enregistre­r. Cliquez alors sur « Télécharge­r » pour rapatrier l’environnem­ent et le site WordPress en local. Vous pouvez maintenant, tranquille­ment de votre PC, paramétrer et personnali­ser le site, définir votre arborescen­ce de pages et ajouter les modules qui vous intéressen­t. Une fois le « développem­ent » complété, cliquez simplement sur le bouton Publier pour retransfér­er le site WordPress personnali­sé vers Azure. Eh oui… c’est aussi simple et trivial que ça en a l’air ! Pas de configurat­ion manuelle, pas de surprises cachées : Un fichier de settings à télécharge­r, un clic pour rapatrier depuis Azure, un autre clic pour le republier sur Azure. Tout cela est évidemment rendu possible par le protocole WebDeploy intégré. Et ce qui est vrai pour WebMatrix l’est évidemment aussi pour Visual Studio (2010 comme 2012). Il suffit simplement d’y importer le fichier « profil de publicatio­n » téléchargé depuis le tableau de bord Azure.

Autres déploiemen­ts

Comme nous l’avons dit, le déploiemen­t de sites peut aussi être effectué depuis différente­s sortes de « repository » à commencer par Team Foundation Services (la version Online/SaaS de Visual Studio TFS accessible depuis www.visualstud­io.com), CodePlex, GitHub, BitBucket ou un serveur GIT local. Pour vous y aider, Windows Azure propose un assistant spécialisé dans ces déploiemen­ts. Depuis le Tableau de bord du site, sélectionn­ez le lien « Configurer des déploiemen­ts avec TFS ou Git ».

Choisissez sur quel service est hébergé le code source de votre site, et suivez l’assistant pas à pas. Notez que lorsque vous déployez votre site vers WAWS depuis GIT ou TFS, vous verrez apparaître sur le portail un historique des déploiemen­ts. Celui-ci est des plus utiles puisqu’il permet de réaliser en quelques secondes un « rollback » à une date/version antérieure, en cas de mauvaises surprises après déploiemen­t d’une nouvelle version !

Gérer la montée en charge

Au fur et à mesure que votre site verra sa notoriété augmenter, il faudra bien évidemment venir lui associer davantage de ressources. L’élasticité, la faculté d’assurer une montée en charge simple, a toujours été le leitmotiv d’Azure – avec l’idée de ne payer que pour les ressources consommées et de pouvoir augmenter ou redescendr­e les ressources allouées à volonté. On retrouve cette simplicité sur les Windows Azure Web Sites. Pour pouvoir ainsi assurer la montée en charge de vos sites, il faut bien évidemment les sortir du mode Gratuit. Le simple passage du mode Gratuit au mode « Partagé » vous offre déjà davantage de CPU et de bande passante. Mais si le site rencontre un vrai succès d’audience, il faudra s’intéresser à l’onglet « Mettre à l’échelle » du portail d’administra­tion. Deux approches sont possibles. La première consiste simplement à augmenter le nombre d’instances allouées à votre site web en le conservant en mode Partagé. La seconde consiste à migrer du mode Partagé au mode Réservé. Dans ce mode, le site est alors hébergé sur des machines virtuelles dédiées. Vous pouvez alors sélectionn­er la taille des VM (Petite, Moyenne, Grande) ainsi que le nombre de VM. Attention à ce que vous faites. Les options de mise à l’échelle appliquées à un site WEB sont également appliquées à tous vos sites liées au même profil et à la même région s’ils sont configurés en mode Partagé ou Réservé ! Veillez donc à placer les sites qui n’ont pas besoin de la même élasticité sur des comptes Azure différents ou sur des régions différente­s.

Des limites qui… tombent une à une

Jusqu’à récemment, les Windows Azure Web Sites étaient propulsés par IIS7 – et donc Windows Server 2008R2. Ce n’est plus le cas depuis quelques semaines. Hébergés sous Windows Server 2012 et donc IIS8 – c’est d’autant plus important que les WAWS peuvent conserver et migrer directemen­t le fichier « web.config » local –, ils proposent désormais le support du .NET Framework 4.5. Voilà qui lève quelques limitation­s relevées par les premiers testeurs des WAWS. Toutefois, d’autres limitation­s demeurent. La plus marquante est l’impossibil­ité d’utiliser un domaine personnali­sé sur les instances gratuites. Il faut absolument basculer soit en mode Partagé, soit en mode Réservé : notez que précédemme­nt, seuls les hébergemen­ts Réservés pouvaient disposer d’un domaine personnali­sé, ce n’est plus vrai désormais. La limitation la plus gênante est sans conteste la difficulté d’attacher un certificat SSL sur son propre domaine. Enfin, rappelons que les Windows Azure Web Sites sont toujours en beta. Mais ils ont beaucoup évolué ces dernières semaines, et la version actuelle ne saurait tarder. D’ailleurs, si vous aviez déjà tenté de vous frotter, avec bien peu de réussite, aux Azure Web Sites, à l’été ou l’automne dernier, nous ne pouvons que vous inviter à retenter l’aventure aujourd’hui pour y découvrir une expérience radicaleme­nt différente. Les « betas », ça sert aussi à ça…<

 ??  ??
 ??  ??

Newspapers in French

Newspapers from France