Cloud Foundry im Vergleich zu Kubernetes Engine
Zuletzt aktualisiert am
Dieser Leitfaden vergleicht zwei Runtime-Services von STACKIT: STACKIT Cloud Foundry (SCF) und STACKIT Kubernetes Engine (SKE). Ziel ist es, Ihnen zuverlässige Runtimes in der STACKIT Cloud bereitzustellen, damit Sie Ihre Anwendungen effizient entwickeln und betreiben können.
Wir betrachten verschiedene Merkmale, die Ihnen bei der Entscheidung helfen, welche Runtime am besten zu Ihren Anforderungen passt. Dazu gehören:
- Wie die Runtime aufgebaut ist (Architektur).
- Wie sie bereitgestellt wird (Deployment-Modell).
- Wie gut sie steigende Last bewältigt (Skalierung).
- Wie Traffic zu Ihren Anwendungen geleitet wird (Routing).
- Wie gut sie mit anderen Tools zusammenarbeitet (Ökosystem-Integration).
- Wie viel Kontrolle Sie haben (Flexibilität).
- Wie Sie Leistung und Fehler überwachen (Logging und Monitoring).
- Wie Ressourcen genutzt werden (Ressourcenmanagement).
- Wie Sie Anwendungen über ihren Lebenszyklus hinweg verwalten (Application Lifecycle Management).
- Welche Kompetenzen Ihr Entwicklerteam benötigt (Anforderungsprofil).
- Welche Sicherheitsmerkmale geboten werden (Security Features).
Durch den Vergleich dieser Merkmale zeigen wir Ihnen die Stärken beider Runtimes und für welche Anwendungstypen sie besonders geeignet sind. Bevorzugen Sie eine Plattform, welche die zugrunde liegende Infrastruktur für Sie verwaltet, oder benötigen Sie mehr Kontrolle über Ihre Container? Dieser Leitfaden unterstützt Sie dabei, den passenden STACKIT Runtime-Service für Ihre Projekte auszuwählen.
Wenn Sie tiefer in die einzelnen Runtime-Services einsteigen möchten, nutzen Sie die folgenden Links:
STACKIT Cloud Foundry
Abschnitt betitelt „STACKIT Cloud Foundry“Overview
Abschnitt betitelt „Overview“STACKIT Cloud Foundry ist eine Platform as a Service (PaaS), die das Infrastrukturmanagement abstrahiert. Das macht sie ideal für Entwickler, die mit 12-Factor-Apps vertraut sind und sich auf den Code konzentrieren möchten:
- Vereinfachen Sie Deployments durch einen schlanken Build-Prozess. Quellcode wird automatisch in Container paketiert und direkt auf die Plattform gepusht, für das typische
cf push-Erlebnis. - Nutzen Sie das Rollen- und Rechtemanagement sowie die Multi-Tenancy-Umgebung, um die gemeinsame Nutzung durch viele Kunden zu unterstützen.
- Domain-Zuweisung, Load Balancing und Netzwerkkonfiguration werden automatisch verwaltet.
- Verwenden Sie den integrierten Service Marketplace, um Data Services einfach zu erstellen und mit Anwendungen zu binden.
- Nutzen Sie den enthaltenen App Autoscaler, um Ressourcen lastabhängig anzupassen und Anwendungen nahtlos zu skalieren.
STACKIT Cloud Foundry übernimmt einen Großteil der operativen Aufgaben, sodass Sie sich auf die Bereitstellung fachlicher Mehrwerte durch Ihre Anwendungen konzentrieren können.
Zielgruppen
Abschnitt betitelt „Zielgruppen“Welche Personen oder Teams profitieren besonders von STACKIT Cloud Foundry?
- Application- und Full-Stack-Entwickler, die schnelle Entwicklung priorisieren und den Fokus auf Code statt Infrastruktur legen.
- DevOps-Ingenieure, die Infrastrukturaufwand in automatisierten Test- und Deployment-Pipelines reduzieren möchten.
- Teams mit begrenzter Infrastruktur-Expertise, die eine gemanagte Plattform benötigen.
- IT-Manager, die kosteneffiziente Cloud-Lösungen mit planbaren Ausgaben suchen.
Organisationstypen
Abschnitt betitelt „Organisationstypen“Welche Organisationen profitieren besonders von STACKIT Cloud Foundry?
- Unternehmen mit Fokus auf schnellen Markteintritt, Rapid Prototyping und Anwendungsentwicklung.
- Kleine und mittlere Unternehmen (KMU), die kosteneffiziente Skalierbarkeit suchen.
- Organisationen, die Entwicklerproduktivität höher gewichten als Infrastruktur-Anpassbarkeit.
Typische Anwendungsfälle
Abschnitt betitelt „Typische Anwendungsfälle“Welche Anwendungsfälle und Szenarien werden von STACKIT Cloud Foundry besonders gut unterstützt?
- Zustandslose Webanwendungen mit Microservice-Architektur, die pro Instanz nicht mehr als 32 GB Arbeitsspeicher benötigen und nutzungsabhängig automatisch skalieren.
- Containerisierte Anwendungen, die Anfragen über HTTPS oder WebSockets bereitstellen.
- Entwicklung von Business-Anwendungen mit Fokus auf die Umsetzung reiner Fachlogik.
- API-Services für mobile Anwendungen, andere Services oder Drittanbieter-Integrationen.
- Geplante oder ereignisgesteuerte Tasks, die nicht mehr als 32 GB Arbeitsspeicher benötigen.
Kostenaspekte
Abschnitt betitelt „Kostenaspekte“Dieser Abschnitt erläutert das Kostenmodell einschließlich einer Beispielrechnung für eine redundant auf STACKIT Cloud Foundry bereitgestellte 2-Tier-Anwendung.
- Abrechnungsmodell: Pay-per-use.
- Preis: 0,03 € pro MB RAM pro Monat.
- Preisliste.
- Kostenrechner.
Beispielanwendungsfall:
| Component | Genutzter RAM | Anzahl der Instanzen | Kosten pro genutztem MB RAM | Monatliche Durchschnittsstunden | Gesamtkosten |
|---|---|---|---|---|---|
| Frontend | 200 MB | 2 | €0.03 | 720 | €12.00 |
| Backend | 600 MB | 2 | €0.03 | 720 | €36.00 |
STACKIT Kubernetes Engine
Abschnitt betitelt „STACKIT Kubernetes Engine“Overview
Abschnitt betitelt „Overview“STACKIT Kubernetes Engine ist ein gemanagter Kubernetes Service, der eine fein granulare Kontrolle über die Infrastruktur und hohe Flexibilität beim Betrieb containerisierter Anwendungen bietet. Er eignet sich für Teams, die mit diesen Technologien vertraut sind:
- Kubernetes arbeitet mit einer zentralen, hochverfügbaren und redundanten Control Plane zur Koordination der Worker Nodes im Cluster.
- Containerisierte Anwendungen laufen auf Worker Nodes, welche die notwendige Infrastruktur für den Betrieb bereitstellen.
- Kubernetes ermöglicht deklarative Betriebsmodelle, sodass Sie gewünschte Zustände definieren und Anwendungen resilient ohne manülle Eingriffe betreiben können.
- Kubernetes ermöglicht und steuert den externen Zugriff auf Services innerhalb Ihres Clusters.
- Deployments werden bedarfsgerecht automatisch skaliert, sowohl auf Infrastrukturebene (Nodes) als auch auf Anwendungsebene (Pods).
- Der Service wird durch eine große, aktive Community sowie ein breites Ökosystem aus Tools und Services unterstützt und entwickelt sich dadurch kontinuierlich weiter.
Mit STACKIT Kubernetes Engine erhalten Sie fein granulare Kontrolle über die Infrastruktur und profitieren von erweiterten Orchestrierungsfunktionen für Workloads. Dadurch können Sie Anwendungen mit hoher Zuverlässigkeit, optimaler Performance und umfangreichen Anpassungsmöglichkeiten bereitstellen, betreiben und warten.
Zielgruppen
Abschnitt betitelt „Zielgruppen“Welche Personen oder Teams profitieren besonders von STACKIT Kubernetes Engine?
- Site Reliability Engineers (SREs), die eine fein granulare Kontrolle über Zuverlässigkeit und Skalierung benötigen.
- Platform Engineers, die komplexe containerisierte Umgebungen verwalten und anpassen.
- Cloud-Architekten, die Multi-Cloud-Infrastrukturen entwerfen und Portabilität zwischen Cloud-Umgebungen sicherstellen, um Vendor Lock-in zu vermeiden.
- DevOps-Teams, die fortgeschrittene Automatisierung und CI/CD-Integration mit stark anpassbaren Workflows suchen.
- IT-Manager, die flexible Runtime-Services mit umfangreichen Anpassungsoptionen benötigen.
Organisationstypen
Abschnitt betitelt „Organisationstypen“Welche Organisationen profitieren besonders von STACKIT Kubernetes Engine?
- Unternehmen mit IT-Teams, die Erfahrung im Betrieb komplexer IT-Infrastrukturen haben.
- Regulatorisch geprägte Organisationen mit hohen Anforderungen an Compliance, Security Controls und Anpassbarkeit.
- Unternehmen, die verteilte Anwendungen mit mehreren verbundenen Services und komplexem Orchestrierungsbedarf betreiben.
- Unternehmen, die gemanagte Cloud-Services bereitstellen, zum Beispiel Data Services oder Messaging Services.
Typische Anwendungsfälle
Abschnitt betitelt „Typische Anwendungsfälle“Welche Anwendungsfälle und Szenarien werden von STACKIT Kubernetes Engine besonders gut unterstützt?
- Containerisierte, hochskalierbare Webanwendungen mit Microservice-Architektur.
- Stateful Services, beispielsweise Datenbankdienste, unter Nutzung fortgeschrittener Kubernetes-Betriebskonzepte wie Operators.
- IoT-Anwendungen mit Protokollen jenseits von HTTPS, zum Beispiel AMQP und MQTT.
- Containerisierte Commercial-Off-The-Shelf-(COTS)-Anwendungen in Multi-Cloud-Umgebungen.
- KI- und ML-Anwendungsfälle mit GPU-Bedarf, etwa für Modelltraining.
- Lösungen auf Basis von Open-Source-Komponenten aus dem breiten CNCF-Ökosystem.
Kostenaspekte
Abschnitt betitelt „Kostenaspekte“Dieser Abschnitt erläutert das Kostenmodell einschließlich einer Beispielrechnung für eine redundant auf STACKIT Kubernetes Engine bereitgestellte 2-Tier-Anwendung.
- Abrechnungsmodell: Pay-per-use.
- Preis: 74,63 € pro Cluster-Control-Plane und Monat; zusätzliche Compute Engine Kosten abhängig von den konfigurierten Worker Nodes pro Cluster.
- Preisliste.
- Kostenrechner.
Die Anwendung im Beispielanwendungsfall besteht aus folgenden Komponenten:
- Frontend
- Backend
- Anwendungsspezifischer Datenspeicher
- GitOps-Tooling
| Komponente | Node-Typ | Anzahl der Worker Nodes | Monatliche Durchschnittsstunden | Gesamtkosten |
|---|---|---|---|---|
| Cluster | g2i.4 CPU-Kerne: 4 Speicher: 50 GB | 2 | 720 | €315.78 |
| Control Plane | --- | --- | 720 | €74.63 |
Den passenden Runtime-Service für Ihren Anwendungsfall wählen
Abschnitt betitelt „Den passenden Runtime-Service für Ihren Anwendungsfall wählen“Organisationen sollten Teamzusammensetzung, technische Anforderungen, Betriebsmodell und Managementpräferenzen berücksichtigen, um den passenden Runtime-Service auszuwählen.
Produktdetails
Abschnitt betitelt „Produktdetails“Dieser Abschnitt bietet eine vergleichende Übersicht über die beiden STACKIT Runtime-Services und dient als kompakte Orientierung.
| Kategorie | Kriterium | STACKIT Cloud Foundry | STACKIT Kubernetes Engine |
|---|---|---|---|
| Allgemein | Architektur |
|
|
| Dokumentation | SCF Dokumentation | SKE Dokumentation | |
| Preismodell | Pay-per-use, MB RAM/Stunde (Preisliste) | Pay-per-use, Control Plane + Worker Nodes abhängig von Node-Typen (Preisliste), stundenweise berechnet | |
| Kompetenzen | Entwicklerprofil |
|
|
| Lernkurve | Niedrig für Entwickler, mit typischem | Erfordert Kenntnisse zu Infrastruktur, Kubernetes und CI/CD | |
| Ecosystem | Cloud Foundry Foundation | CNCF-Ökosystem | |
| Verfügbarkeit | SLA | ||
| Regionale Verfügbarkeit | In allen STACKIT Regionen verfügbar | In allen STACKIT Regionen verfügbar | |
| Hochverfügbarkeit (Multi-AZ) | Unterstützt in 3 Availability Zones | Unterstützt in 3 Availability Zones | |
| Betrieb & Support | Release-Freqünz | Zweiwöchentlich, mit Ad-hoc-Patches für Hotfixes | Zweiwöchentlich, mit Ad-hoc-Patches für Hotfixes |
| Geplante Downtimes / verpflichtende Updates | Keine geplanten Downtimes für Multi-Instanz-Apps |
| |
| Skalierbarkeit | Skalierung | Horizontales Autoscaling von Anwendungsinstanzen, mindestens 1 Instanz läuft |
|
| Zeit für Skalierung | Instanz-Skalierung im Sekundenbereich |
| |
| Maximale Skalierungsgrenzen | Unbegrenzte Anzahl von App-Instanzen | 1000 Nodes pro Cluster | |
| Max. Arbeitsspeicher pro Workload |
| Abhängig von den gewählten Node-Flavors | |
| Ressourcenmanagement | Automatisch | Manüll | |
| Technische Fähigkeiten | Open-Source-basiert | Ja (GitHub) | Ja (GitHub) |
| Flexibility | Opinionated Ansatz | Anpassbare Workflows, flexible Orchestrierung | |
| Routing | Integriertes HTTP-Routing | Ermöglicht flexible Nutzung von Ingress-Controllern für unterschiedliche Protokolle wie HTTP, TCP, UDP, WebSockets und gRPC | |
| Logging and monitoring | Integrierte Tools | Externe Tools | |
| Application lifecycle | Automatisiertes Management | Manülles Management | |
| CI/CD | 1-Klick-Deployment via cf push und Buildpacks | Individülle CI/CD-Pipeline für Image-Build und Deployment | |
| Bereitstellbare Artefakte | OCI images | OCI images, Helm charts | |
| Unterstützte Sprachen | System-Buildpacks unterstützen Staticfile, Java, Ruby, .NET, Node.js, Go, Python, PHP, Binary, NGINX | Nicht auf bestimmte Programmiersprachen beschränkt | |
| Unterstützung für Jobs/Tasks | Ja | Ja | |
| In STACKIT SNA verfügbar | Nein | Ja | |
| Unterstützt eigene Domains | Ja | Ja |