Een Azure Compute-service kiezen

Azure App Service
Azure Kubernetes Service (AKS)

Azure biedt veel manieren om uw toepassingscode te hosten. De term compute verwijst naar het hostingmodel voor de resources waarop uw toepassing wordt uitgevoerd. Dit artikel helpt bij het kiezen van een rekenservice voor uw toepassing.

Een kandidaatservice kiezen

Gebruik het volgende stroomdiagram om een kandidaat-rekenservice te selecteren.

Diagram that shows a decision tree for Azure compute services.

Download een Visio-bestand van deze beslissingsstructuur.

Dit diagram verwijst naar twee migratiestrategieën:

  • Lift-and-shift: een strategie voor het migreren van een workload naar de cloud zonder de toepassing opnieuw te ontwerpen of codewijzigingen aan te brengen. Het wordt ook wel opnieuw hosten genoemd. Zie Het Azure-migratie- en moderniseringscentrum voor meer informatie.
  • Geoptimaliseerd voor de cloud: een strategie voor migratie naar de cloud door een toepassing te herstructureren om te profiteren van cloudeigen functies en mogelijkheden.

De uitvoer van dit stroomdiagram is het uitgangspunt. Evalueer vervolgens de service om te zien of deze voldoet aan uw behoeften.

Dit artikel bevat verschillende tabellen waarmee u een service kunt kiezen. De eerste kandidaat uit het stroomdiagram is mogelijk ongeschikt voor uw toepassing of workload. Vouw in dat geval uw analyse uit om andere rekenservices op te nemen.

Als uw toepassing uit meerdere workloads bestaat, evalueert u elke workload afzonderlijk. Een volledige oplossing kan twee of meer rekenservices bevatten.

Inzicht in de basisfuncties

Als u niet bekend bent met de Azure-service die in de vorige sectie is geselecteerd, raadpleegt u deze overzichtsdocumentatie:

  • Azure Virtual Machines: een service waar u virtuele machines (VM's) in een virtueel Azure-netwerk implementeert en beheert.
  • Azure-app Service: een beheerde service voor het hosten van web-apps, back-ends van mobiele apps, RESTful-API's of geautomatiseerde bedrijfsprocessen.
  • Azure Functions: Een beheerde functie als een service.
  • Azure Kubernetes Service (AKS): een beheerde Kubernetes-service voor het uitvoeren van toepassingen in containers.
  • Azure Container Apps: Een beheerde service die is gebouwd op Kubernetes, wat de implementatie van in containers geplaatste toepassingen in een serverloze omgeving vereenvoudigt.
  • Azure Container Instances: deze service is een snelle en eenvoudige manier om een container in Azure uit te voeren. U hoeft geen VM's in te richten of een service op een hoger niveau te gebruiken.
  • Azure Red Hat OpenShift: een volledig beheerd OpenShift-cluster voor het uitvoeren van containers in productie met Kubernetes.
  • Azure Spring Apps: Een beheerde service die is ontworpen en geoptimaliseerd voor het hosten van Spring Boot-apps.
  • Azure Service Fabric: een platform voor gedistribueerde systemen dat in veel omgevingen kan worden uitgevoerd, waaronder Azure of on-premises.
  • Azure Batch: Een beheerde service voor het uitvoeren van grootschalige parallelle en HPC-toepassingen (High Performance Computing).

Inzicht in de hostingmodellen

Voor hostingmodellen vallen cloudservices in drie categorieën:

  • Infrastructure as a Service (IaaS): Hiermee kunt u VM's inrichten, samen met de bijbehorende netwerk- en opslagonderdelen. Vervolgens kunt u de gewenste software en toepassingen implementeren op deze VM's. Dit model ligt het dichtst bij een traditionele on-premises omgeving. Microsoft beheert de infrastructuur. U beheert nog steeds de VM's.

  • Platform as a Service (PaaS):biedt een beheerde hostingomgeving waar u uw toepassing kunt implementeren zonder vm's of netwerkresources te hoeven beheren. Azure-app Service en Azure Container Apps zijn PaaS-services.

  • Functions as a Service (FaaS):hiermee kunt u uw code implementeren in de service, waarmee deze automatisch wordt uitgevoerd. Azure Functions is een FaaS-service.

    Notitie

    Azure Functions is een serverloze azure-oplossing voor rekenkracht. Zie De juiste integratie- en automatiseringsservices in Azure kiezen om te zien hoe deze service zich verhoudt tot andere serverloze aanbiedingen, zoals Logic Apps, die serverloze werkstromen biedt.

Er is een spectrum van IaaS tot pure PaaS. Virtuele Azure-machines kunnen bijvoorbeeld automatisch worden geschaald met behulp van virtuele-machineschaalsets. Deze mogelijkheid is niet strikt een PaaS, maar het is het type beheerfunctie in PaaS.

Er is een compromis tussen controle en beheergemak. IaaS biedt de meeste controle, flexibiliteit en draagbaarheid, maar u moet de VM's en netwerkonderdelen die u maakt inrichten, configureren en beheren. FaaS-services beheren automatisch bijna alle aspecten van het uitvoeren van een toepassing. PaaS valt ergens tussen.

Service Samenstelling van toepassing Dichtheid Minimum aantal knooppunten Statusbeheer Webhosting
Azure Virtual Machines Agnostisch Agnostisch 1 2 Stateless of stateful Agnostisch
Azure App Service Toepassingen, containers Meerdere apps per exemplaar met behulp van een App Service-plan 1 Staatloos: Ingebouwd
Azure Functions Functies, containers Serverloos 1 Serverloos 1 Staatloos of stateful 6 Niet van toepassing
Azure Kubernetes Service Containers Meerdere containers per knooppunt 3 3 Stateless of stateful Agnostisch
Azure Container Apps Containers Serverloos Serverloos Stateless of stateful Agnostisch
Azure Container Instances Containers Geen toegewezen exemplaren Geen toegewezen knooppunten Staatloos: Agnostisch
Azure Red Hat OpenShift Containers Meerdere containers per knooppunt 6 5 Stateless of stateful Agnostisch
Azure Spring Apps Toepassingen, microservices Meerdere apps per service-exemplaar 2 Staatloos: Ingebouwd
Azure Service Fabric Services, door gasten uitvoerbare bestanden, containers Meerdere services per VM 5 3 Stateless of stateful Agnostisch
Azure Batch Geplande jobs Meerdere apps per VM 1 4 Staatloos: Nee

Opmerkingen

  1. Als u een verbruiksabonnement gebruikt. Voor een App Service-plan worden functies uitgevoerd op de VM's die zijn toegewezen voor uw App Service-plan. Zie Het juiste serviceplan voor Azure Functions kiezen.
  2. Hogere SLA (Service Level Agreement) met twee of meer exemplaren.
  3. Aanbevolen voor productieomgevingen.
  4. Terugschalen naar nul na voltooiing van de taak is mogelijk.
  5. Drie voor primaire knooppunten en drie voor werkknooppunten.
  6. Wanneer u Durable Functions gebruikt.

Netwerken

Service Integratie van virtueel netwerk Hybride connectiviteit
Azure Virtual Machines Ondersteund Ondersteund
Azure App Service Ondersteund 1 Ondersteund 2
Azure Functions Ondersteund 1 Ondersteund 3
Azure Kubernetes Service Ondersteund Ondersteund
Azure Container Apps Ondersteund Ondersteund
Azure Container Instances Ondersteund Ondersteund
Azure Red Hat OpenShift Ondersteund Ondersteund
Azure Spring Apps Ondersteund Ondersteund
Azure Service Fabric Ondersteund Ondersteund
Azure Batch Ondersteund Ondersteund

Opmerkingen

  1. Vereist App Service Environment.
  2. Gebruik Azure-app Hybride Verbinding maken ions van de service.
  3. Hiervoor is een App Service-plan of Een Azure Functions Premium-abonnement vereist.

DevOps

Service Lokale foutopsporing Programmeermodel Toepassingsupdate
Azure Virtual Machines Agnostisch Agnostisch Geen ingebouwde ondersteuning
Azure App Service IIS Express, overige 1 Web- en API-toepassingen, WebJobs voor achtergrondtaken Implementatiesites
Azure Functions Visual Studio of Azure Functions CLI Serverloos, gebeurtenisgestuurd Implementatiesites
Azure Kubernetes Service Minikube, Docker, anderen Agnostisch Rolling update
Azure Container Apps Lokale container-runtime Agnostisch Revisiebeheer
Azure Container Instances Lokale container-runtime Agnostisch Niet van toepassing
Azure Red Hat OpenShift Minikube, Docker, anderen Agnostisch Rolling update
Azure Spring Apps Visual Studio Code, Intellij, Eclipse Spring Boot, Steeltoe Rolling upgrade, blauwgroene implementatie
Azure Service Fabric Lokaal knooppuntcluster Door gasten uitvoerbare bestanden, servicemodel, actormodel, containers Rolling upgrade (per service)
Azure Batch Niet ondersteund Opdrachtregeltoepassing Niet van toepassing

Opmerkingen

  1. Opties zijn IIS Express voor ASP.NET of node.js (iisnode), PHP-webserver, Azure Toolkit voor IntelliJ en Azure Toolkit voor Eclipse. App Service biedt ook ondersteuning voor foutopsporing op afstand van de geïmplementeerde web-app.

Schaalbaarheid

Service Automatisch schalen Load balancer Schaallimiet3
Azure Virtual Machines Virtuele-machineschaalsets Azure-belastingsverdeling Platforminstallatiekopieën: 1000 knooppunten per schaalset, aangepaste installatiekopieën: 600 knooppunten per schaalset
Azure App Service Ingebouwde service Geïntegreerd 30 exemplaren, 100 met App Service Environment
Azure Functions Ingebouwde service Geïntegreerd 200 exemplaren per functie-app
Azure Kubernetes Service Automatische schaalaanpassing vanpods 1, automatische schaalaanpassingvan clusters 2 Azure Load Balancer of Azure-toepassing Gateway 5000 knooppunten bij gebruik van SLA voor uptime
Azure Container Apps Schaalregels4 Geïntegreerd 5 omgevingen per regio, 20 container-apps per omgeving, 30 replica's per container-app
Azure Container Instances Niet ondersteund Geen ingebouwde ondersteuning 20 containergroepen per abonnement (standaardlimiet)
Azure Red Hat OpenShift Automatische schaalaanpassing van pods, automatische schaalaanpassing van clusters Azure Load Balancer of Azure-toepassing Gateway 60 knooppunten per cluster (standaardlimiet)
Azure Spring Apps Ingebouwde service Geïntegreerd 500 app-exemplaren in Standard
Azure Service Fabric Virtuele-machineschaalsets Azure-belastingsverdeling 100 knooppunten per virtuele-machineschaalset
Azure Batch Niet van toepassing Azure-belastingsverdeling Limiet van 20 kernen (standaardlimiet)

Opmerkingen

  1. Zie Pods voor automatisch schalen.
  2. Zie Automatisch een cluster schalen om te voldoen aan de toepassingsvereisten voor Azure Kubernetes Service.
  3. Zie Limieten, quota en beperkingen voor Azure-abonnementen en -services.
  4. Zie Schaalregels instellen in Azure Container Apps.

Beschikbaarheid

Service SLA Failover voor meerdere regio's
Azure Virtual Machines SLA voor virtuele machines Azure Traffic Manager, Azure Front Door en regiooverschrijdende Azure Load Balancer
Azure App Service SLA voor App Service Azure Traffic Manager en Azure Front Door
Azure Functions SLA voor Functions Azure Traffic Manager en Azure Front Door
Azure Kubernetes Service SLA voor AKS Azure Traffic Manager-, Azure Front Door- en multiregiocluster
Azure Container Apps SLA voor Container Apps Azure Traffic Manager en Azure Front Door
Azure Container Instances SLA voor containerinstanties Azure Traffic Manager en Azure Front Door
Azure Red Hat OpenShift SLA voor Azure Red Hat OpenShift Azure Traffic Manager en Azure Front Door
Azure Spring Apps SLA voor Azure Spring Apps Azure Traffic Manager-, Azure Front Door- en multiregiocluster
Azure Service Fabric SLA voor Service Fabric Azure Traffic Manager, Azure Front Door en regiooverschrijdende Azure Load Balancer
Azure Batch SLA voor Batch Niet van toepassing

Zie Core Cloud Services - Azure-architectuur en servicegaranties voor begeleide training over servicegaranties.

Beveiliging

Bekijk en begrijp de beschikbare beveiligingscontroles en zichtbaarheid voor elke service:

Overige criteria

Service TLS Kosten Geschikte architectuurstijlen
Azure Virtual Machines Geconfigureerd in VM Windows, Linux N-tier, big compute (HPC)
Azure App Service Ondersteund Prijzen van App Service Web-queue-worker
Azure Functions Ondersteund Prijzen van Functions Microservices, gebeurtenisgestuurde architectuur
Azure Kubernetes Service Controller voor inkomend verkeer AKS-prijzen Microservices, gebeurtenisgestuurde architectuur
Azure Container Apps Controller voor inkomend verkeer Prijzen voor Container Apps Microservices, gebeurtenisgestuurde architectuur
Azure Container Instances Sidecar-container gebruiken Prijzen voor Container Instances Microservices, taakautomatisering, batchtaken
Azure Red Hat OpenShift Ondersteund Prijzen voor Azure Red Hat OpenShift Microservices, gebeurtenisgestuurde architectuur
Azure Spring Apps Ondersteund Prijzen voor Azure Spring Apps Spring Boot, microservices
Azure Service Fabric Ondersteund Service Fabric-prijzen Microservices, gebeurtenisgestuurde architectuur
Azure Batch Ondersteund Batch-prijzen Big compute (HPC)

Houd rekening met limieten en kosten

Samen met de vorige vergelijkingstabellen voert u een gedetailleerdere evaluatie uit van de volgende aspecten van de kandidaatservice:

Bijdragers

Dit artikel wordt onderhouden door Microsoft. Het is oorspronkelijk geschreven door de volgende inzenders:

Als u niet-openbare LinkedIn-profielen wilt zien, meldt u zich aan bij LinkedIn.

Volgende stappen

Core Cloud Services - Azure-rekenopties. In deze Learn-module wordt beschreven hoe rekenservices algemene bedrijfsbehoeften kunnen oplossen.