Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Azure bietet viele Möglichkeiten, Ihren Anwendungscode zu hosten. Der Begriff "Compute" bezieht sich auf das Hostingmodell für die Ressourcen, auf denen Ihre Anwendung ausgeführt wird. Dieser Artikel hilft Ihnen bei der Auswahl eines Computediensts für Ihre Anwendung.
Architektur
Verwenden Sie das folgende Flussdiagramm, um einen Kandidaten-Computedienst auszuwählen.
Laden Sie eine Visio-Datei dieser Architektur herunter.
Das vorherige Diagramm bezieht sich auf zwei Migrationsstrategien:
Heben und Verschieben: Eine Strategie für die Migration einer Workload in die Cloud, ohne die Anwendung neu zu entwerfen oder Codeänderungen vorzunehmen. Es wird auch als Erneutes Hosten bezeichnet. Weitere Informationen finden Sie im Azure Cloud Migration and Modernization Center.
Cloud optimiert: Eine Strategie für die Migration in die Cloud durch umgestalten einer Anwendung, um cloudeigene Features und Funktionen nutzen zu können.
Die Ausgabe aus diesem Flussdiagramm 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 für Ihre Anwendung oder Arbeitsauslastung ungeeignet. Erweitern Sie in diesem Fall Ihre Analyse, um andere Computedienste einzuschließen.
Wenn Ihre Anwendung aus mehreren Workloads besteht, bewerten Sie jede Workload separat. Eine vollständige Lösung kann zwei oder mehr Computedienste enthalten.
Grundlegende Features verstehen
Wenn Sie mit dem Azure-Dienst, den Sie im vorherigen Abschnitt auswählen, nicht vertraut sind, lesen Sie die folgende Übersichtsdokumentation:
Azure App Service ist ein verwalteter Dienst zum Hosten von Web-Apps, mobilen App-Back-Ends, RESTful-APIs oder automatisierten Geschäftsprozessen.
Azure Batch ist ein verwalteter Dienst zum Ausführen von groß angelegten parallelen und hochleistungsbasierten Computinganwendungen (HPC).
Azure Container Apps ist ein verwalteter Dienst, der auf Kubernetes basiert und die Bereitstellung containerisierter Anwendungen in einer serverlosen Umgebung vereinfacht.
Azure Container Instances ist ein Dienst zum Ausführen eines einzelnen Containers oder einer Gruppe von Containern in Azure. Containerinstanzen bieten keine vollständige Container-Orchestrierung, aber Sie können Container implementieren, ohne virtuelle Computer (VMs) bereitstellen zu müssen oder einen Dienst auf höherer Ebene zu übernehmen.
Azure Functions ist ein Dienst, der verwaltete Funktionen bereitstellt, die basierend auf einer Vielzahl von Triggertypen für ereignisgesteuerte Anwendungen ausgeführt werden.
Azure Kubernetes Service (AKS) ist ein verwalteter Kubernetes-Dienst für die Ausführung containerisierter Anwendungen.
Azure Red Hat OpenShift ist ein vollständig verwalteter OpenShift-Cluster zum Ausführen von Containern in der Produktion mit Kubernetes.
Azure Service Fabric ist eine verteilte Systemplattform, die in vielen Umgebungen ausgeführt werden kann, einschließlich Azure oder lokal.
Azure VMware Solution ist ein verwalteter Dienst zum systemeigenen Ausführen von VMware-Workloads in Azure.
Virtuelle Azure-Computer sind ein Dienst, in dem Sie virtuelle Computer in einem virtuellen Azure-Netzwerk bereitstellen und verwalten.
Grundlegendes zu den Hostingmodellen
Für Hostingmodelle fallen Clouddienste in drei Kategorien:
Mit der Infrastruktur als Dienst (IaaS) können Sie virtuelle Computer zusammen mit den zugehörigen Netzwerk- und Speicherkomponenten bereitstellen. Anschließend können Sie alle Software und Anwendungen auf diesen virtuellen Computern bereitstellen. Dieses Modell ist am nächsten mit einer herkömmlichen lokalen Umgebung. Microsoft verwaltet die Infrastruktur, und Sie verwalten die virtuellen Computer.
Platform as a Service (PaaS) bietet eine verwaltete Hostingumgebung, in der Sie Ihre Anwendung bereitstellen können, ohne VMs oder Netzwerkressourcen verwalten zu müssen. App-Dienst und Container-Apps sind PaaS-Dienste.
Mit Funktionen als Dienst (FaaS) können Sie Ihren Code für den Dienst bereitstellen, der ihn automatisch ausführt. Azure Functions ist ein FaaS-Dienst.
Hinweis
Azure Functions ist ein Azure Serverless Compute-Angebot. Informationen dazu, wie dieser Dienst mit anderen serverlosen Azure-Angeboten wie Azure Logic Apps für serverlose Workflows vergleicht, finden Sie unter Auswählen der richtigen Integrations- und Automatisierungsdienste in Azure.
Es gibt ein Spektrum von IaaS bis hin zu voll verwalteten PaaS. Azure-VMs können z. B. automatisch skaliert werden, indem skalierungssätze für virtuelle Computer verwendet werden. Diese Funktion ist nicht streng paaS, aber sie ähnelt den Verwaltungsfunktionen in PaaS.
Es gibt einen Kompromiss zwischen Kontrolle und Leichtigkeit des Managements. IaaS bietet die meisten Kontrolle, Flexibilität und Portabilität. Sie müssen jedoch die von Ihnen erstellten VMs und Netzwerkkomponenten bereitstellen, konfigurieren und verwalten. FaaS-Dienste verwalten automatisch fast alle Aspekte der Ausführung einer Anwendung. PaaS bietet eine partielle Verwaltung, während eine Benutzerkonfiguration erforderlich ist.
Dienstleistung | Anwendungskomposition | Dichte | Mindestanzahl von Knoten | Zustandsverwaltung | Webhosting |
---|---|---|---|---|---|
Virtual Machines | Agnostiker | Agnostiker | 1 2 | Zustandslos oder zustandslos | Agnostiker |
App Service | Anwendungen, Container | Mehrere Apps für jede Instanz mithilfe des App Service-Plans | 1 | Zustandslos | Integriert |
Azure-Funktionen | Funktionen, Container | Serverless 1 | Serverless 1 | Zustandslos oder zustandslos 6 | Nicht anwendbar |
AKS | Behälter | Mehrere Container für jeden Knoten | 3 3 | Zustandslos oder zustandslos | Agnostiker |
Container Apps | Behälter | Serverlos | Serverlos | Zustandslos oder zustandslos | Agnostiker |
Container Instances | Behälter | Keine dedizierten Instanzen | Keine dedizierten Knoten | Zustandslos | Agnostiker |
Azure Red Hat OpenShift | Behälter | Mehrere Container für jeden Knoten | 6 5 | Zustandslos oder zustandslos | Agnostiker |
Service Fabric | Dienste, Ausführbare Gastdateien, Container | Mehrere Dienste für jeden virtuellen Computer | 5 3 | Zustandslos oder zustandslos | Agnostiker |
Batch | Geplante Aufträge | Mehrere Apps für jeden virtuellen Computer | 1 4 | Zustandslos | Nein |
Azure VMware-Lösung | Agnostiker | Agnostiker | 3 7 | Zustandslos oder zustandslos | Agnostiker |
Hinweise:
1Für Azure-Funktionen ist der Verbrauchsplan serverlos. Für einen App Service-Plan werden Funktionen auf den virtuellen Computern ausgeführt, die für diesen Plan zugewiesen sind. Wählen Sie den richtigen Serviceplan für Azure Functions aus.
2Vereinbarung auf höherer Serviceebene (SLA) mit mindestens zwei Instanzen.
3Für Produktionsumgebungen empfohlen.
4Kann nach Abschluss des Auftrags auf Null skaliert werden.
5Drei primäre Knoten und drei Arbeitsknoten.
6Wenn Sie dauerhafte Funktionen verwenden.
7Siehe Hosts.
Vernetzung
Dienstleistung | Integration in ein virtuelles Netzwerk | Hybridkonnektivität |
---|---|---|
Virtual Machines | Unterstützt | Unterstützt |
App Service | Unterstützt 1 | Unterstützt 2 |
Azure-Funktionen | Unterstützt 1 | Unterstützt 3 |
AKS | Supported | Unterstützt |
Container Apps | Unterstützt | Unterstützt |
Container Instances | Supported | Supported |
Azure Red Hat OpenShift | Supported | Unterstützt |
Service Fabric | Unterstützt | Unterstützt |
Batch | Unterstützt | Unterstützt |
Azure VMware-Lösung | Supported | Supported |
Hinweise:
1Erfordert Die App Service-Umgebung oder ein dediziertes Preisniveau für Compute.
2Verwenden sie Hybridverbindungen für App Service.
3Erfordert einen App Service-Plan oder einen Azure Functions Premium-Plan.
DevOps
Dienstleistung | Lokales Debugging | Programmiermodell | Anwendungsupdate |
---|---|---|---|
Virtual Machines | Agnostiker | Agnostiker | Keine integrierte Unterstützung |
App Service | IIS Express, andere 1 | Web- und API-Anwendungen, WebJobs für Hintergrundaufgaben | Bereitstellungsplätze |
Azure-Funktionen | Visual Studio oder Azure Functions CLI | Serverless, ereignisgesteuert | Bereitstellungsplätze |
AKS | Minikube, Docker, andere | Agnostiker | Rollupdate |
Container Apps | Laufzeit des lokalen Containers | Agnostiker | Revisionsverwaltung |
Container Instances | Laufzeit des lokalen Containers | Agnostiker | Nicht anwendbar |
Azure Red Hat OpenShift | Minikube, Docker, andere | Agnostiker | Rollupdate |
Service Fabric | Lokaler Knotencluster | Gastdatei, Dienstmodell, Actor-Modell, Container | Rollupgrade für jeden Dienst |
Batch | Nicht unterstützt | Befehlszeilenanwendung | Nicht anwendbar |
Azure VMware-Lösung | Agnostiker | Agnostiker | Keine integrierte Unterstützung |
Note:
1Optionen umfassen IIS Express für ASP.NET oder node.js (iisnode), PHP-Webserver, Azure Toolkit für IntelliJ und Azure Toolkit für Eclipse. Der App-Dienst unterstützt auch das Remotedebugging von bereitgestellten Web-Apps.
Skalierbarkeit
Dienstleistung | Automatische Skalierung | Lastverteiler | Skalierungsgrenze3 |
---|---|---|---|
Virtual Machines | VM-Skalierungsgruppen | Azure-Lastenausgleich | Plattformimage: 1.000 Knoten für jeden Skalierungssatz. Benutzerdefiniertes Bild: 600 Knoten für jeden Skalierungssatz. |
App Service | Integrierter Dienst | Integriert | 30 Instanzen, 100 mit App Service Environment |
Azure-Funktionen | Integrierter Dienst | Integriert | 200 Instanzen für jede Funktions-App |
AKS | Pod autocaling1, cluster autocaling2 | Lastenausgleichsmodul oder Azure-Anwendungsgateway | 5.000 Knoten, wenn Sie SLA für die Betriebszeit verwenden |
Container Apps | Skalierungsregeln4 | Integriert | 15 Umgebungen für jede Region (Standardgrenzwert), unbegrenzte Container-Apps für jede Umgebung und Replikate für jede Container-App (je nach verfügbaren Kernen) |
Container Instances | Nicht unterstützt | Keine integrierte Unterstützung | 100 Containergruppen für jedes Abonnement (Standardgrenzwert) |
Azure Red Hat OpenShift | Pod autoscaling, cluster autocaling | Lastenausgleichsmodul oder Anwendungsgateway | 250 Knoten für jeden Cluster (Standardgrenzwert) |
Service Fabric | VM-Skalierungsgruppen | Lastverteiler | 100 Knoten für jeden Skalierungssatz für virtuelle Computer |
Batch | Nicht anwendbar | Lastverteiler | Kerngrenzwert von 900 dedizierten und 100 niedriger Priorität (Standardgrenzwert) |
Azure VMware-Lösung | Integrierter Dienst5 | Integriert6 | 3 bis 16 VMware ESXi-Hosts pro VMware vCenter |
Hinweise:
1Siehe Autoskalen-Pods.
2Siehe Automatisches Skalieren eines Clusters zur Erfüllung der Anwendungsanforderungen an AKS.
3Siehe Azure-Abonnement- und Dienstbeschränkungen, Kontingente und Einschränkungen
4Siehe Festlegen von Skalierungsregeln in Container-Apps
5Siehe Skalierung der Azure VMware-Lösung
6Siehe VMware VM
Verfügbarkeit
Dienstleistung | Multiregion-Failoveroption |
---|---|
Virtual Machines | Azure Traffic Manager, Azure Front Door und regionsübergreifender Lastenausgleich |
App Service | Traffic Manager und Azure Front Door |
Azure-Funktionen | Traffic Manager und Azure Front Door |
AKS | Traffic Manager, Azure Front Door und Multiregion Cluster |
Container Apps | Traffic Manager und Azure Front Door |
Container Instances | Traffic Manager und Azure Front Door |
Azure Red Hat OpenShift | Traffic Manager und Azure Front Door |
Service Fabric | Traffic Manager, Azure Front Door und regionsübergreifender Lastenausgleich |
Batch | Nicht anwendbar |
Azure VMware-Lösung | Nicht anwendbar |
Eine geführte Schulung zu Servicegarantien finden Sie unter Azure-Architektur und Dienstgarantien.
Sicherheit
Überprüfen und verstehen Sie die verfügbaren Sicherheitskontrollen und die Sichtbarkeit für jeden der folgenden Dienste:
- AKS
- App-Dienst
- Azure-Funktionen
- Virtuelle Computer für Linux
- Azure VMware-Lösung
- Virtuelle Computer für Windows
- Batch
- Container-Anwendungen
- Containerinstanzen
- Service Fabric
Weitere Kriterien
Dienstleistung | TLS | Kosten | Geeignete Architekturstile |
---|---|---|---|
Virtual Machines | In VM konfiguriert | Windows, Linux | N-Ebene, big compute (HPC) |
App Service | Unterstützt | Preise für App-Dienste | Webwarteschlangen-Worker |
Azure-Funktionen | Unterstützt | Preise für Azure Functions | Microservices, ereignisgesteuerte Architektur |
AKS | Eingangscontroller | AKS-Preise | Microservices, ereignisgesteuerte Architektur |
Container Apps | Eingangscontroller | Preise für Container-Apps | Microservices, ereignisgesteuerte Architektur |
Container Instances | Verwenden von Sidecar-Containern | Preise für Containerinstanzen | Microservices, Aufgabenautomatisierung, Batchaufträge |
Azure Red Hat OpenShift | Unterstützt | Azure Red Hat OpenShift-Preise | Microservices, ereignisgesteuerte Architektur |
Service Fabric | Unterstützt | Service Fabric-Preise | Microservices, ereignisgesteuerte Architektur |
Batch | Unterstützt | Batchpreise | Big Compute (HPC) |
Azure VMware-Lösung | In VM konfiguriert | Preise für Azure VMware-Lösungen | VM-Workload basierend auf dem VMware-Format |
Grenzwerte und Kosten berücksichtigen
Führen Sie zusammen mit den vorherigen Vergleichstabellen eine detailliertere Bewertung der folgenden Aspekte des Kandidatendiensts durch:
Beitragende
Microsoft verwaltet diesen Artikel. Die folgenden Mitwirkenden haben diesen Artikel geschrieben.
- Ayobami Ayodeji | Leitender Programmmanager
- Jelle Druyts | Principal Service Engineer
- Martin Gjoshevski | Senior Service Engineer
- Phil Huang | Senior Cloud Solution Architect
- Julie Ng | Senior Service Engineer
- Paolo Salvadori | Principal Service Engineer
Um nicht-öffentliche LinkedIn-Profile anzuzeigen, melden Sie sich bei LinkedIn an.