Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Azure offre molti modi per ospitare il codice dell'applicazione. Il termine calcolo si riferisce al modello di hosting per le risorse in cui viene eseguita l'applicazione. Questo articolo illustra come scegliere un servizio di calcolo per l'applicazione.
Architecture
Usare il diagramma di flusso seguente per selezionare un servizio di calcolo candidato.
Scaricare un file di Visio di questa architettura.
Il diagramma precedente si riferisce a due strategie di migrazione:
Lift and shift:Lift and shift: Strategia per la migrazione di un carico di lavoro al cloud senza riprogettare l'applicazione o apportare modifiche al codice. È noto anche come rehosting. Per altre informazioni, vedere Centro di migrazione e modernizzazione del cloud di Azure.
Ottimizzato per il cloud: Una strategia per la migrazione al cloud effettuando il refactoring di un'applicazione per sfruttare le funzionalità e le funzionalità native del cloud.
L'output di questo diagramma di flusso è il punto di partenza. Valutare quindi il servizio per verificare se soddisfa le proprie esigenze.
Questo articolo include diverse tabelle che consentono di scegliere un servizio. Il candidato iniziale dal diagramma di flusso potrebbe non essere adatto per l'applicazione o il carico di lavoro. In tal caso, espandere l'analisi per includere altri servizi di calcolo.
Se l'applicazione è costituita da più carichi di lavoro, valutare ogni carico di lavoro separatamente. Una soluzione completa può incorporare due o più servizi di calcolo.
Comprendere le funzionalità di base
Se non si ha familiarità con il servizio di Azure selezionato nella sezione precedente, vedere la documentazione di panoramica seguente:
Servizio app di Azure è un servizio gestito per l'hosting di app Web, back-end di app per dispositivi mobili, API RESTful o processi aziendali automatizzati.
Azure Batch è un servizio gestito per l'esecuzione di applicazioni parallele e HPC (High Performance Computing) su larga scala.
App Azure Container è un servizio gestito basato su Kubernetes, che semplifica la distribuzione di applicazioni in contenitori in un ambiente serverless.
Istanze di Azure Container è un servizio per l'esecuzione di un singolo contenitore o gruppo di contenitori in Azure. Istanze di Contenitore non fornisce l'orchestrazione completa dei contenitori, ma è possibile implementare i contenitori senza dover effettuare il provisioning di macchine virtuali (VM) o adottare un servizio di livello superiore.
Funzioni di Azure è un servizio che fornisce funzioni gestite eseguite in base a vari tipi di trigger per le applicazioni guidate dagli eventi.
Il servizio Azure Kubernetes è un servizio Kubernetes gestito per l'esecuzione di applicazioni in contenitori.
Azure Red Hat OpenShift è un cluster OpenShift completamente gestito per l'esecuzione di contenitori in produzione con Kubernetes.
Azure Service Fabric è una piattaforma di sistemi distribuiti che può essere eseguita in molti ambienti, tra cui Azure o locale.
La soluzione Azure VMware è un servizio gestito per l'esecuzione di carichi di lavoro VMware in modo nativo in Azure.
Macchine virtuali di Azure è un servizio in cui si distribuiscono e gestiscono macchine virtuali all'interno di una rete virtuale di Azure.
Informazioni sui modelli di hosting
Per i modelli di hosting, i servizi cloud rientrano in tre categorie:
L'infrastruttura distribuita come servizio (IaaS) consente di effettuare il provisioning di macchine virtuali insieme ai componenti di rete e archiviazione associati. È quindi possibile distribuire qualsiasi software e applicazione in tali macchine virtuali. Questo modello è il più vicino a un ambiente locale tradizionale. Microsoft gestisce l'infrastruttura e si gestiscono le macchine virtuali.
La piattaforma distribuita come servizio (PaaS) offre un ambiente di hosting gestito in cui è possibile distribuire l'applicazione senza dover gestire le macchine virtuali o le risorse di rete. Il servizio app e le app contenitore sono servizi PaaS.
Funzioni come servizio (FaaS) consente di distribuire il codice nel servizio, che lo esegue automaticamente. Funzioni di Azure è un servizio FaaS.
Annotazioni
Funzioni di Azure è un'offerta di calcolo serverless di Azure . Per informazioni sul confronto di questo servizio con altre offerte serverless di Azure, ad esempio App per la logica di Azure per flussi di lavoro serverless, vedere Scegliere l'integrazione e i servizi di automazione corretti in Azure.
C'è uno spettro da IaaS a PaaS completamente gestito. Ad esempio, le macchine virtuali di Azure possono essere ridimensionate automaticamente usando i set di scalabilità di macchine virtuali. Questa funzionalità non è strettamente PaaS, ma è simile alle funzionalità di gestione in PaaS.
C'è un compromesso tra il controllo e la facilità di gestione. IaaS offre il massimo controllo, flessibilità e portabilità. Tuttavia, è necessario effettuare il provisioning, configurare e gestire le macchine virtuali e i componenti di rete creati. I servizi FaaS gestiscono automaticamente quasi tutti gli aspetti dell'esecuzione di un'applicazione. PaaS offre una gestione parziale e richiede una configurazione utente.
| Servizio | Composizione dell'applicazione | Densità | Numero minimo di nodi | Gestione dello stato | Hosting Web |
|---|---|---|---|---|---|
| Macchine virtuali | Agnostico | Agnostico | 1 2 | Senza stato o con stato | Agnostico |
| Servizio app | Applicazioni, contenitori | Più app per ogni istanza usando il piano di servizio app | 1 | Senza stato | Built-in |
| Azure Functions | Funzioni, contenitori | Serverless 1 | Serverless 1 | Senza stato o con stato 6 | Non applicabile |
| Servizio Azure Kubernetes | Containers | Più contenitori per ogni nodo | 3 3 | Senza stato o con stato | Agnostico |
| Container Apps | Containers | Serverless | Serverless | Senza stato o con stato | Agnostico |
| Istanze di Container | Containers | Nessuna istanza dedicata | Nessun nodo dedicato | Senza stato | Agnostico |
| Azure Red Hat OpenShift | Containers | Più contenitori per ogni nodo | 6 5 | Senza stato o con stato | Agnostico |
| Service Fabric | Servizi, eseguibili guest, contenitori | Più servizi per ogni macchina virtuale | 5 3 | Senza stato o con stato | Agnostico |
| Gruppo | Processi pianificati | Più app per ogni macchina virtuale | 1 4 | Senza stato | NO |
| Soluzione Azure VMware | Agnostico | Agnostico | 3 7 | Senza stato o con stato | Agnostico |
Note:
1Per Funzioni di Azure, il piano a consumo è serverless. Per un piano di servizio app, le funzioni vengono eseguite nelle macchine virtuali allocate per tale piano. Scegliere il piano di servizio corretto per Funzioni di Azure.
2Contratto di servizio superiore con due o più istanze.
3Consigliato per gli ambienti di produzione.
4Può ridurre fino a zero dopo il completamento del processo.
5Tre nodi primari e tre nodi di lavoro.
6Quando si usano funzioni durevoli.
7Vedere Host.
Rete
| Servizio | Integrazione della rete virtuale | Connettività ibrida |
|---|---|---|
| Macchine virtuali | Sostenuto | Sostenuto |
| Servizio app | Supportato 1 | Supportato 2 |
| Azure Functions | Supportato 1 | Supportato 3 |
| Servizio Azure Kubernetes | Supported | Sostenuto |
| Container Apps | Sostenuto | Sostenuto |
| Istanze di Container | Supported | Supported |
| Azure Red Hat OpenShift | Supported | Sostenuto |
| Service Fabric | Sostenuto | Sostenuto |
| Gruppo | Sostenuto | Sostenuto |
| Soluzione Azure VMware | Supported | Supported |
Note:
1Richiede l'ambiente del servizio app o un piano tariffario di calcolo dedicato.
2Usare connessioni ibride del servizio app.
3Richiede un piano di servizio app o un piano Premium di Funzioni di Azure.
DevOps
| Servizio | Debug locale | Modello di programmazione | Aggiornamento dell'applicazione |
|---|---|---|---|
| Macchine virtuali | Agnostico | Agnostico | Nessun supporto predefinito |
| Servizio app | IIS Express, altri 1 | Applicazioni Web e API, Processi Web per attività in background | Slot di distribuzione |
| Azure Functions | Interfaccia della riga di comando di Visual Studio o Funzioni di Azure | Serverless, guidato dagli eventi | Slot di distribuzione |
| Servizio Azure Kubernetes | Minikube, Docker, altri | Agnostico | Aggiornamento in sequenza |
| Container Apps | Runtime del contenitore locale | Agnostico | Gestione delle revisioni |
| Istanze di Container | Runtime del contenitore locale | Agnostico | Non applicabile |
| Azure Red Hat OpenShift | Minikube, Docker, altri | Agnostico | Aggiornamento in sequenza |
| Service Fabric | Cluster del nodo locale | Eseguibile guest, modello di servizio, modello Actor, contenitori | Aggiornamento in sequenza per ogni servizio |
| Gruppo | Non supportato | Applicazione da riga di comando | Non applicabile |
| Soluzione Azure VMware | Agnostico | Agnostico | Nessun supporto predefinito |
Note:
1Le opzioni includono IIS Express per ASP.NET o node.js (iisnode), server Web PHP, Azure Toolkit for IntelliJ e Azure Toolkit for Eclipse. Il servizio app supporta anche il debug remoto delle app Web distribuite.
Scalabilità
| Servizio | Autoscaling | Bilanciamento del carico | Limite di scalabilità3 |
|---|---|---|---|
| Macchine virtuali | Set di scalabilità di macchine virtuali | Bilanciatore di carico Azure | Immagine della piattaforma: 1.000 nodi per ogni set di scalabilità. Immagine personalizzata: 600 nodi per ogni set di scalabilità. |
| Servizio app | Servizio predefinito | Integrato | 30 istanze, 100 con ambiente del servizio app |
| Azure Functions | Servizio predefinito | Integrato | 200 istanze per ogni app per le funzioni |
| Servizio Azure Kubernetes | Scalabilità automatica dei pod1, scalabilità automatica del cluster2 | Load Balancer o gateway applicazione di Azure | 5.000 nodi quando si usa il contratto di servizio per il tempo di attività |
| Container Apps | Regole di ridimensionamento4 | Integrato | 15 ambienti per ogni area (limite predefinito), app per contenitori illimitate per ogni ambiente e repliche per ogni app contenitore (a seconda dei core disponibili) |
| Istanze di Container | Non supportato | Nessun supporto predefinito | 100 gruppi di contenitori per ogni sottoscrizione (limite predefinito) |
| Azure Red Hat OpenShift | Scalabilità automatica dei pod, scalabilità automatica del cluster | Load Balancer o gateway applicazione | 250 nodi per ogni cluster (limite predefinito) |
| Service Fabric | Set di scalabilità di macchine virtuali | Bilanciatore di carico | 100 nodi per ogni set di scalabilità di macchine virtuali |
| Gruppo | Non applicabile | Bilanciatore di carico | Limite core di 900 dedicato e 100 priorità bassa (limite predefinito) |
| Soluzione Azure VMware | Servizio5 predefinito | Integrato6 | Da 3 a 16 host VMware ESXi per VMware vCenter |
Note:
1Vedere Pod di scalabilità automatica.
3Vedere Sottoscrizione di Azure e limiti del servizio, quote e vincoli
4Vedere Impostare le regole di ridimensionamento nelle app contenitore
5Vedere Ridimensionare la soluzione Azure VMware
6Vedere VMware NSX
Availability
| Servizio | Opzione di failover su più aree |
|---|---|
| Macchine virtuali | Gestione traffico di Azure, Frontdoor di Azure e bilanciamento del carico tra aree |
| Servizio app | Gestione traffico e Frontdoor di Azure |
| Azure Functions | Gestione traffico e Frontdoor di Azure |
| Servizio Azure Kubernetes | Gestione traffico, Frontdoor di Azure e cluster multiregion |
| Container Apps | Gestione traffico e Frontdoor di Azure |
| Istanze di Container | Gestione traffico e Frontdoor di Azure |
| Azure Red Hat OpenShift | Gestione traffico e Frontdoor di Azure |
| Service Fabric | Gestione traffico, Frontdoor di Azure e bilanciamento del carico tra aree |
| Gruppo | Non applicabile |
| Soluzione Azure VMware | Non applicabile |
Per informazioni guidate sulle garanzie del servizio, vedere Architettura e garanzie del servizio di Azure.
Security
Esaminare e comprendere i controlli di sicurezza e la visibilità disponibili per ognuno dei servizi seguenti:
- AKS
- Servizio app
- Funzioni di Azure
- Macchine virtuali per Linux
- Soluzione Azure VMware
- Macchine virtuali per Windows
- Batch
- App di container
- Istanze di Container
- Service Fabric
Altri criteri
Prendere in considerazione limiti e costi
Insieme alle tabelle di confronto precedenti, eseguire una valutazione più dettagliata degli aspetti seguenti del servizio candidato:
Contributori
Microsoft gestisce questo articolo. I collaboratori seguenti hanno scritto questo articolo.
- Ayobami Ayodeji | Responsabile senior del programma
- Jelle Druyts | Ingegnere del servizio principale
- Martin Gjoševski | Senior Service Engineer
- Phil Huang | Senior Cloud Solution Architect
- Julie Ng | Senior Service Engineer
- Paolo Salvatori | Ingegnere del servizio principale
Per visualizzare i profili LinkedIn non pubblici, accedere a LinkedIn.