Container Optimized OS Cloud-Betriebssystem für optimalen Container-Betrieb
Mit Googles Container Optimized OS erhalten Entwickler und Softwareanbieter eine wunderbare Möglichkeit, Docker-Container direkt in der Cloud laufen zu lassen. Das auf Linux basierende System bietet eine Reihe praktischer Anwendungsmöglichkeiten.
Anbieter zum Thema

Wie kommt der Docker-Container in die Cloud? Google stellt mit dem Container Optimized OS (COS) nun eine Möglichkeit für Google-Cloud-Platform-Kunden zur Verfügung, die die Verwendung von Docker-Containern deutlich erleichtert.
Das auf den Betrieb von Containern ausgerichtete, Linux-basierte Betriebssystem ist standardmäßig mit der Docker-Runtime-Umgebung und praktischer Unterstützungssoftware ausgestattet und dadurch für den Einsatz von Docker-Containern optimiert. Die Einrichtung virtueller Maschinen mit Docker in der Cloud ist dadurch deutlich einfacher als zuvor.
Wie Container Optimized OS funktioniert
Cloud Optimized OS arbeitet innerhalb der Compute Engine der Google Cloud Platform und dient als Basis für virtuelle Maschinen auf Docker-Basis. Bei der Erstellung einer GCP-VM kann es einfach als System-Image ausgewählt werden und wird binnen weniger Minuten installiert. Anschließend steht ein virtueller Linux-Rechner in der Google-Cloud zur Verfügung, auf dem seinerseits Docker-Container eingerichtet werden können.
Googles Compute Engine ist in der Bedienung weitestgehend mit anderen Virtualisierungslösungen identisch, der große Unterschied zu Software-Lösungen wie VirtualBox ist, dass der virtuelle Rechner innerhalb der Google-Dienste – also der Google Cloud – arbeitet und per Browser verwaltet wird. Cloud Optimized OS auf dem Chromium-Kernel, wodurch die Bedienung die meisten Entwickler kein Problem darstellen sollte.
Einrichtung eines Docker-Containers
Der größte Vorteil von Container Optimized OS ist, dass die Erstellung eines Docker-Containers ausgesprochen einfach ist: Die nötigen Docker-Runtimes, Cloud-init und Kubernetes sind bereits in der virtuellen Maschine aufgesetzt. Es reicht also aus, die SSH-Verbindung zu starten und zu beginnen, den Docker-Container per Kommandozeile zu erstellen und einzurichten.
Eine zusätzliche Einrichtung der Basis-VM, wie es etwa bislang unter Debian auf Googles Plattform der Fall war, fällt nicht mehr an. Stattdessen kümmert sich Google um die Updates und die Sicherheit des Systems: Google selbst setzt es bereits ein, weshalb Patches und Aktualisierungen schnell erfolgen.
Sicherheit wird großgeschrieben
Das ist auch dringend nötig, denn Anwender von Cloud Optimized OS können am Basis-System nur wenig Hand anlegen. COS ist für den Betrieb von Containern optimiert und für nichts anderes. Googles Reduzierung auf das Nötigste fielen dabei einige grundsätzliche Linux-Funktionen zum Opfer, darunter der Paketmanager und die Möglichkeit, Drittanbieter-Software, Kernels oder Treiber zu installieren.
Die Root-Ebene des Systems ist aus Sicherheitsgründen ebenfalls auf die nötigsten Bereiche eingeschränkt. Schreibzugriff gibt es nur dort, wo er unmittelbar für den Betrieb der Container vonnöten ist. Dem Sicherheitskonzept folgend, können Applikationen nur innerhalb eines Containers ausgeführt werden.
Der Vorteil dieser Lösung ist jedoch, dass COS eine ausgesprochen kleine Angriffsfläche bietet – und damit im Vergleich zu einem „normalen“ Linux-System mit manuell installierten Docker-Funktionen ausgesprochen sicher ist. Auch der Wartungs-Overhead ist überschaubar, Anwender können sich auf das Aufsetzen und die Pflege der aufgesetzten Container konzentrieren.
Damit auch diese sicher betrieben werden können, ist die Firewall nach der Installation zunächst auf vollständigen Lockdown eingestellt: Ausschließlich SSH-Verbindungen sind möglich. So können Verbindungen effektiv per Whitelisting freigegeben werden, was die Sicherheit maßgeblich erhöht.
Wofür das Ganze?
Sinn und Zweck von Container Optimized OS ist vor allem Einfachheit: Statt sich wie in anderen VM-Instanzen der Google Cloud vor der eigentlichen Docker-Container-Einrichtung mit dem Basis-System zu befassen, können Anwender mit COS direkt loslegen und Container erstellen.
Durch seine hohe Sicherheit und seine Reduzierung auf das Wesentliche ist Container Optimized OS eine solide und leistungsstarke Basis für Unternehmen und Entwickler, die schnell einen oder mehrere Container zur Anwendungsentwicklung und -bereitstellung aufsetzen und diese effektiv verwalten möchten. Der Nachteil ist, dass das System nur in Googles Infrastruktur arbeitet, eine Nutzung der Google Cloud Engine also unvermeidlich ist.
Die Grenzen von COS
Zwar liegt der Quellcode für Container Optimized OS offen, die Nutzung ohne Google ist aber derzeit nicht möglich. Zudem ist das System nicht für jedes Anwendungsszenario geeignet: Wenn die Docker-Container auf bestimmte Kernel oder Applikationen angewiesen sind, die unter regulären Linux-Systemen nachinstalliert werden können, ist COS nicht die richtige Lösung.
Ebenso wenig eignet sich das System als Grundlage, wenn professioneller Support für das Basis-System von einem Linux-Provider wie RedHat oder SuSE benötigt wird. Von daher sollte in solchen Fällen entweder auf Container Optimized OS verzichtet werden und stattdessen eine Alternative installiert und manuell mit Docker eingerichtet werden.
Es gibt Alternativen
Wenn die Infrastruktur ohnehin nicht in Googles Cloud Platform läuft, erübrigt sich das Problem ohnehin: Hier müssen andere Alternativen herangezogen werden. Es gibt inzwischen eine Reihe von ausgesprochen schlanken Linux-Distributionen, die als Hafen für Docker-Container geeignet sind.
Hierzu zählen Container-Linux oder Tectonic von CoreOS, Project Atomic, Ubuntu Core oder Photon von VMware. Diese sind allesamt deutlich flexibler als die Google-Lösung, verlangen aber auch deutlich mehr Aufwand bei der Einrichtung von Containern. Insofern ist Cloud Optimized OS eine wunderbare Alternative für Anwender, die Container ohnehin bereits auf Googles Cloud Platform verwenden.
(ID:44733257)