Azure Web App : Deployments Slots et Traffic Manager

Bonjour à tous,

Afin de continuer notre petit tour des fonctionnalités basiques des App Web d’Azure, je vous propose aujourd’hui de vous présenter les deployments slots et le traffic manager. Il s’agit de deux fonctionnalités fournissant à la plateforme Azure de réels atouts sur les concurrents classiques de l’hébergement web. A mon sens, il s’agit d’une façon vraiment nouvelle de concevoir le développement et l’exploitation des sites web.

Les deployments slots (ou emplacements de déploiements en français)

Il s’agit d’une fonctionnalité permettant, pour l’expliquer en quelques mots, de répliquer votre serveur web, plusieurs fois. Le but est double. Tout d’abord, cela vous permet de disposer d’un serveur de développement, pouvant être un clone de votre serveur de production. Il dispose d’une URL propre, vous pouvez y réaliser vos tests, … Jusque là, rien de plus transcendants que d’avoir un second serveur web pour le dev.
Les fonctionnalités plutôt sympa arrivent après :
– Via une fonctionnalité nommée « Routage du traffic », vous pouvez envoyer une partie définie du traffic de votre site sur l’un de ces serveurs secondaire. Cela peut vous être utile sur des sites à fort traffic, sur lesquels vous souhaitez tester « into the wild » vos nouvelles fonctionnalités ; afin de faire de l’analyse de logs/correction, par exemple, avant de généraliser à tout le monde
– La fonctionnalité de swapping vous permet de transformer en trois clics votre serveur principal en serveur secondaire, en le remplaçant par un serveur secondaire. Très utile lorsque vous souhaitez préparer votre mise à jour sur un serveur secondaire, et le transformer en principale dès que vous êtes prêt.

Comment fait-on ? Comme souvent avec Azure, c’est assez simple (… … … ça dépend de ce que vous essayez de faire).
Créez un site web, sur un plan Standard ou Premium. Dès que celui-ci est créé, rendez-vous dans les paramètres, et cliquez sur Emplacements de déploiement. Cliquez sur « Ajouter un emplacement ».

Capture d’écran 2015-05-06 à 19.03.25

On vous demande alors de choisir un nom pour votre emplacement de déploiement, et également si vous souhaitez créer votre site à partir d’un site existant.

Capture d’écran 2015-05-06 à 19.06.37

Vous pouvez alors cliquez sur créer pour valider votre saisie, et au bout de quelques secondes, vous constaterez l’ajout d’un emplacement de déploiement dans la liste.

En cliquant sur l’un d’eux, vous verrez qu’un environnement de déploiement dans Azure se présente comme une Web App normale, avec sa propre URL…

Capture d’écran 2015-05-06 à 19.08.58

Vous pouvez donc les utiliser avec Visual Studio, comme environnements de développements… Première fonctionnalité sympa.

Vous noterez que j’ai également créé un environnement de préprod. Le but est de tester mon dev en préprod avant de le basculer complètement en production. Pour réaliser ces tests en préprod, je vais envoyer 20% du traffic de mon site sur mon application de préprod.
Dans les réglages de l’appli web principale, cliquez sur « Réglages », puis « Routage du traffic ». Dans cette nouvelle fenêtre, vous pouvez sélectionner le pourcentage de traffic que vous souhaitez envoyer vers le serveur web de préprod. Grâce aux outils InSight, que vous n’avez pas manqué d’ajouter à votre site, vous allez pouvoir monitorer la réaction de vos nouveaux dev lorsqu’il est confronté à vos visiteurs.

Capture d’écran 2015-05-06 à 19.14.21

Notez que vous n’êtes pas limités à un seul routage, et que vous pouvez décider de répartir le traffic sur différentes appli. Attention, il ne s’agit pas réellement de redondance en cas de crash : tous vos sites sont au même endroit, dans le même datacenter. Nous reviendrons après sur la redondance géographique, avec le traffic manager.

La seconde fonctionnalité est encore plus puissante, et encore plus simple à utiliser. Elle vous permet de swaper votre app principale avec une app secondaire. Vous allez voir, c’est très technique à réaliser. Il s’agit… de faire un clic sur le bouton « Echanger », de sélectionner la destination dans la fenêtre qui s’ouvre, de valider, et hop ! C’est fait !

Capture d’écran 2015-05-06 à 19.24.07

Le traffic manager

Seconde fonctionnalité cool, qui n’est pas encore disponible sur le nouveau portail Azure. Donc, back to the 90’s, et l’ancien portail Azure. Il s’agit, pour l’expliquer rapidement, de profiter de la dizaine de data centers de Microsoft « arround the world ». Vous pouvez créer une Azure Web App dans chaque région disponible, y publier les sources de votre site (je vous conseille l’utilisation de GIT ou de TFS pour faciliter les choses) et de répartir le traffic sur tous ces sites, à partir d’une seule adresse. Les buts recherchés sont divers : améliorer les temps d’accès via la réduction de la distance entre l’utilisateur et le serveur, répartir le traffic de son application ou encore assurer la redondance en cas de destruction atomique du serveur sur lequel est hébergé votre Web App (et de sa réplique, dans le même data center).

Cette méthode fonctionne via la résolution de DNS. Je vous en propose ici un petit aperçu, car le sujet est vaste, et que nous sommes dans une démarche de description de ce qui existe dans Azure pour les Web App.

Sur l’ancien portail donc, vous pouvez ajouter un traffic manager, grâce au bouton + > traffic manager > création rapide…

Capture d’écran 2015-05-06 à 18.27.05

Comme le système est en fait un serveur DNS « amélioré », vous saisissez le préfixe que vous rentrerez dans les réglages du nom de domaine de votre registrant.

On voit également la possibilité de sélectionner trois type de management de votre traffic. Soit « Performances », c’est à dire que le service va envoyer vos utilisateurs vers le data center le plus proche, « tourniquet » (c’est une façon mignonne de désigner le round robin) pour une répartition égale entre les data center et basculement, pour décider de basculer l’intégralité du traffic d’une Web App vers une autre.

Pour notre démo, j’ai créé une seconde appli web dans un data center aux US, j’ai sélectionné « Performances ». Et HOP ! On sélectionne ses Azure Web App réparties all over the world.

Capture d’écran 2015-05-06 à 18.37.35

Comme je l’indiquais plus haut, pour la suite du paramétrage de vos DNS, cela dépend de différents scénaris ; vous pouvez consulter la procédure officielle ou encore ce billet de blog très bien réalisé.

Voilà ! Encore deux petites fonctionnalités d’Azure Web App. Je poste également sur le blog du yOS Tour, plutôt orienté Office 365, mais n’hésitez pas à y faire un tour.

A bientôt !

Publicités