- Die Definition von Containers-as-a-Service
- Wie funktioniert CaaS?
- Welche Vorteile bieten Container?
- Typische Anbieter von Containers-as-a-Service in der Public-Cloud
- Anwendungsbereiche von CaaS
- Wodurch unterscheiden sich Kubernetes und CaaS?
- Das Wichtigste zu CaaS in Kurzform
Wer sich intensiv mit Cloud-Lösungen auseinandersetzt, stößt früher oder später auf den Begriff der sogenannten Container. Sie bringen eine Menge Vorteile für die Sicherheit und Performance von Anwendungen. Im Entwicklungsbereich bietet der Einsatz von Microservices via Container die Möglichkeit, modulare Dienste unabhängig voneinander bereitzustellen und zu entfernen. Inzwischen können Unternehmen Container und deren Administration als Dienstleistung in der Cloud buchen. Das steckt dahinter.
Wo früher riesige Rechenzentren in Eigenregie betrieben wurden, verzichten Unternehmen heute zunehmend darauf und buchen IT-Leistungen nach aktueller Anforderung über Cloud-Services. Damit Applikationen, Online-Geschäfte und die Unternehmens-IT über die Cloud arbeiten können, kommen Container und Container-Dienstleitungen wie Containers-as-a-Service zum Einsatz.
Was sind Containers-as-a-Service (CaaS)?
CaaS beschreibt ein Miet-Modell aus dem Bereich des Cloud Computing. Mit seiner Hilfe lassen sich Anwendungen in Cloud-Container verpacken und sowohl über lokale Rechenzentren als auch aus der Cloud heraus bereitstellen und verwalten.
CaaS eignet sich als Einzel-Lösung besonders für den Bereich Softwareentwicklung, um containerbasierte Anwendungen und Apps sicherer und skalierbar zu machen. Dabei bietet es die Möglichkeit, individuelle Einstellungen wie integrierte Entwicklungsumgebungen oder andere Cloud-Dienstleistungen zu integrieren.
Ein weiterer Grund für den Einsatz von CaaS-Lösungen ist, dass Unternehmen im Hybrid-Cloud- oder Multi-Cloud-Ansatz mehrere Cloud-Lösungen flexibel miteinander vereinen können. Dabei ist es möglich, containerisierte Anwendungen flexibel an externe Dienstleister auszulagern. Somit lassen sich CaaS-Lösungen sowohl aus Public-Cloud-, als auch aus Private-Cloud-Angeboten heraus nutzen.
Zu typischen Anwendungsfeldern von CaaS gehören beispielsweise:
- Bereitstellung von Microservices
- Migration von Unternehmensanwendungen in die Cloud
- Machine-Learning-Anwendungen und Web-Services mit hohem, zeitweisem Skalierbedarf
- Betrieb von Cloud-Native-Anwendungen
Unterschiede zwischen CaaS- und PaaS-Containerdiensten
Containers-as-a-Service ist ein Cloud-Dienst, der zwischen Infrastructure-as-a-Service (IaaS) und Platform-as-a-Service (PaaS) angesiedelt ist. Er bietet Unternehmen die Möglichkeit, individuellen Code bereitzustellen und Einfluss auf die Entwicklungs- und Applikationsumgebung zu nehmen. In der Regel nutzen Entwicklungsabteilungen CaaS, um mithilfe lokaler Rechenzentren oder über die Cloud sichere Containeranwendungen zu erstellen. Im Gegensatz dazu ist PaaS auf die Nutzung von festgelegten Containern des Cloud-Anbieters spezialisiert. Hierbei stellt der PaaS-Hoster die komplette Infrastruktur zur Verfügung und es sind keine zusätzliche Hardware oder Software zu installieren, um Anwendungen entwickeln oder auszuführen zu können.
Wie funktioniert CaaS?
CaaS-Umgebungen werden von Cloud-Anbietern zur Verfügung gestellt. Dabei hostet ein CaaS-Dienstleister die Infrastruktur für die zur Verfügung gestellten Container-Dienste. Die Unternehmen können über Container-basierte Virtualisierung, API-Aufrufe oder Web-Schnittstellen auf diesen Service zugreifen. Dabei sind für CaaS die zur Verfügung gestellten Container und nicht virtuelle Maschinen (VM) oder Hardware die bestimmenden Ressourcen.
Basis jeder CaaS-Plattform ist der Orchestrator – auch Orchestrierungstool genannt. Dieses ermöglicht die Verwaltung komplexer Container-Architekturen. Der gewählte Orchestrator bestimmt dabei, welche Funktionen des Cloud-Dienstes zur Verfügung stehen. Für containerbasierte Virtualisierung sind Docker Swarm, Kubernetes und Mesosphere DC/OS die aktuellen marktführenden Toolkits.
Welche Vorteile bieten Container?
In herkömmlichen Programmier-Ansätzen sind Anwendungen (Apps) an eine festgelegte Hard- und Software wie beispielsweise ein In-House-Serversystem gebunden. In containerbasierten Bereichen dienen Microservices dazu, flexibel Entwicklungs- und Laufzeitumgebungen zu bilden. Diese werden dann wiederum als Programmbestandteile in Container verpackt und entsprechend der aktuellen Ressourcenanforderungen seitens der Anwender:innen durch den CaaS-Anbieter automatisch skaliert.
Das ist beispielsweise im Online-Geschäft wichtig, bei dem auf lange Ruhezeiten Spitzenbelastungen folgen können. Damit in solchen Fällen keine Serviceausfälle oder gar abgebrochene Buchungsvorgänge entstehen, müssen Apps möglichst schnell an mehreren Stellen und in nahezu beliebiger Menge zur Verfügung stehen. Geht die Nutzung wieder zurück, ist es sinnvoll, die vorübergehend gebrauchten Ressourcen zeitnah wieder freizugeben.
Der große Vorteil: Container beinhalten weder ein Betriebssystem, noch sind sie an eine bestimmte Hard- oder Softwareumgebung gebunden. Sie enthalten lediglich Bibliotheken und Konfigurationshinweise für den Betrieb von Anwendungen. Außerdem eignen sich Container sowohl zum Testen als auch zum Programmieren und zum späteren Ausführen von Anwendungen.
Der Einsatz von Containern bringt viele Vorteile:
- Portierbarkeit: Die nahtlose Kommunikation zwischen verschiedenen Cloud-Umgebungen (Private-Cloud / Public-Cloud / Hybrid-Cloud) bietet mehr Flexibilität bei der Bereitstellung von Anwendungen.
- Skalierbarkeit: Die schnelle Bereitstellung und spätere Löschung identischer Cloud-Container ist notwendig, um Lastspitzen abzufangen und unnötige Kosten durch nicht benötigte Ressourcen-Bereitstellung zu vermeiden.
- Effizienzsteigerung: Dadurch, dass Container nur einzelne Programmbestandteile beinhalten und obendrein betriebssystemunabhängig arbeiten, brauchen Unternehmen weder eigene Hardware noch virtuelle Maschinen.
- Sicherheitsgewinn: Da Container grundsätzlich unabhängig voneinander arbeiten, wirken sich Fehler in einzelnen Containern nicht zwingend auf die gesamte Umgebung aus.
- Performance: Container innerhalb von Cloud-Umgebungen bieten im Vergleich zu traditionellen IT-Lösungen erhebliche Geschwindigkeitsvorteile.
Typische Anbieter von Containers-as-a-Service in der Public-Cloud
Viele der bekannten Cloud-Infrastrukturanbieter haben als Teil ihrer Dienstleistung inzwischen auch die Container-Orchestrierung beziehungsweise CaaS im Programm. Allerdings bieten sie diese Cloud-Dienstleistungen häufig als Komplettpaket an, wobei die Komplettpakete häufig mehr leisten, als Unternehmen im praktischen Betrieb benötigen. Bekannte Anbieter von (Public) CaaS-Lösungen sind:
- Microsoft (Azure Container Service, ACS)
- Google (Google Container Engine, GCE)
- Amazon (Elastic Container Service (ECS).
Die genannten Anbieter verfügen über nahezu unbegrenzte Hardware-Ressourcen und sind normalerweise jeder Anforderung an Rechenleistung gewachsen. Bei sicherheitskritischen Anwendungen oder aus Compliance- und Datenschutz-Gründen kann es jedoch notwendig sein, Container in einer Private-Cloud zu betreiben.
Weitere Anbieter von CaaS-Lösungen sind Kubernetes, Mesosphere und Red Hat OpenShift.
Microsoft Azure Container-Service
Azure Communication Services (ACS) sind Cloud-basierte Dienste, die mit REST-APIs (REST steht für REpresentational State Transfer) und SDKs für Client-Bibliotheken arbeiten. Diese helfen dabei, Services und Funktionalitäten in Anwendungen zu integrieren. Durch die Ausführung von Apps und Applikationen in „Azure Container Instances“ (ACI) brauchen sich Unternehmen nicht mehr um das Thema IT-Infrastruktur zu kümmern. ACI bietet schnelle, isolierte Rechenleistung, um den Datenverkehr in Spitzenzeiten zu bewältigen. Die komplette Serveradministration liegt dabei in den Händen von Microsoft ACS. Über Optionen wie „Azure Kubernetes Service“ (AKS) ist es möglich, „Virtual Kubelets“ zu verwenden, um Pods als die kleinste ausführbare Kubernetes-Einheit innerhalb von ACI in wenigen Sekunden bereitzustellen. Alle Anforderungen stehen dabei lastabhängig und skalierbar zur Verfügung.
Google Container Engine
Die Google Container Engine (GKE) ist ein Cluster-Management– und Container- Orchestrierungssystem, das zum Ausführen und Verwalten von Docker-Containern entwickelt wurde. Die Engine basiert auf dem Open-Source-Kubernetes-System, das Google ursprünglich entwickelt hat, um die eigene Betriebsverwaltung von Containern zu unterstützen. GKE verwaltet den Einsatz von Containern in einem Cluster und setzt sie dann automatisch auf innerhalb der eingestellten Vorgaben und Anforderungen ein. Die Interaktion mit GKE kann über die gcloud-Befehlszeilenschnittstelle (CLI) oder die Google Cloud Platform Console erfolgen.
Amazon Elastic Container Service
„Amazon Elastic Container Service“ (ECS)ist ein vollständig verwalteter Container-Orchestrierungsservice, der Unternehmen komplette Anwendungen bereitstellt. Die Applikationen sind dabei skalierbar. Als Managed-Service bietet Amazon ECS eine integrierte AWS-Konfiguration, was die Steuerungsebene und Verwaltung von Add-Ons durch den Hoster oder Drittanbieter erlaubt. ECS ist sowohl in „Amazon Web Services“ (AWS) als auch in Tools von Drittanbietern wie beispielsweise „Amazon Elastic Container Registry“ und Docker integriert.

Microsoft Azure: Backup, Sharepoint und Virtual Desktops
Sichern und archivieren Sie wertvolle Daten jetzt noch einfacher.
Mit Single-Sign-on für IT-Anwendungen und Sharepoint-Integration stellen Sie Desktop-Anwendungen jetzt noch schneller bereit.
Und mit dem Azure Virtual Desktop konzentrieren Sie sich auf Strategie und Management – statt um die Verwaltung Ihrer Infrastruktur.
Anwendungsbereiche von CaaS
Wenn Unternehmen nicht auf reine Public-Cloud-Angebote setzen, sondern möglichst frei in der Anwendungsentwicklung in einer Hybrid-Umgebung sein wollen, sind Containers-as-a-Service-Angebote das Mittel der Wahl.
Neben passgenauen und flexibel und automatisch skalierbaren Servern lassen sich Cloud-Infrastrukturen leicht mit anderen Services kombinieren. Die meisten Data-Warehouses oder Machine-Learning-Dienste basieren auf Cloud-Infrastrukturen. Eine moderne Cloud-IT-Infrastruktur stellt darüber hinaus API-Schnittstellen bereit, mit denen verschiedene Services dynamischer und schneller als traditionelle On-Premises-Architekturen agieren können.

Risikofreies Cloud-Computing: Vodafone Total Cloud Security
Immer mehr DDoS-Attacken, professionellere Hacker-Angriffe, gestiegene Compliance-Anforderungen – nie war es wichtiger, Ihre Infrastruktur vor Risiken zu schützen als heute.
Unser DDoS Mitigation Service analysiert einlaufenden Traffic und alarmiert Sie automatisch bei drohenden Attacken. Mit Managed Firewall bekommen Sie umfassenden hardware-dedizierten Schutz vor IT-Gefahren. Außerdem verfügen wir über die ISO 27001-Zertifizierung für Cloud & Hosting Services und für Rechenzentrums-Dienstleister in Deutschland.
Wodurch unterscheiden sich Kubernetes und CaaS?
Zwischen CaaS und Kubernetes (K8s) besteht eine enge Verwandtschaft. Beide verwalten Container, wobei K8s dies als Container-Plattform erledigt und CaaS die Verwaltung im Sinne eines Service zur Administration bereitstellt. CaaS und Kubernetes sind keine Gegensätze, sondern ergänzen sich. K8s bietet viele zum Aufbau von Entwicklerplattformen notwendigen Assets und Workloads, um beispielsweise Container neu zu starten und fehlerhafte Container zu ersetzen. CaaS-Hoster nutzen häufig eine K8s-Plattform zur Verwaltung von Containern, um Lasten auszugleichen, Datenspeicher zur Verfügung zu stellen und Anwendungen zu beschreiben.

Maßgeschneiderte IT-Infrastruktur: Vodafone Managed Hosting
Ein sichereres Zuhause als unsere nach ISO 27001 und 9001 zertifizierten Frankfurter Rechenzentren kann Ihre Infrastruktur kaum finden. Die dortige Tier3+-Einstufung garantiert 99,982 % Verfügbarkeit.
Wir übernehmen für Sie das komplette Management Ihres Hardware-Stacks!
Das Wichtigste zu CaaS in Kürze
- CaaS beschreibt ein Miet-Modell aus dem Bereich des Cloud-Computing.
- Über CaaS lassen sich Anwendungen in Container verpacken und über Rechenzentren oder die Cloud bereitstellen und verwalten.
- Unternehmen können CaaS nutzen, um ihre Effizienz zu steigern und hohe Flexibilität bei den IT-Ressourcen zu bekommen.
- Basis jeder CaaS-Plattform ist ein Orchestrierungstool (Orchestrator).
- Der Einsatz von CaaS entlastet DevOps-Teams und vereinfacht die Bereitstellung von Mikroservices.
- Kubernetes und CaaS stehen nicht in Konkurrenz zueinander, sondern ergänzen sich, um Assets und Workloads zur Verfügung zu stellen.
Wie verbreitet ist Cloud-Computing und der Einsatz von CaaS in Ihrem Unternehmen? Haben Sie Erfahrungen mit der Nutzung von Cloud-Diensten? Schreiben Sie uns in den Kommentaren.
Kommentare