Suchen

Iris von Intersystems für die Containerisierung Checkliste für den Container-Einsatz

Redakteur: Ulrike Ostler

Software-Container können Abläufe vereinfachen, beschleunigen und die Transparenz erhöhen. Unternehmen, die diese Vorteile nutzen wollen, stehen aber vor der Frage: Wie bestmöglich vorgehen? Von Intersystems gibt es jetzt eine Route.

Firmen zum Thema

Mit der „Iris“ von Intersystems lässt sich containerisieren.
Mit der „Iris“ von Intersystems lässt sich containerisieren.
(Bild: janrye auf Pixabay)

Die wichtigsten Ziele der Containerisierung, also dem Bündeln einer Applikation mit all ihren Abhängigkeiten, sind die schnelle Implementierung von Funktionen, eine zügige Verteilung von Updates und eine verbesserte Synchronisierung von Entwicklungsabläufen. Auf die folgenden Tipps und Fallstricke gilt es bei der Containerisierung von Anwendungen zu achten, um ihr Potenzial umfassend zu nutzen.

1. Begrifflichkeiten verstehen und abgrenzen

Zu Beginn ist es ratsam, ein besseres Verständnis zu entwickeln. Worum geht es speziell? Wie lassen sich Container einsetzen, um das Tagesgeschäft zu vereinfachen? Vielerorts fehlt sogar das grundlegende Wissen, wie sich ein Container von einer virtuellen Maschine (VM) unterscheidet, da beides zunächst ähnlich aussieht.

Die VM lässt sich als Haus beschreiben, während ein Container einer Wohnung entspricht. VMs sind eigenständig mit einem vollständigen Gastbetriebssystem, das in der VM läuft. Sie sind unabhängig wie freistehende Gebäude.

Container hingegen sind sehr schlank und nutzen eine gemeinsame Infrastruktur, beispielsweise den Kernel des Host-Betriebssystems. Sie lassen sich also mit einer Wohnung vergleichen. In einem Wohngebäude werden Heizungsanlagen, Elektroleitungen und mehr gemeinsam genutzt. Ähnlich verwenden auch Container die verfügbaren Ressourcen des Hosts.

Einsatz finden Container etwa bei der Implementierung von Microservices, die untereinander kommunizieren können. Hierbei lassen sich die jeweiligen Microservices und der entsprechende Container einzeln aktualisieren, was das Ausrollen neuer Releases erleichtert. Um der komplexen Service-Architektur zu begegnen, sind in diesem Zusammenhang Ansätze wie API-Management sinnvoll und notwendig.

2. Voraussetzungen schaffen, Anwendungen aufbrechen

Was trotz der zahlreichen Vorteile des Container-Ansatzes viele Unternehmen noch von ihrer Einführung abhält, ist, dass Anwendungen nicht ausreichend vorbereitet sind. Werden große, verzahnte und komplexe Applikationen in den Container verlagert, widerspricht dies dem eigentlichen Containergedanken verringerter Komplexität.

Ein erster Schritt sollte daher sein, festzustellen, ob sich Anwendungen sinnvoll aufsplitten lassen. Wo können funktionale oder logische Blöcke gebildet und dann in einen eigenen Container überführt werden?

Dazu ein konkretes Beispiel: Bei einem Warenwirtschaftssystem, das Bestellabwicklung, Kundenverwaltung und mehr beinhaltet, lassen sich etwa Wissensdatenbank, CRM, Module oder anderes in einen Container auslagern. Der erste Schritt erfolgreicher Containerisierung ist demnach, kleinere Einheiten zu bilden.

Achtung: Die Aufsplittung sollte weder zu klein- noch zu großteilig sein, um Container bestmöglich beherrschen zu können. Wer ein ganz neues Tool plant, kann gleich zu Beginn überlegen, ob dies containerisiert werden kann.

3. Migrationsaufwand bei Windows-Anwendungen beachten

Container kommen klassisch aus der Linux-Welt, in der sie auch am einfachsten funktionieren. Wer heute eine Anwendung hat, die nativ unter Windows läuft, muss daher einen gewissen Migrationsaufwand berücksichtigen.

Daher sollten sich Projektverantwortliche und Entwickler bereits im Vorfeld Gedanken machen, ob es möglich ist, die jeweilige Anwendung in die Linux-Welt zu bringen – eine Kosten-Nutzen-Abwägung. Dies ist für den Server-seitigen Teil der Applikationen oft gut möglich, bei komplexen GUI-Clients jedoch schwieriger.

4. Auf eine flexible und breit angelegte Entwicklungsbasis setzen

Eine breite Operationsgrundlage für zahlreiche Entwicklungsumgebungen ist für die Entwicklung von Anwendungen sowie in diesem Zusammenhang auch Containern sehr hilfreich. Ratsam ist hierbei eine Datenplattform, die sich leicht implementieren lässt, und die auch bei Programmierprojekten in einem Container eingesetzt werden kann.

Iris von Intersystems

Eines der Entwicklungsziele für „Intersystems Iris“ ist es, dass die Plattform ein „First Class Citizen“ für Container sein soll. Das spiegelt sich auch in der Release-Strategie wider. Während das erste Release eines Jahres gleichzeitig als konventionelles Anwendungspaket und als Container-Release angeboten wird, sind alle nachfolgenden Versionen des Kalenderjahres ausschließlich als Container zu beziehen.

Auch ein API Manager ist in das Tool integriert, was die Implementierung neuer Funktionen und Anwendungen zusätzlich vereinfacht. Neben der gesamtheitlichen und zentralen Entwicklung und Kontrolle datenintensiver Anwendungen und Container lassen sich so auch APIs transparent verwalten. Alle benötigten Funktionen finden sich in einer einzigen Datenplattform.

Normalerweise widmen Software-Anbieter 90 Prozent ihrer Aufmerksamkeit einer Anwendung. Mit Containern verlieren sie keine wertvolle Zeit mit der Einrichtung der Anwendungsumgebung, sondern werden agiler und können sich auf die Entwicklung des Codes konzentrieren. Das optimiert auch die Zusammenarbeit mit ihren Programmierern und Entwicklern, da alle mit dem Werkzeug arbeiten, das allgemein verstanden wird: dem Container.

Michael Braam, Senior Sales Engineer bei dem in Cambridge, Massachusetts, beheimateten Unternehmen Intersystems, positioniert das hauseigene Tool genau dort: „Unsere Technik macht es möglich, dass unsere Applikationspartner schneller von neuen Features profitieren und diese frühzeitig in ihren eigenen Entwicklungen nutzen können.“ Die Partner würden oftmals von den Vorteilen des Container-Einsatzes berichten.

(ID:46414008)