Auswählen eines Azure-Computediensts
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.
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
- 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 Vereinbarung zum Servicelevel (SLA) mit zwei oder mehr 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.
- 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
- Erfordert Die App Service-Umgebung oder ein dediziertes Preisniveau für Die Berechnung.
- Verwenden Sie Azure App Service-Hybridverbindungen.
- 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
- 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
- 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.
- Siehe Skalieren einer Azure VMware-Lösung.
- 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:
- Azure-Windows-VM
- Azure-Linux-VM
- Azure App Service
- Azure Functions
- Azure Kubernetes-Dienst
- Azure-Containerinstanzen
- Azure-Container-Apps
- Azure Service Fabric
- Azure Batch
- Azure VMware-Lösung
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:
- 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.
Next steps
Wichtige Clouddienste – Azure-Computeoptionen: In diesem Learn-Modul wird erläutert, wie Computedienste gängige geschäftliche Anforderungen lösen können.