Voir le flux RSS

Blog de Hinault Romaric (.NET Core, ASP.NET Core, Azure, DevOps)

[Actualité] Azure Web Apps : test en production avec les slots de déploiement

Note : 2 votes pour une moyenne de 5,00.
par , 25/10/2016 à 12h06 (1272 Affichages)
Le service Azure Web Apps dispose d’une fonctionnalité assez intéressante pour les déploiements et les tests en production : les emplacements de déploiement (deployment slot).

Nom : ms-azure.png
Affichages : 1368
Taille : 7,7 Ko

Lorsque vous créez une web application dans Azure, cette dernière est disponible par défaut à un travers un slot de production. Azure offre, cependant, la possibilité de créer d’autres emplacements de déploiement, qui sont en quelque sorte des “sous-applications web” dans le même “Service Plan” que votre application web principale, avec leur propre URL.

Nom : image1.png
Affichages : 5076
Taille : 217,4 Ko

Lors du déploiement d’une application, le développeur peut donc dans un premier temps cibler un autre emplacement que celui de production, ensuite procéder à un échange (swap) avec l’emplacement de production en un clic, sans aucun temps d’arrêt.

Cette approche offre plusieurs avantages :

  • fin des downtime pour votre site. Avec cette fonctionnalité, vous n’aurez plus besoin d’arrêter votre site pendant le déploiement et afficher une page de maintenance aux utilisateurs. La redirection du trafic est transparente et aucune demande n’est abandonnée.
  • la possibilité de valider les modifications de l’application dans un emplacement avant de procéder au changement avec l’emplacement de production ;
  • la possibilité de rediriger un pourcentage de vos utilisateurs sur un emplacement précis pour valider la réactivité de la nouvelle version de votre site avant de procéder au swap.
  • suite au swap, l’emplacement précédent contient désormais la version qui était en production. Ainsi, en cas de problème en production, vous pouvez rapidement revenir sur la version précédente.


Ajout d’un slot déploiement

Dans le portail Azure, allez sur App Service, sélectionnez votre application, cliquez ensuite sur Deployment slots, puis sur Add Slot.

Nom : image2.png
Affichages : 865
Taille : 34,1 Ko

Vous devez par la suite définir le nom du slot et choisir si vous souhaitez cloner la configuration de votre emplacement à partir d’un autre, ou utiliser celui du slot de production.

Nom : image3.png
Affichages : 865
Taille : 11,8 Ko

Ceci fait, votre nouvel emplacement est disponible et accessible avec comme URL le nom de votre application + le nom du slot. Lors de vos déploiements, vous pouvez dans un premier temps cibler cet emplacement, valider vos modifications “quasiment en production”, ensuite réaliser un swap pour faire passer la nouvelle version dans le slot de production. La version en production se retrouve dans le slot de staging.

Nom : image4.png
Affichages : 870
Taille : 14,8 Ko

Test en production

Les tests en production concernent couramment la montée en charge et les performances, pour évaluer la réactivité de l’application. Ils permettent aussi d’avoir un feedback des utilisateurs. De ce fait, avant de rendre disponible une nouvelle version d’une application Web, il est assez fréquent de rediriger de façon transparente un certain nombre d’utilisateurs vers la nouvelle version afin de roder cette dernière.

Avec les emplacements de déploiements, mettre cela en place devient quasiment “un jeu d’enfant”. Pour le faire, il suffit d’aller sur “Testing in production” dans le portail Azure et définir le pourcentage d’utilisateur que vous souhaitez rediriger vers la nouvelle application.

Nom : image5.png
Affichages : 903
Taille : 18,4 Ko

Dans l’exemple ci-dessus, Azure se chargera de rediriger 30% des utilisateurs de l’application web vers l’emplacement staging. Par ailleurs, dès qu’un utilisateur est redirigé vers la nouvelle version, toutes les fois qu’il accédera à l’application, il sera redirigé vers cette version.

Envoyer le billet « Azure Web Apps : test en production avec les slots de déploiement » dans le blog Viadeo Envoyer le billet « Azure Web Apps : test en production avec les slots de déploiement » dans le blog Twitter Envoyer le billet « Azure Web Apps : test en production avec les slots de déploiement » dans le blog Google Envoyer le billet « Azure Web Apps : test en production avec les slots de déploiement » dans le blog Facebook Envoyer le billet « Azure Web Apps : test en production avec les slots de déploiement » dans le blog Digg Envoyer le billet « Azure Web Apps : test en production avec les slots de déploiement » dans le blog Delicious Envoyer le billet « Azure Web Apps : test en production avec les slots de déploiement » dans le blog MySpace Envoyer le billet « Azure Web Apps : test en production avec les slots de déploiement » dans le blog Yahoo

Commentaires