Stateful modus inschakelen voor stateless ingebouwde connectors in Azure Logic Apps
Van toepassing op: Azure Logic Apps (Standard)
In standaardwerkstromen voor logische apps zijn de volgende ingebouwde connectors op basis van serviceproviders standaard staatloos:
- Azure Service Bus
- SAP
- IBM MQ
Als u deze connectorbewerkingen wilt uitvoeren in de stateful modus, moet u deze mogelijkheid inschakelen. Deze handleiding laat zien hoe u de stateful modus voor deze connectors inschakelt.
Vereisten
Een Azure-account en -abonnement. Als u nog geen abonnement hebt, meld u dan aan voor een gratis Azure-account.
De resource van de logische standaard-app waarin u van plan bent om de werkstroom te maken die gebruikmaakt van de stateful modus-connectorbewerkingen. Als u deze resource niet hebt, maakt u nu de resource voor de logische standaard-app.
Een virtueel Azure-netwerk met een subnet dat kan worden geïntegreerd met uw logische app. Als u deze items niet hebt, raadpleegt u de volgende documentatie:
Stateful modus inschakelen in Azure Portal
Open in Azure Portal de resource van de standaard logische app waarin u de stateful modus wilt inschakelen voor deze connectorbewerkingen.
Voer de volgende stappen uit om integratie van virtuele netwerken voor uw logische app in te schakelen en uw logische app toe te voegen aan het eerder gemaakte subnet:
Selecteer Netwerken in de menuresource van de logische app onder Instellingen.
Selecteer in de sectie Voor uitgaand verkeer, naast integratie van virtueel netwerk, de optie Niet geconfigureerd>Integratie van virtueel netwerk toevoegen.
Selecteer in het deelvenster Integratie van virtueel netwerk toevoegen dat wordt geopend uw Azure-abonnement en uw virtuele netwerk.
Selecteer in de lijst Subnet het subnet waaraan u uw logische app wilt toevoegen.
Wanneer u klaar bent, selecteert u Verbinding maken en gaat u terug naar de pagina Netwerken .
De eigenschap Virtual Network Integration is nu ingesteld op het geselecteerde virtuele netwerk en subnet, bijvoorbeeld:
Zie Integratie van virtuele netwerken inschakelen in Azure-app Service voor algemene informatie over het inschakelen van integratie van virtuele netwerken met uw app.
Werk vervolgens de onderliggende websiteconfiguratie van uw logische app (<logic-app-name.azurewebsites.net>) bij met behulp van een van de volgende hulpprogramma's:
Websiteconfiguratie voor logische app bijwerken
Nadat u integratie van virtuele netwerken voor uw logische app hebt ingeschakeld, moet u de onderliggende websiteconfiguratie van uw logische app (<logic-app-name.azurewebsites.net>) bijwerken met behulp van een van de volgende methoden:
- Azure Portal (bearer-token is niet vereist)
- Azure Resource Management-API (bearer-token vereist)
- Azure PowerShell (bearer-token is niet vereist)
Azure Portal
Voer de volgende stappen uit om privépoorten voor virtuele netwerken te configureren met behulp van Azure Portal:
- Zoek en open uw resource voor de logische standaard-app in Azure Portal.
- Selecteer Configuratie in het menu van de logische app onder Instellingen.
- Selecteer Algemene instellingen op de pagina Configuratie.
- Voer onder Platforminstellingen in het vak Persoonlijke VNet-poorten de poorten in die u wilt gebruiken.
Azure Resource Management-API
Raadpleeg de volgende vereisten, syntaxis en parameterwaarden om deze taak te voltooien met de Azure Resource Management-API : Bijwerken op id.
Vereisten
OAuth-autorisatie en het Bearer-token zijn vereist. Volg deze stappen om het Bearer-token op te halen
Terwijl u bent aangemeld bij Azure Portal, opent u de ontwikkelhulpprogramma's van uw webbrowser (F12).
Haal het token op door bijvoorbeeld een beheeraanvraag te verzenden door een werkstroom op te slaan in uw standaard logische app.
Syntaxis
Werkt een resource bij met behulp van de opgegeven resource-id:
PATCH https://management.azure.com/{resourceId}?api-version=2021-04-01
Parameterwaarden
Element | Weergegeven als |
---|---|
HTTP-aanvraagmethode | LAP |
<resourceId> | subscriptions/{yourSubscriptionID}/resourcegroups/{yourResourceGroup}/providers/Microsoft.Web/sites/{websiteName}/config/web |
<yourSubscriptionId> | De id voor uw Azure-abonnement |
<yourResourceGroup> | De resourcegroep die de resource van uw logische app bevat |
<websiteName> | De naam voor uw logische app-resource. Dit is mystandardlogicapp in dit voorbeeld |
Hoofdtekst van HTTP-aanvraag | {"properties": {"vnetPrivatePortsCount": "2"}} |
Opmerking
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
Als u deze taak wilt voltooien met Azure PowerShell, bekijkt u de volgende vereisten, syntaxis en waarden. Voor deze methode hoeft u het bearer-token niet handmatig op te halen.
Syntaxis
Set-AzContext -Subscription {yourSubscriptionID}
$webConfig = Get-AzResource -ResourceId {resourceId}
$webConfig.Properties.vnetPrivatePortsCount = 2
$webConfig | Set-AzResource -ResourceId {resourceId}
Voor meer informatie raadpleegt u de volgende documentatie:
Parameterwaarden
Element | Weergegeven als |
---|---|
<yourSubscriptionID> | De id voor uw Azure-abonnement |
<resourceId> | subscriptions/{yourSubscriptionID}/resourcegroups/{yourResourceGroup}/providers/Microsoft.Web/sites/{websiteName}/config/web |
<yourResourceGroup> | De resourcegroep die de resource van uw logische app bevat |
<websiteName> | De naam voor uw logische app-resource. Dit is mystandardlogicapp in dit voorbeeld |
Opmerking
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
Problemen oplossen
Fout: het aantal gereserveerde instanties is ongeldig
Als u een foutbericht krijgt met de melding dat het aantal gereserveerde instanties ongeldig is, gebruikt u de volgende tijdelijke oplossing:
$webConfig.Properties.preWarmedInstanceCount = $webConfig.Properties.reservedInstanceCount
$webConfig.Properties.reservedInstanceCount = $null
$webConfig | Set-AzResource -ResourceId {resourceId}
Foutvoorbeeld:
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
}
Contextverlies voorkomen tijdens het inschalen van resources
Resourceschaalgebeurtenissen kunnen leiden tot het verlies van context voor ingebouwde connectors waarvoor de stateful modus is ingeschakeld. Als u dit potentiële verlies wilt voorkomen voordat dergelijke gebeurtenissen kunnen optreden, moet u het aantal exemplaren dat beschikbaar is voor uw logische app-resource oplossen. Op deze manier kunnen er geen inschaalgebeurtenissen optreden om dit potentiële contextverlies te veroorzaken.
Selecteer uitschalen in het resourcemenu van uw logische app onder Instellingen.
Voer op de pagina Uitschalen van apps in de sectie Uitschalen van de app de volgende stappen uit:
Stel Scale Out-limiet afdwingen in op Ja, waarin de maximale limiet voor uitschalen wordt weergegeven.
Stel Always Ready-exemplaren in op hetzelfde aantal als maximale uitschaallimiet en maximale burst, die wordt weergegeven in de sectie Uitschalen plannen , bijvoorbeeld:
Wanneer u klaar bent, selecteert u Opslaan op de werkbalk Uitschalen.