Von Containern, Orchestern und Wolken

11. Januar 2021 von Christoph Löser

Im ersten Teil unserer Artikelserie haben wir das Konzept der Gilden bei eXXcellent solutions vorgestellt (Agile Softwareprojekte und Innovation: Gilden bei eXXcellent solutions). Dabei zeigten wir, wie wir das in unseren Projekten gewonnene Wissen im Unternehmen verteilen und unabhängig vom Tagesgeschäft neue Innovationen erarbeiten. Heute möchten wir Euch einen Einblick in die Arbeit und Themen der Gilde „Container, Kubernetes & Cloud Native“ geben.

Auf eine Aufzugsfahrt

„Worum geht es?“ Auf den Punkt gebracht müssen die wenigen Sekunden einer gemeinsamen Aufzugsfahrt für eine Antwort genügen. Der „Elevator Pitch“ fasst die wichtigsten Motive und Ziele der Gilde griffig zusammen:

 

TWO_ARROWS Container-, Cloud-, SaaS-, Serverless- sowie Kubernetes-basierte Lösungsarchitekturen haben sich als neuer Industriestandard etabliert und bewährt. Sie ermöglichen Unternehmen jeder Größe agile, weltweit verteilte und hoch skalierbare Lösungen zu erstellen und Synergien durch den Einsatz vernetzter Lösungsbausteine zu nutzen. Damit bilden sie die zentralen Bausteine für ein modernes, agiles DevOps-Vorgehen. «

 

TWO_ARROWSUm unseren Kunden solide Expertise, zielgerichtete Empfehlungen und Lösungen bieten zu können, evaluieren wir als Kompetenzzentrum die marktgängigen Technologien und erarbeiten pragmatische Bausteine und Blaupausen. Dies erlaubt uns stets, eine optimale und agile Lösungsarchitektur zu gestalten. Vom ersten Container bis hin zur kompletten Migration auf verschiedene Plattformen; Von der einfachen on-premise Anwendung bis zur komplexen, weltweit verteilten 24x7 B2C-Anwendung. «

 

Das Zeitalter der Container & Wolken

Vernetzte Anwendungen und agile Methoden, wie DevOps, stehen zunehmend im Fokus unserer Kunden. Dank moderner, dynamischer Umgebungen erlaubt die neue Generation an „Cloud Native“ Architekturen und Technologien die Umsetzung entkoppelter Systeme, die schnell und flexibel auf Änderungen des Business reagieren können.

Den Begriffsbestandteil „Cloud“ in „Cloud Native“ empfinden wir ein wenig als zweischneidiges Schwert. Häufig wird der Begriff rein mit Public Cloud Anbietern wie Amazon Web Services (AWS) oder Microsoft Azure assoziiert.

Cloud

©eXXcellent solutions, ©macrovector - freepik.com

Für unser Verständnis orientieren wir uns aber an der viel weiter gefassten Definition der Cloud Native Computing Foundation (CNCF). Entscheidend ist weniger das „Wo?“, sondern viel mehr das "Wie?" Anwendungen aufgebaut sind und sich verhalten.

Dabei steht für uns stets das Pragmatische und Passgenaue im Mittelpunkt. Für die Herausforderungen unserer Kunden möchten wir über die individuelle Auswahl an geeigneten Technologien und Architekturen jederzeit die beste Gesamtlösungsstrategie anbieten können. Denn eine unreflektierte Fokussierung auf aktuelle Hypes und Trends birgt schnell das Risiko vermeidbarer Komplexität, Kosten und nicht tragfähiger Lösungen.

Für die Umsetzung haben sich Container als zentrales Architekturelement in der Industrie etabliert und bewährt. Sie stellen heutzutage die „lingua franca“ für wiederverwendbare Bausteine und Lösungsteile moderner Lösungsarchitekturen dar und sind zugleich nahezu komplett unabhängig von konkreten Betriebsumgebungen und Infrastrukturen. Sei es:

  • der Betrieb auf dem Arbeitsplatz-Rechner,
  • die redundant ausgelegte Variante im firmeneigenen Rechenzentrum,
  • der verteilte Betrieb in der eigenen Private Cloud in Form von Kubernetes oder OpenShift
  • bis hin zur weltweit verteilten Anwendung mit 24x7 Betrieb bei AWS, Azure & Co.

Container und Cloud Native Architekturen ermöglichen Unternehmen jeder Größe agile, weltweit verteilte und hoch skalierbare Lösungen zu erstellen und neue Synergien durch den Einsatz vernetzter Lösungsbausteine zu gewinnen.

 

Wolkige Simulationen, handwerklich gebaut!

Ein konkretes Projekt, welches wir aktuell zusammen mit anderen Gilden begleiten, ist orchideo | easySSP, ein webbasierter Editor für den Simulationsmodellstandard System Structure and Parametrization (SSP), der als Software-as-a-Service zur Verfügung gestellt wird.

Weltweit verteilte Benutzer können über einen graphischen Modelleditor komplexe Systemarchitekturen mit Subsystemen und Komponenten modellieren. Anschließend lassen sich für das Modell Simulationen parametrisieren und in den geeigneten Laufzeit-Umgebungen direkt ausführen.

Wie bei jedem Startup ist ein schnelles Time-to-Market entscheidend, um in der aufkeimenden Tool-Landschaft Fuß fassen zu können. Gute Verfügbarkeit und die Eignung für eine weltweit verteilte Anwenderschaft spielten beim Architekturentwurf ebenso gewichtige Rollen, wie eine überdurchschnittliche Skalierbarkeit. Denn die ausgeführten Simulationsberechnungen sind teils sehr rechen- und zeitintensiv.

Im Rahmen der Flexibilität einer Public Cloud Plattform können wir nun SSP-Anwendern die Möglichkeit bieten, ihre Simulationen nach Bedarf dynamisch und nahezu beliebig stark zu parallelisieren, um erheblich schnellere Iterationszyklen ohne teure Hardwareinvestitionen zu erreichen. Im Kontext dieser drei Kernanforderungen – Time-to-Market, weltweite Verteilung und hochdynamische Skalierbarkeit – hat eine Public Cloud Betriebsumgebung definitiv in der Kosten-/Nutzenbetrachtung ihren „sweet spot“. Im Fall von orchideo | easySSP setzen wir für die weltweite Verteilung im Kern auf den pragmatischen Betrieb unserer Backend-Container über AWS ECS on Fargate eingebettet in AWS Application Load Balancer (ALB) und CloudFront. Für die Datenhaltung der Modellierungsdaten nutzen wir die Vorteile von Amazons Relational Database Service (RDS) in Form einer gehosteten PostgreSQL Instanz und für die Simulationsdaten nutzen wir das verteilte AWS Elastic File System (EFS).

Während wir für den Betrieb unseres Software-as-a-Service Angebotes auf die Vorteile der Amazon AWS Cloud setzen, ist orchideo | easySSP aber auch stets on-premise bei unseren Kunden betreibbar. Dies erreichen wir durch die konsequente Ausrichtung auf offene Standards an allen Schnittstellen und der Ausrichtung auf Container als Abstraktionsebene für die konkrete Betriebsumgebung. Als ein Beispiel sei hier der Einsatz von OpenTelemetry für das Monitoring genannt, dass wahlweise die erfassten Telemetriewerte in AWS CloudWatch oder die eigene Grafana-Installation übermitteln
kann. Im einfachsten Fall genügt so auch ein einzelner Rechner mit einer Docker-Installation für den Betrieb.

 

Unendliche Weiten

Das Beispiel orchideo | easySSP gibt einen kleinen Einblick in einzelne Themenbereiche der Gilde. Neben der Beratung zu Architekturmustern und Lösungskompetenz für konkrete Plattformen wie Kubernetes, AWS, Azure & Co., gestaltet sich die Themenlandschaft weitläufig und beinhaltet zahlreiche ungenannte Themen. Wie zum Beispiel der zentrale Aspekt der Observability, das wichtige Thema Sicherheit und Zero-Trust Architekture, die Analyse und Optimierung der laufenden Kosten bis hin zur deklarativen Definition der Infrastrukturlandschaft über Terraform („Infrastructure as code (IaaC)“).

Die Themen grenzen dabei nahtlos an verwandte Bereiche an, für die wir teilweise separate Gilden haben - wie CI/CD für die kontinuierlichen Auslieferungsprozesse, welche wir in einer der kommenden Ausgaben näher vorstellen wollen.

 

Fazit

Vernetzte Cloud Native Architekturen stehen im Trend und werden voraussichtlich auch weiterhin als Leitthema an Gewicht gewinnen. Durch die Zusammenarbeit in der Gilde gelingt es uns, das Wissen aus verschiedenen Projekten und Standorten zu bündeln und über Lösungsbausteine, Best Practices oder Blueprints gewinnbringend in unsere Projekte zu tragen.

 

Die Gilden bei eXXcellent solutions: Gilden Portraits

 

Um unsere weiteren Gilden Portraits nicht zu verpassen, melden Sie sich am Besten gleich hier bei unserem Newsletter an.

 

Weitere Informationen

Sie möchten sich gerne in Richtung moderne, pragmatisch orientierte Cloud Native Architekturen entwickeln? Oder fragen Sie sich, ob Kubernetes oder Plattformen wie AWS und Azure das Richtige für Sie sind oder doch leichtgewichtigere Container-Lösungen die bessere Wahl sind? Unser Autor steht Ihnen mit Rat und Tat zur Seite und freut sich auf den Austausch mit Ihnen.

emailchristoph.loeser@exxcellent.de

 

Wir teilen unser Wissen gerne. Begleiten Sie uns in unserem TechBlog auf unserer Reise vom Code zu Ideen für neue Technologien und Software.

bubble-chat-information-2-1Hier geht es zu unserem TechBlog

 

Ein weiterer Teil des eXXcellent solutions Wissensaustausches sind unsere Lightning Talks. In diesen kurzen Talks befassen wir uns mit Themen, wie:

» Neue Technologien, Frameworks und Entwicklungen am Markt
» Grundlagen und Theorien (Softwareentwurfsmuster und -patterns)
» Tools für Entwicklung und Office
» Erfahrungen: Best Practices und Aha!-Erlebnisse
» Social- und Soft-Skills
» Projektmanagement & Entwicklungsprozess
» Kurzpräsentationen, zu besuchten Veranstaltungen

 bubble-chat-information-2-1Hier geht es zu unseren Lightning Talks

 

Über Christoph Löser

Christoph Löser

 

 

Christoph Löser ist Software Architect bei der eXXcellent solutions in Ulm und koordiniert als Gildenmeister die internen Aktivitäten rund um Architektur, Entwicklung und Betrieb von Cloud-native basierten Lösungen. Er begeistert sich außerdem für innovative Software-Architekturen, freie Software und Systemsicherheit.

Tags: Alle Blogbeiträge, Cloud, Wissen & Weiterbildung

Newsletter