Container Technologien

Raketenstart für die Software-Entwicklung


Container machen die Entwicklung und Bereitstellung von Software in der Cloud noch agiler und effizienter. Mit «Container-as-a-Service» - kurz Caas - erhalten Unternehmen einen regelrechten Digitalisierungs-Booster.


Text: Urs Binder, Bild: Unsplash, 




Time-to-Market, Agilität, Digitalisierung: Das Geschäft entwickelt sich rasant und oft in unerwarteten Richtungen. Neue Geschäftsmodelle müssen rasch konzipiert und umgesetzt, geschäftliche Spitzen zeitgerecht bewältigt werden. Dies erfordert eine insgesamt agile Organisation, ganz besonders aber auch eine IT, die unmittelbar auf die Bedürfnisse des Business reagiert. Es bleibt keine Zeit, Software in monatelangen Projekten zu entwickeln und nach dem Testen aufwändig in der produktiven IT-Infrastruktur zu installieren.

Zahlreiche Unternehmen betreiben ihre Software in einer virtualisierten Umgebung in der Cloud. Legacy-Anwendungen profitieren dabei von der Skalierbarkeit der Cloud-Infrastruktur. Immer wichtiger werden Cloud-native, webbasierte Applikationen, sowohl für den internen Gebrauch als auch in der Kundenbeziehung. Sie werden von Anfang an neu entwickelt und können so alle Vorteile der Cloud nutzen.


IaaS, PaaS, Legacy- und Webapps

Cloud ist allerdings nicht gleich Cloud: Anbieter von Infrastructure-as-a-Service (IaaS) stellen Infrastrukturdienste wie Rechenleistung, Speicher und Netzwerkdienste in einer virtualisierten, skalierbaren Umgebung bereit. Für alles Weitere, von der Installation des Betriebssystems über Middleware und Datenbanken bis zum Betrieb der Applikationen ist der IaaS-Kunde verantwortlich – oder er kann dies in Form von Managed Services beziehen. IaaS eignet sich bestens für die Migration von Legacy-Anwendungen in die Cloud und bietet ein hohes Mass an Agilität und Skalierbarkeit bei der Bereitstellung von IT-Leistung: So können Ressourcen bei erhöhtem Bedarf dynamisch hinzugezogen oder aber abgeschaltet werden, wenn man sie nicht mehr benötigt.

Bei PaaS (Platform-as-a-Service) stellt der Anbieter eine komplette Plattform zur Verfügung, auf der Applikationen entwickelt, getestet und betrieben sowie Daten gehalten werden können. Die PaaS-Nutzer müssen sich nur um die eigenen Anwendungen und Daten kümmern. Mit der zugrundeliegenden Infrastruktur kommen sie nicht in Kontakt: Die PaaS-Umgebung stellt die benötigten Ressourcen automatisch und sofort bereit. PaaS eignet sich besonders für Cloud-native Software und deckt nach den Prinzipien DevOps und Continuous Integration den vollständigen Lebenszyklus der Anwendungen ab. Mit Cloud Foundry steht ein breit akzeptierter Open-Source-Standard für PaaS zur Verfügung. So ist etwa das PaaS-Angebot Application Cloud von Swisscom Cloud-Foundry-zertifiziert.


Container machen unabhängig

 

In Bezug auf die moderne Entwicklung von Applikationen entstand eine Lücke zwischen IaaS- und PaaS-Infrastrukturen. Einerseits wünschte man sich für das Iaas-Modell eine höhere Entwickler-Produktivität sowie bessere Effizienz im Betrieb. Andererseits entstand beim PaaS-Modell das Bedürfnis nach weniger Einschränkungen und Standardisierungen.

Hier kommt die Container-Technologie ins Spiel. Sie ist ein weiterer Schritt in der Virtualisierung. Applikationen werden mit allem Zubehör in transportable Pakete geschnürt und in die Cloud übertragen. Die gesamte Anwendung wird dabei inklusive aller benötigten Libraries, weiterer Komponenten sowie persistenter Objekte in einem so genannten «Container» eingekapselt. Es bestehen keine externen Abhängigkeiten mehr, die Anwendung läuft innerhalb des Containers autonom. Durch das Aufheben dieser externen Abhängigkeiten lassen sich Applikationen über unterschiedliche Systeme hinwegbewegen. Dies erhöht den Portabilitätsgrad und die Flexibilität der Anwendung.

Die so als Gesamtpaket verschnürte Software lässt sich nun ohne Installation bereitstellen – sofern auf der Zielplattform eine Laufzeitumgebung für die jeweilige Container-Technologie existiert: Technologien wie Docker, CoreOS rkt oder LXC verwalten die Container und sorgen für die Isolation zwischen den einzelnen Containern. Zusammen mit Orchestrierungslösungen lassen sich Anwendungen – insbesondere auch solche, die gemäss einer Microservice-Architektur auf mehrere untereinander kommunizierende Container verteilt sind – automatisiert verpacken, bereitstellen und verwalten. Nebst Open Source Kubernetes, das sich als Industriestandard für die Orchestrierung durchgesetzt hat, gibt es verschiedene kommerzielle Ausprägungen wie beispielsweise Pivotal Container Service oder Openshift. Viele PaaS-Plattformen, darunter Cloud Foundry, bieten von Haus aus Container-Unterstützung.


In Container-Form erbringen die Anwendungen die Leistung, die von den Entwicklern vorgesehen wurde und müssen nicht weiter angepasst werden. Das betrifft sowohl Anwendungen aus Legacy-Systemen als auch Cloud-native Apps, die auf PaaS Umgebungen entwickelt wurden. Interessant sind Container deshalb vor allem auch für Software-Vendors (ISV), welche die entwickelten Applikationen ihren Kunden damit als Container anliefern können. Dies inklusive aller Abhängigkeiten und Persistenzanforderungen.


Vorteilhaft für alle Parteien

Die Container-Technologie bringt Softwareentwicklern und Anwenderunternehmen Vorteile: Entwickler liefern neue Software und auch Updates sehr rasch als Container aus. Sie erreichen eine bessere Time-to-Market ihrer Lösungen und können schnell auf Kundenbedürfnisse reagieren. Und sie sparen Kosten, da die Produktivität der Entwickler steigt. Ausserdem ist gewährleistet, dass die Applikation so betrieben wird, wie das Design es vorsieht, denn alle benötigten Komponenten sind im Container enthalten. Die Skalierbarkeit und die Austauschbarkeit der Container sind ebenfalls ein grosser Vorteil.

Die Anwender müssen nichts mehr installieren – der neue Container fügt sich fast von selbst in die Umgebung ein. So sparen Unternehmen Zeit und Aufwand, erhöhen die betriebliche Effizienz, steigern die Produktivität der Entwickler und treiben die Digitalisierung voran.


Container Services von Swisscom


Swisscom offeriert Unternehmenskunden flexible Orchestrierungsservices für containerisierte Anwendungen und bietet persönliche Beratung für die Planung und den effizienten Einsatz von Containern.

Mehr Informationen




Newsletter

Jetzt Newsletter abonnieren und über Trends, Branchen-News und Benchmarks informiert bleiben.





Mehr zum Thema