Vous êtes sur le point de tester la dernière version de votre solution. Vous devez seulement modifier une configuration dans le portail Micosoft Azure, et vous y êtes. Pour ce faire, vous ouvrez une session dans le portail à http://portal.azure.com et de naviguer jusqu’à votre composant et... Erreur! Ce que vous voyez est un petit nuage triste.
Le problème
C’est exactement ce qui est arrivé récemment à l’équipe, avec laquelle je travaille. Ils avaient besoin de changer le point de terminaison (EndPoint) du gestionnaire de trafic (Traffic Manager) pour faire un test de charge. Malheureusement, la grille qui contient les points de terminaison n’était pas disponible et retournait un message d’erreur. De premier abord cela ressemble à une impasse!
Mais est-ce vraiment une impasse? Bien sûr que non. Voici ce que vous pouvez faire.
La solution
Rappelez-vous, Microsoft partage le même API utilisé par le portail Azure. C’est la beauté du portail Azure, vous pouvez bénéficié de sa convivialité pour faire ce dont vous avez besoin, ou vous pouvez y accéder via les nombreux SDKs qui sont disponibles aujourd’hui: .Net, Java, Node.js, Php, Python, Ruby et plus encore! Vous avez également des outils de ligne de commande qui permettent de gérer vos services Azure et applications à l’aide de scripts.
Pour en savoir plus sur tous les SDKs disponibles ou les outils en ligne de commande voir la page Azure SDKs de documentation en ligne.
Comme nous étions dans un environnement Windows, et nous avions besoin de modifier un point de terminaison d’un gestionnaire de trafic. Voici ce que nous avons fait, cette fois-ci, en utilisant Azure PowerShell Cmdlets:
# Ouvrir une session avec votre compte
Login-AzureRmAccount
# Déterminer le contexte de la session. Utiliser Get-AzureRmSubscription pour visualiser tous les abonnements.
Set-AzureRmContext -SubscriptionName "MySubscriptionName"
# Lister tous les profils du gestionnaire de trafic
Azure Get-AzureTrafficManagerProfile
# Éditer l'endpoint en le sauvegardant dans une variable, puis le réassigner
$endpoint = Get-AzureRmTrafficManagerEndpoint -Name myendpoint -ProfileName myprofile -ResourceGroupName "MyResourceGroupName" -Type ExternalEndpoints
$endpoint.Weight = 50
Set-AzureRmTrafficManagerEndpoint -TrafficManagerEndpoint $endpoint
Dans le cas présent, nous avons utilisé les cmdlets en mode gestionnaire de ressources Azure (ARM), mais toutes les commandes sont également disponibles dans le mode de service. Pour en savoir plus sur la façon de déployer avec ARM, vous pouvez lire mon récent billet. Pour voir toutes les commandes ARM disponibles pour configurer votre solution, voir la documentation en ligne.