Dela via


Välj en Azure-beräkningstjänst

Azure tillhandahåller många sätt att vara värd för din programkod. Termen beräkning refererar till värdmodellen för de resurser som programmet körs på. Den här artikeln hjälper dig att välja en beräkningstjänst för ditt program.

Architecture

Använd följande flödesschema för att välja en kandidatberäkningstjänst.

Diagram som visar ett beslutsträd för Azure-beräkningstjänster.

Bilden visar ett flödesschema för att välja en lämplig Azure-tjänst baserat på om användaren migrerar en befintlig arbetsbelastning eller skapar en ny. Flödesschemat börjar med en Start-nod och delas upp i två primära grenar med etiketten Migrera och Skapa ny. Grenen Migrera innehåller beslutspunkter som utvärderar om programmet är optimerat för molnet och om det kan lyftas och flyttas. Beroende på svaren leder flödet till tjänster som Azure App Service, Azure VMware Solution eller Virtual Machines. Grenen Skapa ny innehåller beslutspunkter som utvärderar behovet av fullständig kontroll, databehandling med höga prestanda, händelsedrivna arbetsbelastningar, hanterad webbvärd och orkestreringskrav. Dessa beslut vägleder användaren mot tjänster som Virtual Machines, Azure Batch, Azure Functions, App Service, Azure Container Instances, Azure Service Fabric, Azure Red Hat OpenShift, Azure Kubernetes Service eller Azure Container Apps. Ett förgreningsavsnitt för din egen dirigeringsimplementering på virtuella datorer innehåller VMware Tanzu på virtuella datorer, Kubernetes på virtuella datorer och OpenShift på virtuella datorer. Längst ned i avbildningen visas två boxade avsnitt med containerexkluderande tjänster och containerkompatibla tjänster. Avsnittet containerexklusiv innehåller Azure Container Instances, Azure Red Hat OpenShift, Kubernetes på virtuella datorer, OpenShift på virtuella datorer och VMware Tanzu på virtuella datorer. Det containerkompatibla avsnittet innehåller Azure Batch, Azure Functions, Service Fabric och App Service.

Ladda ned en Visio-fil med den här arkitekturen.

Det föregående diagrammet refererar till två migreringsstrategier:

  • Lyft och skift: En strategi för att migrera en arbetsbelastning till molnet utan att göra om programmet eller göra kodändringar. Det kallas även för värdvärd. Mer information finns i Migrerings- och moderniseringscentret för Azure-molnet.

  • Molnoptimerad: En strategi för att migrera till molnet genom att omstrukturera ett program för att dra nytta av molnbaserade funktioner.

Utdata från det här flödesschemat är startpunkten. Utvärdera sedan tjänsten för att se om den uppfyller dina behov.

Den här artikeln innehåller flera tabeller som kan hjälpa dig att välja en tjänst. Den första kandidaten från flödesschemat kan vara olämplig för ditt program eller din arbetsbelastning. I så fall expanderar du analysen så att den inkluderar andra beräkningstjänster.

Om ditt program består av flera arbetsbelastningar utvärderar du varje arbetsbelastning separat. En komplett lösning kan innehålla två eller flera beräkningstjänster.

Förstå de grundläggande funktionerna

Om du inte är bekant med Den Azure-tjänst som du väljer i föregående avsnitt kan du läsa följande översiktsdokumentation:

  • Azure App Service är en hanterad tjänst som är värd för webbappar, mobilappens serverdelar, RESTful-API:er eller automatiserade affärsprocesser.

  • Azure Batch är en hanterad tjänst för att köra storskaliga parallella och högpresterande databehandlingsprogram (HPC).

  • Azure Container Apps är en hanterad tjänst som bygger på Kubernetes, vilket förenklar distributionen av containerbaserade program i en serverlös miljö.

  • Azure Container Instances är en tjänst för att köra en enda container eller grupp med containrar i Azure. Container Instances tillhandahåller inte fullständig containerorkestrering, men du kan implementera containrar utan att behöva etablera virtuella datorer (VM) eller använda en tjänst på högre nivå.

  • Azure Functions är en tjänst som tillhandahåller hanterade funktioner som körs baserat på en mängd olika utlösartyper för händelsedrivna program.

  • Azure Kubernetes Service (AKS) är en hanterad Kubernetes-tjänst för att köra containerbaserade program.

  • Azure Red Hat OpenShift är ett fullständigt hanterat OpenShift-kluster för att köra containrar i produktion med Kubernetes.

  • Azure Service Fabric är en distribuerad systemplattform som kan köras i många miljöer, inklusive Azure eller lokalt.

  • Azure VMware Solution är en hanterad tjänst för att köra VMware-arbetsbelastningar internt i Azure.

  • Azure Virtual Machines är en tjänst där du distribuerar och hanterar virtuella datorer i ett virtuellt Azure-nätverk.

Förstå värdmodellerna

För värdmodeller finns molntjänster i tre kategorier:

  • Med Infrastruktur som en tjänst (IaaS) kan du etablera virtuella datorer tillsammans med associerade nätverks- och lagringskomponenter. Sedan kan du distribuera valfri programvara och program på dessa virtuella datorer. Den här modellen är närmast en traditionell lokal miljö. Microsoft hanterar infrastrukturen och du hanterar de virtuella datorerna.

  • PaaS (Platform as a Service) tillhandahåller en hanterad värdmiljö där du kan distribuera ditt program utan att behöva hantera virtuella datorer eller nätverksresurser. App Service och Container Apps är PaaS-tjänster.

  • Med Functions as a service (FaaS) kan du distribuera koden till tjänsten, som kör den automatiskt. Azure Functions är en FaaS-tjänst.

    Anmärkning

    Azure Functions är ett azure-serverlöst beräkningserbjudande. Mer information om hur den här tjänsten jämförs med andra serverlösa Azure-erbjudanden, till exempel Azure Logic Apps för serverlösa arbetsflöden, finns i Välja rätt integrerings- och automatiseringstjänster i Azure.

Det finns ett spektrum från IaaS till fullständigt hanterad PaaS. Virtuella Azure-datorer kan till exempel skalas automatiskt med hjälp av VM-skalningsuppsättningar. Den här funktionen är inte strikt PaaS, men den liknar hanteringsfunktionerna i PaaS.

Det finns en kompromiss mellan kontroll och enkel hantering. IaaS ger mest kontroll, flexibilitet och portabilitet. Du måste dock etablera, konfigurera och hantera de virtuella datorer och nätverkskomponenter som du skapar. FaaS-tjänster hanterar automatiskt nästan alla aspekter av att köra ett program. PaaS tillhandahåller partiell hantering samtidigt som vissa användarkonfigurationer krävs.

Tjänster Programsammansättning Täthet Minsta antal noder Statushantering Webbhotell
Virtual Machines Agnostiker Agnostiker 1 2 Tillståndslös eller tillståndskänslig Agnostiker
App Service Program, containrar Flera appar för varje instans med hjälp av App Service-plan 1 Tillståndslös Inbyggd
Azure-funktioner Funktioner, containrar Serverlös 1 Serverlös 1 Tillståndslös eller tillståndskänslig 6 Ej tillämpligt
AKS Containers Flera containrar för varje nod 3 3 Tillståndslös eller tillståndskänslig Agnostiker
Containerapplikationer Containers Serverless Serverless Tillståndslös eller tillståndskänslig Agnostiker
Container Instances Containers Inga dedikerade instanser Inga dedikerade noder Tillståndslös Agnostiker
Azure Red Hat OpenShift Containers Flera containrar för varje nod 6 5 Tillståndslös eller tillståndskänslig Agnostiker
Service Fabric Tjänster, körbara gästtjänster, containrar Flera tjänster för varje virtuell dator 5 3 Tillståndslös eller tillståndskänslig Agnostiker
Omgång Schemalagda jobb Flera appar för varje virtuell dator 1 4 Tillståndslös Nej
Azure VMware-lösning Agnostiker Agnostiker 3 7 Tillståndslös eller tillståndskänslig Agnostiker

Anteckningar:

1För Azure Functions är förbrukningsplanen serverlös. För en App Service-plan körs funktioner på de virtuella datorer som allokerats för planen. Välj rätt tjänstplan för Azure Functions.

2Högre serviceavtal (SLA) som har två eller flera instanser.

3Rekommenderas för produktionsmiljöer.

4Kan skalas ned till noll när jobbet har slutförts.

5Tre primära noder och tre arbetsnoder.

6När du använder varaktiga funktioner.

7Se Värdar.

Nätverkande

Tjänster Integrering av virtuellt nätverk Hybridanslutning
Virtual Machines Understödd Understödd
App Service Stöds 1 Stöds 2
Azure-funktioner Stöds 1 Stöds 3
AKS Supported Understödd
Containerapplikationer Understödd Understödd
Container Instances Supported Supported
Azure Red Hat OpenShift Supported Understödd
Service Fabric Understödd Understödd
Omgång Understödd Understödd
Azure VMware-lösning Supported Supported

Anteckningar:

1Kräver App Service Environment eller en dedikerad beräkningsprisnivå.

2Använd App Service Hybrid-anslutningar.

3Kräver en App Service-plan eller Azure Functions Premium-plan.

DevOps

Tjänster Lokal felsökning Programmeringsmodell Programuppdatering
Virtual Machines Agnostiker Agnostiker Inget inbyggt stöd
App Service IIS Express, andra 1 Webb- och API-program, webbjobb för bakgrundsuppgifter Distributionsplatser
Azure-funktioner Visual Studio eller Azure Functions CLI Serverlös, händelsedriven Distributionsplatser
AKS Minikube, Docker, andra Agnostiker Löpande uppdatering
Containerapplikationer Lokal containerkörning Agnostiker Revisionshantering
Container Instances Lokal containerkörning Agnostiker Ej tillämpligt
Azure Red Hat OpenShift Minikube, Docker, andra Agnostiker Löpande uppdatering
Service Fabric Lokalt nodkluster Körbar gäst, tjänstmodell, aktörsmodell, containrar Löpande uppgradering för varje tjänst
Omgång Stöds inte Kommandoradsprogram Ej tillämpligt
Azure VMware-lösning Agnostiker Agnostiker Inget inbyggt stöd

Note:

1Alternativ är IIS Express för ASP.NET eller node.js (iisnode), PHP-webbserver, Azure Toolkit for IntelliJ och Azure Toolkit for Eclipse. App Service stöder även fjärrfelsökning av distribuerade webbappar.

Skalbarhet

Tjänster Autoscaling Lastbalanserare Skalningsgräns3
Virtual Machines Skalningsuppsättningar för virtuella datorer Azure Load Balancer (belastningsutjämnare) Plattformsbild: 1 000 noder för varje skalningsuppsättning. Anpassad avbildning: 600 noder för varje skalningsuppsättning.
App Service Inbyggd tjänst Integrerad 30 instanser, 100 med App Service Environment
Azure-funktioner Inbyggd tjänst Integrerad 200 instanser för varje funktionsapp
AKS Autoskalning av poddar1, automatisk skalning av kluster2 Load Balancer eller Azure Application Gateway 5 000 noder när du använder serviceavtal för drifttid
Containerapplikationer Skalningsregler4 Integrerad 15 miljöer för varje region (standardgräns), obegränsade containerappar för varje miljö och repliker för varje containerapp (beroende på tillgängliga kärnor)
Container Instances Stöds inte Inget inbyggt stöd 100 containergrupper för varje prenumeration (standardgräns)
Azure Red Hat OpenShift Autoskalning av poddar, autoskalning av kluster Load Balancer eller Application Gateway 250 noder för varje kluster (standardgräns)
Service Fabric Skalningsuppsättningar för virtuella datorer Lastbalanserare 100 noder för varje VM-skalningsuppsättning
Omgång Ej tillämpligt Lastbalanserare Kärngräns på 900 dedikerade och 100 lågprioritet (standardgräns)
Azure VMware-lösning Inbyggd tjänst5 Integrerad6 3 till 16 VMware ESXi-värdar per VMware vCenter

Anteckningar:

1Se Autoskala poddar.

2Se Skala ett kluster automatiskt för att uppfylla programkraven på AKS.

3Se Azure-prenumerations- och tjänstgränser, kvoter och begränsningar

4Se Ange skalningsregler i Container Apps

5Se Skala Azure VMware-lösning

6Se VMware NSX

Availability

Tjänster Redundansalternativ för flera regioner
Virtual Machines Azure Traffic Manager, Azure Front Door och lastbalanserare mellan regioner
App Service Traffic Manager och Azure Front Door
Azure-funktioner Traffic Manager och Azure Front Door
AKS Traffic Manager, Azure Front Door och Multiregion Cluster
Containerapplikationer Traffic Manager och Azure Front Door
Container Instances Traffic Manager och Azure Front Door
Azure Red Hat OpenShift Traffic Manager och Azure Front Door
Service Fabric Traffic Manager, Azure Front Door och lastbalanserare mellan regioner
Omgång Ej tillämpligt
Azure VMware-lösning Ej tillämpligt

Guidad utbildning om tjänstgarantier finns i Azure-arkitektur och tjänstgarantier.

Security

Granska och förstå tillgängliga säkerhetskontroller och synlighet för var och en av följande tjänster:

Andra kriterier

Tjänster TLS Kostnad Lämpliga arkitekturformat
Virtual Machines Konfigurerad i virtuell dator Windows, Linux N-nivå, stor beräkning (HPC)
App Service Understödd Priser för App Service Web-queue-worker
Azure-funktioner Understödd Prissättning för Azure Functions Mikrotjänster, händelsedriven arkitektur
AKS Ingresskontrollant AKS-priser Mikrotjänster, händelsedriven arkitektur
Containerapplikationer Ingresskontrollant Prissättning för Container Apps Mikrotjänster, händelsedriven arkitektur
Container Instances Använda sidovagnscontainer Prissättning för containerinstanser Mikrotjänster, uppgiftsautomatisering, batchjobb
Azure Red Hat OpenShift Understödd Priser för Azure Red Hat OpenShift Mikrotjänster, händelsedriven arkitektur
Service Fabric Understödd Service Fabric-priser Mikrotjänster, händelsedriven arkitektur
Omgång Understödd Batch-priser Stor beräkning (HPC)
Azure VMware-lösning Konfigurerad i virtuell dator Prissättning för Azure VMware Solution VM-arbetsbelastning baserat på VMware-format

Överväg gränser och kostnader

Tillsammans med de tidigare jämförelsetabellerna gör du en mer detaljerad utvärdering av följande aspekter av kandidattjänsten:

Bidragsgivare

Microsoft ansvarar för den här artikeln. Följande deltagare skrev den här artikeln.

Om du vill se linkedin-profiler som inte är offentliga loggar du in på LinkedIn.

Nästa steg