Condividi tramite


Scegliere un servizio di calcolo di Azure

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.

Diagramma che mostra un albero delle decisioni per i servizi di calcolo di Azure.

L'immagine mostra un diagramma di flusso per la selezione di un servizio di Azure appropriato in base al fatto che l'utente stia eseguendo la migrazione di un carico di lavoro esistente o ne stia creando uno nuovo. Il diagramma di flusso inizia con un nodo Start e si divide in due rami primari etichettati Migrate e Build new. Il ramo Migrate include punti decisionali che valutano se l'applicazione è ottimizzata per il cloud e se può essere rimossa e spostata. A seconda delle risposte, il flusso conduce a servizi come servizio app di Azure, soluzione Azure VMware o macchine virtuali. Il ramo Build new include punti decisionali che valutano la necessità di controllo completo, high performance computing, carichi di lavoro basati su eventi, hosting Web gestito e requisiti di orchestrazione. Queste decisioni guidano l'utente verso servizi come Macchine virtuali, Azure Batch, Funzioni di Azure, Servizio app, Istanze di Azure Container, Azure Service Fabric, Azure Red Hat OpenShift, servizio Azure Kubernetes o App azure Container. Una sezione di diramazione per l'implementazione dell'orchestrazione in macchine virtuali include VMware Tanzu in macchine virtuali, Kubernetes in macchine virtuali e OpenShift nelle macchine virtuali. Nella parte inferiore dell'immagine, due sezioni boxed elencano i servizi esclusivi dei contenitori e i servizi compatibili con i contenitori. La sezione esclusiva dei contenitori include Istanze di Azure Container, Azure Red Hat OpenShift, Kubernetes in macchine virtuali, OpenShift in macchine virtuali e VMware Tanzu nelle macchine virtuali. La sezione compatibile con i contenitori include Azure Batch, Funzioni di Azure, Service Fabric e Servizio app.

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.

2Vedere Ridimensionare automaticamente un cluster per soddisfare le esigenze delle applicazioni nel servizio Azure Kubernetes.

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:

Altri criteri

Servizio TLS Costo Stili di architettura adatti
Macchine virtuali Configurato nella macchina virtuale Windows, Linux N livelli, Big Compute (HPC)
Servizio app Sostenuto Prezzi del servizio app Web-queue-worker
Azure Functions Sostenuto Prezzi di Funzioni di Azure Microservizi, architettura guidata dagli eventi
Servizio Azure Kubernetes Controller di ingresso Prezzi del servizio Azure Kubernetes Microservizi, architettura guidata dagli eventi
Container Apps Controller di ingresso Prezzi di App contenitore Microservizi, architettura guidata dagli eventi
Istanze di Container Usare il contenitore sidecar Prezzi di Istanze di Container Microservizi, automazione delle attività, processi batch
Azure Red Hat OpenShift Sostenuto Prezzi di Azure Red Hat OpenShift Microservizi, architettura guidata dagli eventi
Service Fabric Sostenuto Prezzi di Service Fabric Microservizi, architettura guidata dagli eventi
Gruppo Sostenuto Prezzi di Batch Big Compute (HPC)
Soluzione Azure VMware Configurato nella macchina virtuale Prezzi della soluzione Azure VMware Carico di lavoro della macchina virtuale basato sul formato VMware

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.

Per visualizzare i profili LinkedIn non pubblici, accedere a LinkedIn.

Passo successivo