Freigeben über


Auswählen eines Azure-Computediensts

Azure App Service
Azure Kubernetes Service (AKS)
Azure Virtual Machines
Azure Container Apps
Azure-Funktionen

Azure bietet eine Vielzahl von Möglichkeiten zum Hosten Ihres Anwendungscodes. The term compute refers to the hosting model for the resources that your application runs on. In diesem Artikel erfahren Sie, wie Sie einen Computedienst für Ihre Anwendung auswählen.

Auswählen eines Kandidatendiensts

Verwenden Sie das folgende Flussdiagramm, um einen Kandidaten für den Computedienst auszuwählen.

Diagramm einer Entscheidungsstruktur für Azure-Computedienste.

Laden Sie eine Visio-Datei dieser Entscheidungsstruktur herunter.

Dieses Diagramm bezieht sich auf zwei Migrationsstrategien:

  • Lift & Shift: Eine Strategie zum Migrieren einer Workload zur Cloud ohne Überarbeitung der Anwendung oder Änderung des Codes. It's also called rehosting. Weitere Informationen finden Sie im Azure-Migrations- und Modernisierungscenter.
  • Cloud optimized: A strategy for migrating to the cloud by refactoring an application to take advantage of cloud-native features and capabilities.

Die Ausgabe dieses Flussdiagramms ist Ihr Ausgangspunkt. Bewerten Sie als Nächstes den Dienst, um festzustellen, ob er Ihren Anforderungen entspricht.

Dieser Artikel enthält mehrere Tabellen, die Ihnen bei der Auswahl eines Diensts helfen können. Der erste Kandidat aus dem Flussdiagramm ist möglicherweise nicht für Ihre Anwendung oder Ihr Workload geeignet. Dehnen Sie in diesem Fall Ihre Analyse auf andere Computedienste aus.

Wenn Ihre Anwendung aus mehreren Workloads besteht, bewerten Sie jede Workload getrennt. Eine vollständige Lösung kann zwei oder mehr Computedienste umfassen.

Grundlegendes zu den Basisfunktionen

Wenn Sie mit dem im vorherigen Abschnitt ausgewählten Azure-Dienst nicht vertraut sind, lesen Sie diese Übersichtsdokumentation:

  • Azure Virtual Machines: Ein Dienst, bei dem Sie virtuelle Computer (VMs) in einem virtuellen Azure-Netzwerk bereitstellen und verwalten.
  • Azure App Service: Ein verwalteter Dienst zum Hosten von Web-Apps, mobilen App-Back-Ends, RESTful-APIs oder automatisierten Geschäftsprozessen.
  • Azure Functions: A service that provides managed functions that run based on a variety of trigger types for event-driven applications.
  • Azure Kubernetes Service (AKS): Ein verwalteter Kubernetes-Dienst zur Ausführung von Containeranwendungen.
  • Azure Container Apps: Ein verwalteter Dienst, der auf Kubernetes basiert und die Bereitstellung containerisierter Anwendungen in einer serverlosen Umgebung vereinfacht.
  • Azure-Containerinstanzen: Dieser Dienst ist eine schnelle und einfache Möglichkeit, einen einzelnen Container oder eine einzelne Gruppe von Containern in Azure auszuführen. Azure-Containerinstanzen bieten keine vollständige Container-Orchestrierung, aber Sie können sie implementieren, ohne VMs bereitstellen oder einen Dienst auf höherer Ebene einführen zu müssen.
  • Azure Red Hat OpenShift: Ein vollständig verwalteter OpenShift-Cluster für die Ausführung von Containern in der Produktion mit Kubernetes.
  • Azure Service Fabric: Eine Plattform für verteilte Systeme, die in vielen Umgebungen ausgeführt werden kann, z. B. in Azure oder lokal.
  • Azure Batch: A managed service for running large-scale parallel and high-performance computing (HPC) applications.
  • Azure VMware Solution: Ein verwalteter Dienst zum systemeigenen Ausführen von VMware-Workloads in Azure.

Grundlegendes zu den Hostingmodellen

Bei Hostingmodellen lassen sich Clouddienste in drei Kategorien einteilen:

  • Infrastructure-as-a-Service (IaaS): Sie können virtuelle Computer zusammen mit den zugehörigen Netzwerk- und Speicherkomponenten bereitstellen. Anschließend können Sie die Software und Anwendungen bereitstellen, die für diese VMs jeweils vorgesehen sind. Dieses Modell kommt einer traditionellen lokalen Umgebung am nächsten. Microsoft verwaltet die Infrastruktur. Die Verwaltung der VMs liegt weiterhin bei Ihnen.

  • PaaS (Platform-as-a-Service): Bietet eine verwaltete Hostingumgebung, in der Sie Ihre Anwendung ohne Verwaltung von virtuellen Computern oder Netzwerkressourcen bereitstellen können. Azure App Service und Azure Container Apps sind PaaS-Dienste.

  • FaaS (Functions-as-a-Service): Sie können Sie Ihren Code im Dienst bereitstellen, der ihn automatisch ausführt. Azure Functions ist ein FaaS-Dienst.

    Note

    Azure Functions is an Azure serverless compute offering. Informationen zum Vergleich dieses Diensts mit anderen serverlosen Azure-Angeboten, z. B. Logic Apps, die serverlose Workflows bereitstellt, finden Sie unter Auswählen der richtigen Integrations- und Automatisierungsdienste in Azure.

Es wird ein Spektrum von IaaS bis zu PaaS in Reinform abgedeckt. Für Azure-VMs kann die automatische Skalierung beispielsweise mithilfe von VM-Skalierungsgruppen durchgeführt werden. Diese Funktion entspricht nicht genau einem PaaS, aber es handelt sich um die Art von Verwaltungsfeature, das Teil eines PaaS ist.

Es muss ein Kompromiss zwischen Kontrolle und einfacher Verwaltung gefunden werden. IaaS bietet das höchste Maß an Kontrolle, Flexibilität und Portabilität, aber Sie müssen die von Ihnen erstellten virtuellen Computer und Netzwerkkomponenten bereitstellen, konfigurieren und verwalten. FaaS-Dienste verwalten automatisch nahezu alle Aspekte der Ausführung einer Anwendung. PaaS ist irgendwo dazwischen.

Service Application composition Density Mindestanzahl von Knoten State management Web hosting
Azure-virtuelle Maschinen Agnostic Agnostic 1 2 Zustandslos oder zustandsbehaftet Agnostic
Azure App Service Applications, containers Mehrere Apps pro Instanz durch Verwendung von App-Service-Plänen 1 Stateless Built in
Azure Functions Functions, containers Serverless 1 Serverless 1 Stateless or stateful 6 Not applicable
Azure Kubernetes-Dienst Containers Mehrere Container pro Knoten 3 3 Zustandslos oder zustandsbehaftet Agnostic
Azure Container Apps – ein Dienst für containerbasierte Anwendungen Containers Serverless Serverless Zustandslos oder zustandsbehaftet Agnostic
Azure-Containerinstanzen Containers Keine dedizierten Instanzen Keine dedizierten Knoten Stateless Agnostic
Azure Red Hat OpenShift Containers Mehrere Container pro Knoten 6 5 Zustandslos oder zustandsbehaftet Agnostic
Azure Service Fabric Dienste, ausführbare Gastdateien, Container Mehrere Dienste pro VM 5 3 Zustandslos oder zustandsbehaftet Agnostic
Azure Batch Scheduled jobs Mehrere Apps pro VM 1 4 Stateless No
Azure VMware-Lösung Agnostic Agnostic 3 7 Zustandslos oder zustandsbehaftet Agnostic

Notes

  1. Wenn Sie einen Verbrauchsplan verwenden. Für einen App-Service-Plan werden Funktionen auf den VMs ausgeführt, die Ihrem App-Service-Plan zugeordnet sind. Weitere Informationen finden Sie unter Auswählen des richtigen Serviceplans für Azure Functions.
  2. Höhere Vereinbarung zum Servicelevel (SLA) mit zwei oder mehr Instanzen.
  3. Empfohlen für Produktionsumgebungen.
  4. Kann nach Abschluss eines Auftrags auf 0 herunterskaliert werden.
  5. Drei für primäre Knoten und drei für Workerknoten.
  6. Bei der Verwendung von Durable Functions.
  7. Mindestanzahl von drei Knotenerforderlich.

Networking

Service Integration in ein virtuelles Netzwerk Hybrid connectivity
Azure-virtuelle Maschinen Supported Supported
Azure App Service Supported 1 Supported 2
Azure Functions Supported 1 Supported 3
Azure Kubernetes-Dienst Supported Supported
Azure Container Apps – ein Dienst für containerbasierte Anwendungen Supported Supported
Azure-Containerinstanzen Supported Supported
Azure Red Hat OpenShift Supported Supported
Azure Service Fabric Supported Supported
Azure Batch Supported Supported
Azure VMware-Lösung Supported Supported

Notes

  1. Erfordert Die App Service-Umgebung oder ein dediziertes Preisniveau für Die Berechnung.
  2. Verwenden Sie Azure App Service-Hybridverbindungen.
  3. Erfordert App Service Plan oder Azure Functions Premium-Plan.

DevOps

Service Local debugging Programming model Application update
Azure-virtuelle Maschinen Agnostic Agnostic Keine integrierte Unterstützung
Azure App Service IIS Express, others 1 Web- und API-Anwendungen, WebJobs für Hintergrundtasks Deployment slots
Azure Functions Visual Studio oder Azure Functions-Befehlszeilenschnittstelle Serverless, event-driven Deployment slots
Azure Kubernetes-Dienst Minikube, Docker, andere Agnostic Rolling update
Azure Container Apps – ein Dienst für containerbasierte Anwendungen Lokale Containerruntime Agnostic Revision management
Azure-Containerinstanzen Lokale Containerruntime Agnostic Not applicable
Azure Red Hat OpenShift Minikube, Docker, andere Agnostic Rolling update
Azure Service Fabric Lokaler Knotencluster Ausführbare Gastdatei, Dienstmodell, Akteurmodell, Container Rollierendes Upgrade (pro Dienst)
Azure Batch Not supported Command-line application Not applicable
Azure VMware-Lösung Agnostic Agnostic Keine integrierte Unterstützung

Notes

  1. Zu den Optionen gehören IIS Express für ASP.NET oder node.js (iisnode), PHP-Webserver, Azure-Toolkit für IntelliJ und Azure-Toolkit für Eclipse. App Service unterstützt auch das Remotedebuggen einer bereitgestellten Web-App.

Scalability

Service Autoscaling Load balancer Scale limit3
Azure-virtuelle Maschinen VM-Skalierungsgruppen Azure-Lastenausgleich Plattformimage: 1.000 Knoten pro Skalierungsgruppe, benutzerdefiniertes Image: 600 Knoten pro Skalierungsgruppe
Azure App Service Built-in service Integrated 30 Instanzen, 100 mit App Service-Umgebung
Azure Functions Built-in service Integrated 200 Instanzen pro Funktions-App
Azure Kubernetes-Dienst Pod autoscaling1, cluster autoscaling2 Azure Load Balancer oder Azure Application Gateway 5,000 nodes when using Uptime SLA
Azure Container Apps – ein Dienst für containerbasierte Anwendungen Scaling rules4 Integrated 15 Umgebungen pro Region (Standardgrenzwert), unbegrenzte Container-Apps pro Umgebung und Replikate pro Container-App (je nach verfügbaren Kernen)
Azure-Containerinstanzen Not supported Keine integrierte Unterstützung 100 Containergruppen pro Abonnement (Standardgrenzwert)
Azure Red Hat OpenShift Automatische Skalierung von Pods, automatische Skalierung von Clustern Azure Load Balancer oder Azure Application Gateway 250 Knoten pro Cluster (Standardgrenzwert)
Azure Service Fabric VM-Skalierungsgruppen Azure-Lastenausgleich 100 Knoten pro VM-Skalierungsgruppe
Azure Batch Not applicable Azure-Lastenausgleich Kerngrenzwert von 900 dedizierten und 100 niedriger Priorität (Standardgrenzwert)
Azure VMware-Lösung Built-in service5 Integrated6 Per VMware vCenter kann zwischen 3 ~ 16 VMware ESXi-Hosts verwaltet werden.

Notes

  1. Informationen finden Sie unter Automatisches Skalieren von Pods.
  2. Informationen finden Sie unter Automatisches Skalieren eines Clusters zur Erfüllung von Anwendungsanforderungen in Azure Kubernetes Service (AKS).
  3. Weitere Informationen finden Sie unter Einschränkungen für Azure-Abonnements und Dienste, Kontingente und Einschränkungen.
  4. Siehe Festlegen von Skalierungsregeln in Azure Container Apps.
  5. Siehe Skalieren einer Azure VMware-Lösung.
  6. Siehe VMware.

Availability

Service Multiregion-Failoveroption
Azure-virtuelle Maschinen Azure Traffic Manager, Azure Front Door und regionsübergreifende Azure Load Balancer
Azure App Service Azure Traffic Manager und Azure Front Door
Azure Functions Azure Traffic Manager und Azure Front Door
Azure Kubernetes Service (AKS) Azure Traffic Manager, Azure Front Door und Multi-Region-Cluster
Azure Container Apps – ein Dienst für containerbasierte Anwendungen Azure Traffic Manager und Azure Front Door
Azure-Containerinstanzen Azure Traffic Manager und Azure Front Door
Azure Red Hat OpenShift Azure Traffic Manager und Azure Front Door
Azure Service Fabric Azure Traffic Manager, Azure Front Door und regionsübergreifende Azure Load Balancer
Azure Batch Not applicable
Azure VMware-Lösung Not applicable

Geführte Tutorials zu Servicegarantien finden Sie unter Core Cloud Services – Azure-Architektur und Servicegarantien.

Security

Machen Sie sich mit den verfügbaren Sicherheitskontrollen und Sichtbarkeiten der einzelnen Dienste vertraut:

Other criteria

Service TLS Cost Geeignete Architekturstile
Azure-virtuelle Maschinen In VM konfiguriert Windows, Linux N-tier, big compute (HPC)
Azure App Service Supported App Service – Preise Web-queue-worker
Azure Functions Supported Functions pricing Microservices, event-driven architecture
Azure Kubernetes Service (AKS) Ingress controller AKS pricing Microservices, event-driven architecture
Azure Container Apps – ein Dienst für containerbasierte Anwendungen Ingress controller Preise für Container Apps Microservices, event-driven architecture
Azure-Containerinstanzen Use sidecar container Container Instances – Preise Microservices, task automation, batch jobs
Azure Red Hat OpenShift Supported Preise für Azure Red Hat OpenShift Microservices, event-driven architecture
Azure Service Fabric Supported Service Fabric – Preise Microservices, event-driven architecture
Azure Batch Supported Batch pricing Big compute (HPC)
Azure VMware-Lösung In VM konfiguriert Azure VMware-Lösungspreise VM-Workload basierend auf dem VMware-Format

Abwägen von Grenzwerten und Kosten

Führen Sie zusammen mit den vorherigen Vergleichstabellen eine detailliertere Bewertung der folgenden Aspekte des Kandidatendiensts durch:

Contributors

Dieser Artikel wird von Microsoft gepflegt. Er wurde ursprünglich von folgenden Mitwirkenden geschrieben:

Melden Sie sich bei LinkedIn an, um nicht öffentliche LinkedIn-Profile anzuzeigen.

Next steps

Wichtige Clouddienste – Azure-Computeoptionen: In diesem Learn-Modul wird erläutert, wie Computedienste gängige geschäftliche Anforderungen lösen können.