Herr Hitzel, Microservices sorgen bei der Betreuung von IT-Systemen für mehr Geschwindigkeit und Agilität. Für welche Systemlandschaften ist diese Architektur prinzipiell gut geeignet – und für welche eher nicht?
Uli Hitzel: Microservices bringen neben den genannten Vorteilen auch ein neues Level an Komplexität in Bezug auf Infrastruktur, Architektur und Prozesse mit sich – das richtige Team und Mindset sind somit essentiell. Da Silicon-Valley-Größen wie Netflix, Amazon und dergleichen mitunter voll auf Microservices setzen, hören wir gerade von diesen Anbietern viele Erfolgsgeschichten. Der Enterprise-Bereich muss sich jedoch mit anderen, teils komplexeren Anforderungen auseinandersetzen. Daher ist es erforderlich, diese Thematik genauer zu evaluieren. Generell empfehle ich, mit neuen und kleineren Projekten zu beginnen, um damit Erfahrungen zu sammeln und so schrittweise den Technologie-Stack, zusammen mit den entsprechenden Teams, aufzubauen.
Wie gestaltet sich das Deployment in einer von Microservices dominierten Systemlandschaft?
Hitzel: Automatisierung, Infrastructure-as-Code und DevOps sind hier die relevanten Bausteine. In einem System, das sich ständig verändert, organisch wächst und quasi in Echtzeit auf unvorhersehbare Ereignisse reagieren muss, sind diese unerlässlich. Wenn sie richtig implementiert werden, vielleicht sogar mit Hilfe der Cloud, finden Updates wesentlich schneller ihren Weg ins Produkt und verbessern so die Zuverlässigkeit und die 'Customer Experience' der angebotenen Services.
Wie lässt sich die effektive Verwaltung und vor allem ein sinnvolles Monitoring bei einer großen Anzahl von eingesetzten Microservices gewährleisten?
Hitzel: Auch hier ist Automatisierung einer der wichtigsten Erfolgsfaktoren, natürlich in Kombination mit bewährten Open-Source-basierten Systemen wie Kubernetes und Plattformen wie Amplify von Axway zur Verwaltung von Microservices. Klassisches Monitoring ist nach wie vor sinnvoll. Hier lohnt es sich zudem, Erfahrungen mit verhaltensbasierten Tests zu sammeln. Die Verfügbarkeit von Server-Komponenten und Netzwerk-Ports ist eine Sache, die andere, ob die entsprechenden Services in einem System, das sich ständig verändert, plausible Ergebnisse liefern.
Welche langfristigen Effekte lassen sich durch die effiziente Nutzung von Microservices erzielen?
Hitzel: Wir werden recht bald einen Zeitpunkt erreichen, an dem modulare, verteilte Systeme der Standard sind und klassische IT-Modelle den Anforderungen nicht mehr standhalten können. Aus der Makro-Perspektive ist das oft bereits der Fall: z.B. das CRM-System von dem einen Anbieter in der Cloud, Applikationen wie Spesen- und Lohnabrechnungen als SaaS-Lösung. Modelle wie dieses werden sich immer weiter bis in IT-Kernbereiche verbreiten. Je früher Unternehmen und Institutionen sich darauf vorbereiten, desto besser. Skalierbarkeit und die Möglichkeit, auf Unvorhersehbares schnell reagieren zu können, werden von entscheidender Bedeutung sein.