Azure bietet eine Vielzahl von Möglichkeiten zum Hosten Ihres Anwendungscodes. Der Begriff Compute bezieht sich auf das Hostingmodell für die Ressourcen, auf denen Ihre Anwendung ausgeführt wird. 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.
Dieses Diagramm bezieht sich auf diese beiden Migrationsstrategien:
- Lift und Shift ist eine Strategie zum Migrieren einer Workload zur Cloud ohne Überarbeitung der Anwendung oder Änderung des Codes. Es wird auch als erneutes Hosten bezeichnet. Weitere Informationen finden Sie im Azure-Migrations- und Modernisierungscenter.
- Cloudoptimierung ist eine Strategie für die Migration zur Cloud durch Umgestaltung einer Anwendung, um cloudeigene Features und Funktionen zu nutzen.
Die Ausgabe dieses Flussdiagramms ist Ihr Ausgangspunkt. Bewerten Sie als Nächstes den Dienst ausführlicher, 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:
- Virtuelle Azure-Computer. 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. Ein verwalteter FaaS-Dienst (Function-as-a-Service).
- Azure Kubernetes Service (AKS): Ein verwalteter Kubernetes-Dienst für die 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 Container Instances Dieser Dienst ist eine schnelle und einfache Möglichkeit zum Ausführen eines Containers in Azure. Sie müssen keine virtuellen Computer bereitstellen oder einen Dienst auf höherer Ebene einführen.
- Azure Red Hat OpenShift. Ein vollständig verwalteter OpenShift-Cluster für die Ausführung von Containern in der Produktion mit Kubernetes.
- Azure Spring Apps. Ein verwalteter Dienst, der für das Hosting von Spring Boot-Apps entworfen und optimiert ist.
- Azure Service Fabric. Eine Plattform für verteilte Systeme, die in vielen Umgebungen ausgeführt werden kann, z. B. Azure oder lokal
- Azure Batch. Ein verwalteter Dienst zum parallelen Ausführen großer HPC-Anwendungen (High Performance Computing).
Grundlegendes zu den Hostingmodellen
Bei Hostingmodellen lassen sich Clouddienste in drei Kategorien einteilen:
Mit Infrastructure-as-a-Service (IaaS) können Sie virtuelle Computer zusammen mit den zugehörigen Netzwerk- und Speicherkomponenten bereitstellen. Anschließend stellen Sie die Software und Anwendungen bereit, die für diese virtuellen Computer jeweils vorgesehen sind. Dieses Modell kommt einer traditionellen lokalen Umgebung am nächsten. Microsoft verwaltet die Infrastruktur. Sie verwalten weiterhin die virtuellen Computer.
Platform-as-a-Service (PaaS) bietet eine verwaltete Hostingumgebung, in der Sie Ihre Anwendung bereitstellen können, ohne virtuelle Computer oder Netzwerkressourcen verwalten zu müssen. Azure App Service und Azure Container Apps sind PaaS-Dienste.
Mit Functions-as-a-Service (FaaS) können Sie Ihren Code im Dienst bereitstellen, der ihn automatisch ausführt. Azure Functions ist ein FaaS-Dienst.
Hinweis
Azure Functions ist eine serverlose Computeoption von Azure. 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. Beispielsweise können virtuelle Azure-Computer mithilfe von VM-Skalierungsgruppen automatisch skaliert 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.
Dienst | Anwendungskomposition | Dichte | Mindestanzahl von Knoten | Zustandsverwaltung | Webhosting |
---|---|---|---|---|---|
Dokumentation zu virtuellen Computern | Agnostisch | Agnostisch | 12 | Zustandslos oder zustandsbehaftet | Agnostisch |
Azure App Service | Anwendungen, Container | Mehrere Apps pro Instanz über App-Service-Pläne | 1 | Zustandslos | Integriert |
Azure-Funktionen | Funktionen, Container | Serverlos 1 | Serverlos 1 | Zustandslos oder zustandsbehaftet 6 | Nicht verfügbar |
Azure Kubernetes Service (AKS) | Container | Mehrere Container pro Knoten | 3 3 | Zustandslos oder zustandsbehaftet | Agnostisch |
Azure Container Apps | Container | Serverlos | Serverlos | Zustandslos oder zustandsbehaftet | Agnostisch |
Azure Container Instances | Container | Keine dedizierten Instanzen | Keine dedizierten Knoten | Zustandslos | Agnostisch |
Azure Red Hat OpenShift | Container | Mehrere Container pro Knoten | 6 5 | Zustandslos oder zustandsbehaftet | Agnostisch |
Azure Spring Apps | Anwendungen, Microservices | Mehrere Apps pro Dienstinstanz | 2 | Zustandslos | Integriert |
Azure Service Fabric | Dienste, ausführbare Gastdateien, Container | Mehrere Dienste pro VM | 53 | Zustandslos oder zustandsbehaftet | Agnostisch |
Azure Batch | Geplante Aufträge | Mehrere Apps pro VM | 14 | Zustandslos | Nein |
Hinweise
- 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.
- Höhere SLA mit mindestens zwei Instanzen.
- Empfohlen für Produktionsumgebungen.
- Kann nach Abschluss eines Auftrags auf 0 herunterskaliert werden.
- Drei für primäre Knoten und drei für Workerknoten.
- Bei der Verwendung von Durable Functions.
Netzwerk
Dienst | VNet-Integration | Hybridkonnektivität |
---|---|---|
Dokumentation zu virtuellen Computern | Unterstützt | Unterstützt |
Azure App Service | Unterstützt 1 | Unterstützt 2 |
Azure-Funktionen | Unterstützt 1 | Unterstützt 3 |
Azure Kubernetes Service (AKS) | Unterstützt | Unterstützt |
Azure Container Apps | Unterstützt | Unterstützt |
Azure Container Instances | Unterstützt | Unterstützt |
Azure Red Hat OpenShift | Unterstützt | Unterstützt |
Azure Spring Apps | Unterstützt | Unterstützt |
Azure Service Fabric | Unterstützt | Unterstützt |
Azure Batch | Unterstützt | Unterstützt |
Notizen
- Erfordert App Service-Umgebung (App Service Environment, ASE).
- Verwenden Sie Azure App Service-Hybridverbindungen.
- Erfordert App Service Plan oder Azure Functions Premium-Plan.
DevOps
Dienst | Lokales Debugging | Programmiermodell | Anwendungsupdate |
---|---|---|---|
Dokumentation zu virtuellen Computern | Agnostisch | Agnostisch | Keine integrierte Unterstützung |
Azure App Service | IIS Express, weitere1 | Web- und API-Anwendungen, WebJobs für Hintergrundtasks | Bereitstellungsslots |
Azure-Funktionen | Visual Studio oder Azure Functions-Befehlszeilenschnittstelle | Serverlos, ereignisgesteuert | Bereitstellungsslots |
Azure Kubernetes Service (AKS) | Minikube, Docker, andere | Agnostisch | Paralleles Update |
Azure Container Apps | Lokale Containerruntime | Agnostisch | Revisionsverwaltung |
Azure Container Instances | Lokale Containerruntime | Agnostisch | Nicht verfügbar |
Azure Red Hat OpenShift | Minikube, Docker, andere | Agnostisch | Paralleles Update |
Azure Spring Apps | Visual Studio Code, Intellij, Eclipse | Spring Boot, Steeltoe | Paralleles Upgrade, Blau-Grün-Bereitstellung |
Azure Service Fabric | Lokaler Knotencluster | Ausführbare Gastdatei, Dienstmodell, Akteurmodell, Container | Rollierendes Upgrade (pro Dienst) |
Azure Batch | Nicht unterstützt | Befehlszeilenanwendung | Nicht verfügbar |
Notizen
- Optionen umfassen: 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.
Skalierbarkeit
Dienst | Automatische Skalierung | Load Balancer | Skalierungslimit3 |
---|---|---|---|
Dokumentation zu virtuellen Computern | VM-Skalierungsgruppen | Azure Load Balancer | Plattformimage: 1.000 Knoten pro Skalierungsgruppe, benutzerdefiniertes Image: 600 Knoten pro Skalierungsgruppe |
Azure App Service | Integrierter Dienst | Integriert | 30 Instanzen, 100 mit App Service-Umgebung |
Azure-Funktionen | Integrierter Dienst | Integriert | 200 Instanzen pro Funktionen-App |
Azure Kubernetes Service (AKS) | Automatisches Skalieren von Pods1, automatisches Skalieren von Clustern2 | Azure Load Balancer oder Application Gateway | 5.000 Knoten bei Verwendung der Betriebszeit-SLA |
Azure Container Apps | Skalierungsregeln4 | Integriert | 5 Umgebungen pro Region, 20 Container-Apps pro Umgebung, 30 Replikate pro Container-App |
Azure Container Instances | Nicht unterstützt | Keine integrierte Unterstützung | 20 Containergruppen pro Abonnement (Standardgrenzwert) |
Azure Red Hat OpenShift | Automatisches Skalieren von Pods, automatisches Skalieren von Clustern | Azure Load Balancer oder Application Gateway | 60 Knoten pro Cluster (Standardgrenzwert) |
Azure Spring Apps | Integrierter Dienst | Integriert | 500 App-Instanzen in Standard |
Azure Service Fabric | VM-Skalierungsgruppen | Azure Load Balancer | 100 Knoten pro VM-Skalierungsgruppe |
Azure Batch | Nicht verfügbar | Azure Load Balancer | 20 Kerne (Standardgrenzwert) |
Notizen
- Informationen finden Sie unter Automatisches Skalieren von Pods.
- Informationen finden Sie unter Automatisches Skalieren eines Clusters zur Erfüllung von Anwendungsanforderungen in Azure Kubernetes Service (AKS).
- Weitere Informationen finden Sie unter Einschränkungen für Azure-Abonnements und Dienste, Kontingente und Einschränkungen.
- Siehe Festlegen von Skalierungsregeln in Azure Container Apps.
Verfügbarkeit
Dienst | SLA | Failover über mehrere Regionen |
---|---|---|
Dokumentation zu virtuellen Computern | SLA für Virtual Machines | Azure Traffic Manager, Azure Front Door und regionsübergreifende Azure Load Balancer |
Azure App Service | SLA für App Service | Azure Traffic Manager und Azure Front Door |
Azure-Funktionen | SLA für Functions | Azure Traffic Manager und Azure Front Door |
Azure Kubernetes Service (AKS) | SLA für AKS | Azure Traffic Manager, Azure Front Door und Multi-Region-Cluster |
Azure Container Apps | SLA für Azure Container Apps | Azure Traffic Manager und Azure Front Door |
Azure Container Instances | SLA für Container Instances | Azure Traffic Manager und Azure Front Door |
Azure Red Hat OpenShift | SLA für Azure Red Hat OpenShift | Azure Traffic Manager und Azure Front Door |
Azure Spring Apps | Häufig gestellte Fragen zu Azure Spring Apps | Azure Traffic Manager, Azure Front Door und Multi-Region-Cluster |
Azure Service Fabric | SLA für Service Fabric | Azure Traffic Manager, Azure Front Door und regionsübergreifende Azure Load Balancer |
Azure Batch | SLA für Azure Batch | Nicht verfügbar |
Geführte Tutorials zu Servicegarantien finden Sie unter Core Cloud Services – Azure-Architektur und Servicegarantien.
Sicherheit
Machen Sie sich mit den verfügbaren Sicherheitskontrollen und Sichtbarkeiten der einzelnen Dienste vertraut:
- Azure-Windows-VM
- Virtueller Azure-Linux-Computer
- Azure App Service
- Azure-Funktionen
- Azure Kubernetes Service
- Azure Container Instances
- Azure Spring Apps
- Azure Service Fabric
- Azure Batch
Andere Kriterien
Abwägen von Grenzwerten und Kosten
Führen Sie zusammen mit den vorherigen Vergleichstabellen eine detailliertere Bewertung der folgenden Aspekte des Kandidatendiensts durch:
Beitragende
Dieser Artikel wird von Microsoft gepflegt. Er wurde ursprünglich von folgenden Mitwirkenden geschrieben:
Hauptautoren:
- Ayobami Ayodeji | Senior Program Manager
- Jelle Druyts | Principal Service Engineer
- Martin Gjoshevski | Senior Service Engineer
- Phil Huang | Senior Cloud Solution Architect
- Julie Ng | Senior Service Engineer
- Paolo Salvatori | Principal Service Engineer
Melden Sie sich bei LinkedIn an, um nicht öffentliche LinkedIn-Profile anzuzeigen.
Nächste Schritte
- Wichtige Clouddienste – Azure-Computeoptionen: In diesem Microsoft Learn-Modul wird erläutert, wie Computedienste gängige geschäftliche Anforderungen lösen können.