Abilitare la modalità con stato per i connettori predefiniti senza stato in App per la logica di Azure
Si applica a: App per la logica di Azure (standard)
Nei flussi di lavoro dell'app per la logica Standard, i connettori predefiniti del provider di servizi seguenti sono senza stato, per impostazione predefinita:
- Bus di servizio di Azure
- SAP
- IBM MQ
Per eseguire queste operazioni del connettore in modalità con stato, è necessario abilitare questa funzionalità. Questa guida pratica illustra come abilitare la modalità con stato per questi connettori.
Prerequisiti
Account e sottoscrizione di Azure. Se non si ha una sottoscrizione, è possibile iscriversi per creare un account Azure gratuito.
Risorsa dell'app per la logica Standard in cui si prevede di creare il flusso di lavoro che usa le operazioni del connettore abilitate per la modalità con stato. Se questa risorsa non è disponibile, creare ora la risorsa dell'app per la logica Standard.
Una rete virtuale di Azure con una subnet da integrare con l'app per la logica. Se questi elementi non sono disponibili, vedere la documentazione seguente:
Abilitare la modalità con stato nel portale di Azure
Nella portale di Azure aprire la risorsa dell'app per la logica Standard in cui si vuole abilitare la modalità con stato per queste operazioni del connettore.
Abilitare l'integrazione della rete virtuale per l'app per la logica e aggiungere l'app per la logica alla subnet creata in precedenza:
Nella risorsa del menu dell'app per la logica, in Impostazioni selezionare Rete.
Nella sezione Traffico in uscita selezionare Integrazione rete virtuale>Aggiungi rete virtuale.
Nel riquadro Aggiungi integrazione rete virtuale visualizzata selezionare la sottoscrizione di Azure e la rete virtuale.
In Subnet selezionare Seleziona esistente. Nell'elenco Subnet selezionare la subnet in cui si vuole aggiungere l'app per la logica.
Al termine, seleziona OK.
Nella pagina Rete l'opzione integrazione rete virtuale viene ora visualizzata su Sì, ad esempio:
Per informazioni generali sull'abilitazione dell'integrazione della rete virtuale con l'app, vedere Abilitare l'integrazione della rete virtuale nel servizio app Azure.
Aggiornare quindi la configurazione del sito Web sottostante dell'app per la logica (<logic-app-name.azurewebsites.net>) usando uno degli strumenti seguenti:
Aggiornare la configurazione del sito Web per l'app per la logica
Dopo aver abilitato l'integrazione della rete virtuale per l'app per la logica, è necessario aggiornare la configurazione del sito Web sottostante dell'app per la logica (<logic-app-name.azurewebsites.net>) usando uno dei metodi seguenti:
- portale di Azure (token di connessione non necessario)
- API di Gestione risorse di Azure (token di connessione obbligatorio)
- Azure PowerShell (token di connessione non obbligatorio)
Azure portal
Per configurare le porte private della rete virtuale usando il portale di Azure, seguire questa procedura:
- Nella portale di Azure trovare e aprire la risorsa dell'app per la logica Standard.
- Nel menu dell'app per la logica, in Impostazioni, selezionare Configurazione.
- Nella pagina Configurazione selezionare Impostazioni generali.
- Nella casella Porte private della rete virtuale in Impostazioni piattaforma immettere le porte da usare.
API di Gestione risorse di Azure
Per completare questa attività con l'API di Gestione risorse di Azure - Aggiornamento per ID, esaminare i requisiti, la sintassi e i valori dei parametri seguenti.
Requisiti
Sono necessarie l'autorizzazione OAuth e il token di connessione. Per ottenere il token di connessione, seguire questa procedura
Durante l'accesso al portale di Azure, aprire gli strumenti di sviluppo del Web browser (F12).
Ottenere il token inviando qualsiasi richiesta di gestione, ad esempio salvando un flusso di lavoro nell'app per la logica Standard.
Sintassi
Aggiornamenti una risorsa usando l'ID risorsa specificato:
PATCH https://management.azure.com/{resourceId}?api-version=2021-04-01
Valori parametro
Elemento | Valore | Descrizione |
---|---|---|
Metodo di richiesta HTTP | PATCH | |
<resourceId> | subscriptions/{yourSubscriptionID}/resourcegroups/{yourResourceGroup}/providers/Microsoft.Web/sites/{websiteName}/config/web | |
<yourSubscriptionId> | ID per la sottoscrizione di Azure | |
<yourResourceGroup> | Gruppo di risorse che contiene la risorsa dell'app per la logica | |
<Websitename> | Nome della risorsa dell'app per la logica, mystandardlogicapp in questo esempio | |
Corpo della richiesta HTTP | {"properties": {"vnetPrivatePortsCount": "2"}} |
Esempio
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
Per completare questa attività con Azure PowerShell, esaminare i requisiti, la sintassi e i valori seguenti. Questo metodo non richiede che si ottenga manualmente il token di connessione.
Sintassi
Set-AzContext -Subscription {yourSubscriptionID}
$webConfig = Get-AzResource -ResourceId {resourceId}
$webConfig.Properties.vnetPrivatePortsCount = 2
$webConfig | Set-AzResource -ResourceId {resourceId}
Per altre informazioni, consultare la documentazione seguente:
Valori parametro
Elemento | Valore |
---|---|
<yourSubscriptionID> | ID per la sottoscrizione di Azure |
<resourceId> | subscriptions/{yourSubscriptionID}/resourcegroups/{yourResourceGroup}/providers/Microsoft.Web/sites/{websiteName}/config/web |
<yourResourceGroup> | Gruppo di risorse che contiene la risorsa dell'app per la logica |
<Websitename> | Nome della risorsa dell'app per la logica, mystandardlogicapp in questo esempio |
Esempio
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
Risolvere gli errori
Errore: Il numero di istanze riservate non è valido
Se viene visualizzato un errore che indica che il numero di istanze riservate non è valido, usare la soluzione alternativa seguente:
$webConfig.Properties.preWarmedInstanceCount = $webConfig.Properties.reservedInstanceCount
$webConfig.Properties.reservedInstanceCount = $null
$webConfig | Set-AzResource -ResourceId {resourceId}
Esempio di errore:
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
}
Evitare la perdita di contesto durante gli eventi di scalabilità delle risorse
Gli eventi di scalabilità delle risorse possono causare la perdita di contesto per i connettori predefiniti con modalità con stato abilitato. Per evitare questa potenziale perdita prima che questi eventi possano verificarsi, correggere il numero di istanze disponibili per la risorsa dell'app per la logica. In questo modo, non possono verificarsi eventi di scalabilità orizzontale per causare questa potenziale perdita di contesto.
Nel menu delle risorse dell'app per la logica, in Impostazioni selezionare Scale out.
In Scalabilità orizzontale app impostare Imponi limite di scalabilità orizzontale su Sì, che mostra il limite massimo di scalabilità orizzontale.
Nella pagina Scalabilità orizzontale, in Scalabilità orizzontale delle app, impostare il numero per Le istanze Always Ready sullo stesso numero del limite massimo di scalabilità orizzontale e del burst massimo, visualizzato in Piano di scalabilità orizzontale, ad esempio:
Al termine, sulla barra degli strumenti Scale out selezionare Salva.