Container-Backup: Von der Option zur Pflicht

Autor/Redakteur: Patrick Englisch, Technical Sales Manager bei Veritas Technologies/gg

Virtualisierung zählt zu den Kernelementen des Cloud Computings. Sie lässt das schnelle Aufsetzen stark skalierbarer IT-Dienste zu und bildet somit die Basis für Cloud-Services. Gängige Praxis ist bislang die Verwendung virtueller Maschinen. Allerdings schreitet die Entwicklung auch hier voran. Dabei geht der Trend in Richtung Container.

Bild: Veritas Technologies

Ein Container ist eine kleine virtuelle Einheit, in der Micro-Services isoliert ablaufen. Er schont die Ressourcen seines Gastsystems, indem er im Gegensatz zu virtuellen Maschinen den Hostsystem-Kernel nutzt und lediglich über ein eigenes Laufzeitsystem verfügt. Für die Kommunikation mit seinem Hostsystem besitzt ein Container die entsprechenden Libraries und Binaries. Anders als eine virtuelle Maschine, die ein in sich abgeschlossenes vollständiges System darstellt, das seinem Pendant in einer physischen Umgebung gleicht, läuft ein Container sowohl auf einem physischen Server als auch in einer virtuellen Instanz eines Betriebssystems. Da er sein Hostsystem nutzt, benötigt er weniger Platz. Auf diese Weise können mehr virtuelle Instanzen auf einem Server laufen, als wenn jedes Mal eine virtuelle Maschine ausgerollt wird. Ein typischer Vertreter der Container-Technologie ist Docker.

Container bieten die Basis für die Anwendungen, die in ihnen ausgeführt werden. Sämtliche Services, die die Applikation benötigt, stellt ihnen die Laufzeitumgebung zur Verfügung. Dabei kann eine große Anwendung auch aus mehreren voneinander getrennten Komponenten bestehen, die ihren Fokus auf klar definierte Geschäftsfunktionen legen. Mit dieser Unterteilung lässt sich die Gesamtanwendung modularisieren. Dadurch nimmt ein einzelner Container wenig CPU-Ressourcen und Arbeitsspeicher in Anspruch – und das auch nur, wenn er mit seinem Anwendungsmodul gerade von der Anwendungssteuerung benötigt wird. Auf diese Weise lassen sich Container mit einem Platzverbrauch von bereits unter 100 Megabyte realisieren, bei virtuellen Maschinen können es hingegen mehrere Gigabyte werden.

Der Docker-Client von NetBackup hat Zugriff auf den gesamten Anwendungspfad einschließlich der gemounteten Storage-Systeme (Grafik: Veritas Technologies)

Dieser geringe Speicherbedarf spielt bei Portierungen eine große Rolle. Container lassen sich einfacher von einem System auf das nächste verschieben, etwa bei der Migration von Anwendungen aus einer Entwicklungsumgebung auf einen Produktiv-Server. Hier ist es unerheblich, ob die Container auf einer Cloud-Umgebung oder On-Premises gehostet werden.

Ein weiterer Vorteil von Containern ist ihre Hochskalierbarkeit. Falls etwa ein Webserver auf mehr Anfragen reagieren muss und der Datenverkehr ansteigt, können weitere Instanzen zeitnah gestartet und, wenn der Bedarf wegfällt, wieder gestoppt werden. Die Verwaltung der Container übernehmen dabei spezielle Orchestrierungslösungen, etwa die Open-Source-Lösungen Docker oder Kubernetes.