Activer le mode avec état pour les connecteurs intégrés sans état dans Azure Logic Apps
S’applique à : Azure Logic Apps (Standard)
Dans les flux de travail d’application logique Standard, les connecteurs intégrés et basés sur un fournisseur de services suivants sont sans état, par défaut :
- Azure Service Bus
- SAP
- IBM MQ
Pour exécuter ces opérations de connecteur en mode avec état, vous devez activer cette fonctionnalité. Ce guide pratique montre comment activer le mode avec état pour ces connecteurs.
Prérequis
Un compte et un abonnement Azure. Si vous n’avez pas encore d’abonnement, vous pouvez vous inscrire pour obtenir un compte Azure gratuitement.
Ressource d’application logique standard dans laquelle vous envisagez de créer le flux de travail qui utilise les opérations de connecteur avec mode avec état. Si vous n’avez pas cette ressource, créez votre ressource d’application logique Standard maintenant.
Un réseau virtuel Azure avec un sous-réseau à intégrer à votre application logique. Si vous n’avez pas ces éléments, consultez la documentation suivante :
Activer le mode avec état dans le portail Azure
Remarque
Si vous utilisez des groupes de sécurité réseau dans votre réseau virtuel, le mode avec état nécessite d’ouvrir les ports 20 000 à 30 000.
Dans le portail Azure, ouvrez la ressource d’application logique Standard dans laquelle vous souhaitez activer le mode avec état pour ces opérations de connecteur.
Pour activer l’intégration de réseau virtuel pour votre application logique et ajouter votre application logique au sous-réseau créé précédemment, procédez comme suit :
Dans la ressource de l’application Logic, sous Paramètres, sélectionnez Mise en réseau.
Dans la section Configuration du trafic sortant, à côté d’Intégration du réseau virtuel, sélectionnez Non configuré>Ajouter une intégration de réseau virtuel.
Dans le volet Ajouter une intégration de réseau virtuel qui s’ouvre, sélectionnez votre abonnement Azure et votre réseau virtuel.
Dans la liste Sous-réseau, sélectionnez le sous-réseau dans lequel vous souhaitez ajouter votre application logique.
Lorsque vous avez terminé, sélectionnez Se connecter et revenez à la page Mise en réseau.
La propriété d’intégration de réseau virtuel est désormais définie sur le réseau virtuel et le sous-réseau sélectionnés, par exemple :
Pour obtenir des informations générales sur l’activation de l’intégration de réseau virtuel à votre application, consultez Activer l’intégration de réseau virtuel dans Azure App Service.
Ensuite, mettez à jour la configuration du site web sous-jacent de votre application logique (<logic-app-name>.azurewebsites.net) à l’aide de l’un des outils suivants :
Mettre à jour la configuration du site web pour l’application logique
Après avoir activé l’intégration de réseau virtuel pour votre application logique, vous devez mettre à jour la configuration du site web sous-jacent de votre application logique (<logic-app-name>.azurewebsites.net) en utilisant l’une des méthodes suivantes :
- Portail Azure (jeton du porteur non requis)
- API Gestion des ressources Azure (jeton du porteur requis)
- Azure PowerShell (jeton du porteur non requis)
Portail Azure
Pour configurer des ports privés de réseau virtuel à l’aide du portail Azure, procédez comme suit :
- Dans le portail Azure, recherchez et ouvrez votre ressource Application logique.
- Dans le menu de l’application logique, sous Paramètres, sélectionnez Configuration.
- Dans la page Configuration, sélectionnez l’onglet Paramètres généraux.
- Sous Paramètres de la plateforme, dans la zone Ports privés de réseau virtuel, entrez les ports que vous souhaitez utiliser.
API de gestion des ressources Azure
Pour effectuer cette tâche avec l’API Gestion des ressources Azure - Mettre à jour par ID, passez en revue les exigences, la syntaxe et les valeurs de paramètre suivantes.
Spécifications
L’autorisation OAuth et le jeton du porteur sont requis. Pour obtenir le jeton du porteur, procédez comme suit
Pendant que vous êtes connecté au portail Azure, ouvrez les outils de développement de votre navigateur web (F12).
Obtenez le jeton en envoyant une demande de gestion, par exemple, en enregistrant un flux de travail dans votre application logique Standard.
Syntaxe
Met à jour une ressource à l’aide de l’ID de ressource spécifié :
PATCH https://management.azure.com/{resourceId}?api-version=2021-04-01
Valeurs de paramètres
Élément | Valeur |
---|---|
Méthode de requête HTTP | PATCH |
<resourceId> | subscriptions/{yourSubscriptionID}/resourcegroups/{yourResourceGroup}/providers/Microsoft.Web/sites/{websiteName}/config/web |
<yourSubscriptionId> | ID de votre abonnement Azure |
<yourResourceGroup> | Groupe de ressources qui contient votre ressource d’application logique |
<websiteName> | Nom de votre ressource d’application logique, qui est mystandardlogicapp dans cet exemple |
Corps de requête HTTP | {"properties": {"vnetPrivatePortsCount": "2"}} |
Exemple
https://management.azure.com/subscriptions/XXxXxxXX-xXXx-XxxX-xXXX-XXXXxXxXxxXX/resourcegroups/My-Standard-RG/providers/Microsoft.Web/sites/mystandardlogicapp/config/web?api-version=2021-02-01
Azure PowerShell
Pour effectuer cette tâche avec Azure PowerShell, passez en revue les exigences, la syntaxe et les valeurs suivantes. Cette méthode ne nécessite pas que vous obteniez manuellement le jeton du porteur.
Syntaxe
Set-AzContext -Subscription {yourSubscriptionID}
$webConfig = Get-AzResource -ResourceId {resourceId}
$webConfig.Properties.vnetPrivatePortsCount = 2
$webConfig | Set-AzResource -ResourceId {resourceId}
Pour plus d’informations, consultez la documentation suivante :
Valeurs de paramètres
Élément | Valeur |
---|---|
<yourSubscriptionID> | ID de votre abonnement Azure |
<resourceId> | subscriptions/{yourSubscriptionID}/resourcegroups/{yourResourceGroup}/providers/Microsoft.Web/sites/{websiteName}/config/web |
<yourResourceGroup> | Groupe de ressources qui contient votre ressource d’application logique |
<websiteName> | Nom de votre ressource d’application logique, qui est mystandardlogicapp dans cet exemple |
Exemple
https://management.azure.com/subscriptions/XXxXxxXX-xXXx-XxxX-xXXX-XXXXxXxXxxXX/resourcegroups/My-Standard-RG/providers/Microsoft.Web/sites/mystandardlogicapp/config/web?api-version=2021-02-01
Résolution des erreurs
Erreur : le nombre d’instances réservées n’est pas valide
Si vous obtenez une erreur indiquant que le nombre d’instances réservées n’est pas valide, utilisez la solution de contournement suivante :
$webConfig.Properties.preWarmedInstanceCount = $webConfig.Properties.reservedInstanceCount
$webConfig.Properties.reservedInstanceCount = $null
$webConfig | Set-AzResource -ResourceId {resourceId}
Exemple d’erreur :
Set-AzResource :
{
"Code":"BadRequest",
"Message":"siteConfig.ReservedInstanceCount is invalid. Please use the new property siteConfig.PreWarmedInstanceCount.",
"Target": null,
"Details":
[
{
"Message":"siteConfig.ReservedInstanceCount is invalid. Please use the new property siteConfig.PreWarmedInstanceCount."
},
{
"Code":"BadRequest"
},
{
"ErrorEntity":
{
"ExtendedCode":"51021",
"MessageTemplate":"{0} is invalid. {1}",
"Parameters":
[
"siteConfig.ReservedInstanceCount", "Please use the new property siteConfig.PreWarmedInstanceCount."
],
"Code":"BadRequest",
"Message":"siteConfig.ReservedInstanceCount is invalid. Please use the new property siteConfig.PreWarmedInstanceCount."
}
}
],
"Innererror": null
}
Empêcher la perte de contexte pendant les événements de mise à l’échelle des ressources
Les événements de mise à l’échelle des ressources peuvent entraîner la perte de contexte pour les connecteurs intégrés avec le mode avec état activé. Pour éviter cette perte potentielle avant que de tels événements ne puissent se produire, corrigez le nombre d’instances disponibles pour votre ressource d’application logique. De cette façon, aucun événement de mise à l’échelle ne peut se produire à cause de cette perte de contexte potentielle.
Dans le menu de la ressource votre application logique, sous Paramètres, sélectionnez Effectuer un scale-out.
Dans la page Scale out, dans la section Scale out de l’application, procédez comme suit :
Définissez la limite de Scale Out appliquée sur Oui, ce qui indique la limite maximale de Scale-out.
Définissez les instances Always Ready sur le même nombre que la limite maximale de Scale Out et le nombre maximal de rafales, qui s’affichent dans la section Plan Scale out, par exemple :
Lorsque vous avez terminé, dans la barre d’outils Scale out, sélectionnez Enregistrer.