Affidabilità in App per la logica di Azure
Questo articolo descrive il supporto dell'affidabilità in App per la logica di Azure, che copre la resilienza all'interno dell'area tramite zone di disponibilità e distribuzioni in più aree.
La resilienza è una responsabilità condivisa tra l'utente e Microsoft, quindi questo articolo illustra anche i modi per creare una soluzione resiliente che soddisfi le proprie esigenze.
I flussi di lavoro delle app per la logica consentono di integrare e orchestrare più facilmente i dati tra app, servizi cloud e sistemi locali riducendo la quantità di codice da scrivere. Quando si pianifica la resilienza, assicurarsi di considerare non solo le app per la logica, ma anche queste risorse di Azure usate con le app per la logica:
Connessioni create dai flussi di lavoro delle app per la logica ad altre app, servizi e sistemi. Per altre informazioni, vedere Connessioni alle risorse più avanti in questo argomento.
Gateway dati locali, ovvero risorse di Azure create e usate nelle app per la logica per accedere ai dati nei sistemi locali. Ogni risorsa gateway rappresenta un'installazione separata del gateway dati in un computer locale. È possibile configurare un gateway dati locale per la disponibilità elevata usando più computer. Per altre informazioni, vedere Supporto per la disponibilità elevata.
Account di integrazione in cui si definiscono e archiviano gli artefatti usati dai flussi di lavoro delle app per la logica per scenari di integrazione aziendale (B2B). Ad esempio, è possibile configurare il ripristino di emergenza tra aree per gli account di integrazione.
Il multi-tenant App per la logica di Azure gestisce automaticamente l'infrastruttura di calcolo e le risorse per i flussi di lavoro a consumo. Non è necessario configurare o gestire macchine virtuali. I flussi di lavoro a consumo condividono l'infrastruttura di calcolo tra molti clienti.
I App per la logica di Azure a tenant singolo eseguono flussi di lavoro Standard in risorse di calcolo dedicate, dedicate all'utente e denominate piani. Ogni piano può avere più istanze e queste istanze possono essere distribuite facoltativamente in più zone di disponibilità. I flussi di lavoro vengono eseguiti nelle istanze del piano.
Raccomandazioni per la distribuzione di produzione
Per i flussi di lavoro aziendali e sicuri con requisiti di isolamento o di sicurezza di rete, è consigliabile creare ed eseguire flussi di lavoro Standard in App per la logica di Azure a tenant singolo, anziché i flussi di lavoro a consumo in App per la logica di Azure multi-tenant. Per altre informazioni, vedere Creare e distribuire in ambienti diversi.
Per le distribuzioni di produzione con App per la logica di Azure a tenant singolo, è necessario abilitare la ridondanza della zona per distribuire le risorse dell'app per la logica in più zone di disponibilità.
Errori temporanei
Gli errori temporanei sono errori brevi e intermittenti nei componenti. Si verificano spesso in un ambiente distribuito come il cloud e fanno parte delle normali operazioni. Si correggono dopo un breve periodo di tempo. È importante che le applicazioni gestisca gli errori temporanei, in genere ritentando le richieste interessate.
Tutte le applicazioni ospitate nel cloud devono seguire le linee guida per la gestione degli errori temporanei di Azure durante la comunicazione con qualsiasi API, database e altri componenti ospitati nel cloud. Per altre informazioni sulla gestione degli errori temporanei, vedere Raccomandazioni per la gestione degli errori temporanei.
In App per la logica di Azure molti trigger e azioni supportano automaticamente i criteri di ripetizione dei tentativi, che riprovano automaticamente le richieste che hanno esito negativo a causa di errori temporanei. Per informazioni su come modificare o disabilitare i criteri di ripetizione dei tentativi per l'app per la logica, vedere Gestire errori ed eccezioni in App per la logica di Azure.
Se un'azione non riesce, è possibile personalizzare il comportamento delle azioni successive. È anche possibile creare ambiti per raggruppare le azioni correlate che potrebbero avere esito negativo o avere esito positivo insieme.
Per altre informazioni sulla gestione degli errori in App per la logica di Azure, vedere Gestire errori ed eccezioni in App per la logica di Azure.
Supporto della zona di disponibilità
Le zone di disponibilità sono gruppi di data center separati fisicamente all'interno di ogni area di Azure. In caso di errore di una zona, i servizi possono eseguire il failover in una delle zone rimanenti.
Per altre informazioni sulle zone di disponibilità in Azure, vedere Che cosa sono le zone di disponibilità?
App per la logica di Azure supporta la ridondanza della zona, che distribuisce le risorse di calcolo tra più zone di disponibilità. Quando si distribuiscono le risorse del carico di lavoro dell'app per la logica tra zone di disponibilità, si migliora la resilienza e l'affidabilità per i carichi di lavoro dell'app per la logica di produzione.
I flussi di lavoro delle app per la logica a consumo nuovi ed esistenti in App per la logica di Azure multi-tenant hanno automaticamente la ridondanza della zona abilitata.
Per i flussi di lavoro Standard con l'opzione di hosting Del piano di servizio flusso di lavoro in App per la logica di Azure a tenant singolo, è possibile abilitare facoltativamente la ridondanza della zona.
Per i flussi di lavoro Standard con l'opzione di hosting ambiente del servizio app v3, è possibile abilitare facoltativamente la ridondanza della zona. Per altre informazioni su come ambiente del servizio app s v3 supporta le zone di disponibilità, vedere Affidabilità in servizio app.
Aree supportate
Le app per la logica di consumo distribuite in qualsiasi area che supporta le zone di disponibilità sono automaticamente ridondanti della zona. Giappone occidentale è l'eccezione, che attualmente non supporta le app per la logica con ridondanza della zona perché alcuni servizi di dipendenza non supportano ancora la ridondanza della zona.
È possibile distribuire app per la logica Standard con ridondanza della zona con piani di servizio flusso di lavoro in qualsiasi area che supporta le zone di disponibilità per app Azure Servizio. Giappone occidentale è l'eccezione, che attualmente non supporta le app per la logica con ridondanza della zona. Per altre informazioni, vedere Affidabilità nel servizio app Azure.
Per informazioni sulle aree che supportano le zone di disponibilità per l'ambiente del servizio app v3, vedere Aree.
Requisiti
È necessario distribuire almeno tre istanze del piano di servizio flusso di lavoro. Ogni istanza corrisponde approssimativamente a una macchina virtuale. Per distribuire queste istanze (VM) tra zone di disponibilità, è necessario avere almeno tre istanze.
Considerazioni
- Archiviazione: quando si configura l'archiviazione esterna per i flussi di lavoro Standard con stato, è necessario configurare l'account di archiviazione per la ridondanza della zona. Per altre informazioni, vedere Considerazioni sull'archiviazione per Funzioni di Azure.
Connettori: i connettori predefiniti sono automaticamente ridondanti della zona quando l'app per la logica è ridondante della zona.
Account di integrazione: gli account di integrazione sku Premium sono ridondanti della zona per impostazione predefinita.
Costo
Non è previsto alcun costo aggiuntivo per l'uso della ridondanza della zona, che viene abilitato automaticamente per i flussi di lavoro a consumo nuovi ed esistenti in App per la logica di Azure multi-tenant.
Quando si dispone di flussi di lavoro Standard con il piano di servizio flusso di lavoro in App per la logica di Azure a tenant singolo, non viene applicato alcun costo aggiuntivo per abilitare le zone di disponibilità purché si disponga di tre o più istanze del piano. I costi vengono addebitati in base allo SKU del piano, alla capacità specificata e a tutte le istanze di aumento o riduzione, in base ai criteri di scalabilità automatica. Se si abilitano le zone di disponibilità ma si specifica una capacità inferiore a tre istanze, la piattaforma applica le tre istanze minime e viene addebitato l'utente per queste tre istanze.
ambiente del servizio app v3 ha un modello tariffario specifico per la ridondanza della zona. Per informazioni sui prezzi per l'ambiente del servizio app v3, vedere Prezzi.
Configurare il supporto della zona di disponibilità
I flussi di lavoro delle app per la logica di consumo supportano automaticamente la ridondanza della zona, quindi non è necessaria alcuna configurazione.
Creare un nuovo flusso di lavoro con ridondanza della zona.
Per abilitare la ridondanza della zona per i flussi di lavoro delle app per la logica Standard, vedere Abilitare la ridondanza della zona per l'app per la logica.
Migrazione
Non è possibile abilitare la ridondanza della zona dopo aver creato un piano di servizio. È invece necessario creare un nuovo piano con ridondanza della zona abilitata ed eliminare quello precedente.
Disabilitare la ridondanza della zona.
Non è possibile disabilitare la ridondanza della zona dopo aver creato un piano di servizio flusso di lavoro. È invece necessario creare un nuovo piano con ridondanza della zona disabilitato ed eliminare quello precedente.
Pianificazione e gestione della capacità
Per preparare l'errore della zona di disponibilità, prendere in considerazione il provisioning eccessivo della capacità del servizio. Il provisioning eccessivo consente alla soluzione di tollerare un certo grado di perdita di capacità e continuare a funzionare senza prestazioni ridotte.
Per scoprire quante istanze eseguire il provisioning eccessivo, è importante sapere che la piattaforma distribuisce le istanze tra più zone. È necessario tenere conto almeno dell'errore di una zona.
Seguire questa procedura per individuare il numero totale di istanze di cui effettuare il provisioning:
- Determinare il numero di istanze richieste dal carico di lavoro di picco. In questo esempio vengono usati due scenari. Uno è con 3 istanze e uno è con 4.
- Recuperare il numero di istanze di over-provision moltiplicando il numero massimo di istanze del carico di lavoro per un fattore [(zone/(zone-1)].
- Arrotondare il risultato al numero intero più vicino.
Nota
La tabella seguente presuppone che si usino tre zone di disponibilità. Se si usa un numero diverso di zone di disponibilità, modificare la formula di conseguenza.
Numero massimo di istanze del carico di lavoro | Fattore di [(zone/(zone-1)] | Formula | Istanze di cui effettuare il provisioning (arrotondato) |
---|---|---|---|
3 | 3/2 o 1,5 | (3 x 1,5 = 4,5) | 5 istanze |
4 | 3/2 o 1,5 | (4 x 1,5 = 6) | 6 istanze |
Routing del traffico tra zone
Durante le normali operazioni, le chiamate del flusso di lavoro possono usare risorse di calcolo in una delle zone di disponibilità all'interno dell'area.
Durante le normali operazioni, le chiamate del flusso di lavoro vengono distribuite tra tutte le istanze del piano disponibili in tutte le zone di disponibilità.
Esperienza di zona inattiva
Rilevamento e risposta: la piattaforma App per la logica di Azure è responsabile del rilevamento di un errore in una zona di disponibilità. Non è necessario eseguire alcuna operazione per avviare un failover di zona.
Richieste attive: se una zona di disponibilità non è più disponibile, le esecuzioni in corso del flusso di lavoro eseguite in una macchina virtuale nella zona di disponibilità difettosa vengono terminate. La piattaforma App per la logica di Azure riprende automaticamente il flusso di lavoro in un'altra macchina virtuale in una zona di disponibilità diversa. A causa di questo comportamento, i flussi di lavoro attivi potrebbero riscontrare errori temporanei o una latenza superiore quando le nuove macchine virtuali vengono aggiunte alle zone di disponibilità rimanenti.
Failback
Quando la zona di disponibilità viene ripristinata, App per la logica di Azure ripristina automaticamente le istanze nella zona di disponibilità, rimuove tutte le istanze temporanee create nelle altre zone di disponibilità e reindirizza il traffico tra le istanze come di consueto.
Test per gli errori di zona
La piattaforma App per la logica di Azure gestisce il routing del traffico, il failover e il failback per le risorse dell'app per la logica con ridondanza della zona. Non è necessario avviare nulla. Questa funzionalità è completamente gestita, quindi non è necessario convalidare i processi di errore della zona di disponibilità.
Supporto multi-area
Ogni app per la logica viene distribuita in una singola area di Azure. Se l'area non è più disponibile, anche l'app per la logica non è disponibile.
Approcci alternativi per più aree
Per una maggiore resilienza, è possibile distribuire un'app per la logica di standby o di backup in un'area secondaria ed eseguire il failover in tale altra area se l'area primaria non è disponibile. Per abilitare questa funzionalità, completare le attività seguenti:
- Distribuire l'app per la logica in aree primarie e secondarie.
- Riconfigurare le connessioni alle risorse in base alle esigenze.
- Configurare il bilanciamento del carico e i criteri di failover.
- Pianificare il monitoraggio dell'integrità dell'istanza primaria e avviare il failover.
Per altre informazioni sulle distribuzioni in più aree per i flussi di lavoro dell'app per la logica, vedere la documentazione seguente:
- Distribuzioni in più aree in App per la logica di Azure
- Configurare il ripristino di emergenza tra aree per gli account di integrazione in App per la logica di Azure
- Creare attività di replica per le risorse di Azure usando App per la logica di Azure
Contratto di servizio
Il contratto di servizio per App per la logica di Azure descrive la disponibilità prevista del servizio. Questo accordo descrive inoltre le condizioni per soddisfare le aspettative. Per comprendere queste condizioni, assicurarsi di esaminare i contratti di servizio per i servizi online.