Concetti chiave per la creazione di app di Azure

Prima di iniziare troppo a progettare l'applicazione per l'esecuzione in Azure, è probabile che sia necessario pianificare un po' in anticipo. Quando si inizia, sono disponibili alcuni concetti di base di Azure che è necessario comprendere per prendere le decisioni migliori per lo scenario. Alcune considerazioni includono:

Aree di Azure

Un'area è un set di data center distribuiti entro un perimetro definito dalla latenza e connessi tramite una rete regionale dedicata a bassa latenza. Azure offre la flessibilità necessaria per distribuire applicazioni in cui è necessario, tra cui tra più aree per offrire resilienza tra aree quando necessario.

In genere, si vuole che tutte le risorse di una soluzione si trovino nella stessa area per ridurre al minimo la latenza tra diversi componenti dell'applicazione. Ciò significa che se la soluzione è costituita da un servizio app Azure, un database e un archivio BLOB di Azure, tutte queste risorse devono essere create nella stessa area di Azure.

Non tutti i servizi di Azure sono disponibili in ogni area. La pagina Prodotti disponibili per area consente di trovare un'area in cui sono disponibili i servizi di Azure necessari per l'app.

Gruppo di risorse di Azure

Un gruppo di risorse in Azure è un contenitore logico per raggruppare le risorse di Azure. Ogni risorsa di Azure deve appartenere a uno e a un solo gruppo di risorse.

I gruppi di risorse vengono usati più spesso per raggruppare tutte le risorse di Azure necessarie per una soluzione in Azure. Si supponga, ad esempio, di avere un'applicazione Web distribuita nel servizio app Azure che usa un database SQL, Archiviazione di Azure e anche Azure Key Vault. È pratica comune inserire tutte le risorse di Azure necessarie per questa soluzione in un singolo gruppo di risorse.

A diagram showing a sample resource group containing an App Service, SQL database, Blob storage, and a Key Vault.

In questo modo è più semplice indicare quali risorse sono necessarie per l'esecuzione dell'applicazione e quali risorse sono correlate tra loro. Di conseguenza, il primo passaggio per la creazione di risorse per un'app in Azure consiste in genere nella creazione del gruppo di risorse che fungerà da contenitore per le risorse dell'app.

Ambienti

Se si è sviluppato in locale, si ha familiarità con la promozione del codice tramite ambienti di sviluppo, test e produzione. In Azure, per creare ambienti separati, creare un set separato di risorse di Azure per ogni ambiente necessario.

A diagram showing DEV, TEST, and PROD environments with a separate set of Azure resources in each environment.

Poiché è importante che ogni ambiente sia una copia esatta, è consigliabile creare script per la creazione di risorse necessarie per un ambiente o usare strumenti IaC (Infrastructure as Code) per specificare in modo dichiarativo la configurazione di ogni ambiente. In questo modo si garantisce che il processo di creazione dell'ambiente sia ripetibile e che sia anche possibile attivare nuovi ambienti su richiesta, ad esempio per le prestazioni o i test di sicurezza dell'applicazione.

Supporto devOps

Che si tratti di pubblicare le app in Azure con l'integrazione continua o il provisioning di risorse per un nuovo ambiente, Azure si integra con la maggior parte degli strumenti DevOps più diffusi. È possibile usare gli strumenti già disponibili e ottimizzare l'esperienza esistente con il supporto per strumenti come: