Home » Multi Stock Inventory » Amazon ECS: Eine schnelle, skalierbare Lösung für den Containerbetrieb

Amazon ECS: Eine schnelle, skalierbare Lösung für den Containerbetrieb

Flexible, neue Web-Technologien wie zum Beispiel PWAs können ihr Potential im E-Commerce nur entfalten, wenn die Basis stimmt – und die beginnt bei der Infrastruktur. Wir erklären, wie wir mithilfe von Amazon ECS (Elastic Container Service) für unseren Kunden Mey eine moderne und skalierbare Infrastruktur in einem kostengünstigen Rahmen für die Magento E-Commerce-Plattform geschaffen haben.

 

Die Voraussetzungen

Der erfolgreiche GoLive des neuen Webshops von mey story war zugleich auch der erste Launch eines Kundenprojekts, das auf der mächtigen PWA-Technologie (Progressive Web Apps) fußt. Neuartige Technologie-Ansätze wie diese müssen nicht nur aufwändig mit den eigenen Entwicklungsmethoden verzahnt werden, sondern erfordern auch ein Umdenken sowie neue Lösungsansätze für die benötigte Infrastruktur. So ergeben sich bei der Umsetzung einer modernen E-Commerce-Infrastruktur einige Voraussetzungen, die zunächst erfüllt werden müssen.

 

Eine geeignete PWA Entwicklungsumgebung

Neben dem benötigten Knowhow bei der Entwicklung eines PWA-fähigen Webshops ist natürlich auch eine gewisse Basis an Tools notwendig. Als Entwicklungsumgebung für den PWA-Kern haben wir daher Vue Storefront gewählt. Diese Applikation ist ein umfangreiches Framework, welches das Gerüst für sämtliche PWA-Funktionen (Offline-Verfügbarkeit, endgeräteunabhängige Installierbarkeit etc.) und ein passendes, responsives Frontend liefert.

 

In Docker-Containern gekapselte Applikationen

Ein wesentlicher Bestandteil eines solchen Infrastruktur-Setups ist die Verwendung von Docker-Containern. Die Docker-Technologie stellt einzelne Prozesse in einem gekapselten Container bereit, sodass diese dezentral und unabhängig voneinander ausgeführt werden können. Diese Vorgehensweise hat gleich mehrere Vorteile. Zum einen kann die System-Umgebung leichter bereitgestellt werden, da jedes Tool und jeder Prozess bereits innerhalb ihrer eigenen „Kapsel“ funktionieren. Die Container müssen nur noch mit den richtigen Schnittstellen orchestriert werden. Dies mindert zum anderen auch zusätzlich den Entwicklungsaufwand des Projekts, da die Entwickler mit den gleichen „Kapseln“ wie das Produktivsystem arbeiten können. Außerdem sind die Container nicht an ein bestimmtes System gebunden und können deshalb auf vielen unterschiedlichen Systemen bereitgestellt und verwendet werden. Das kann vor allem bei der Entwicklung eines neuen Webshops auf der gleichen Technologiebasis oder bei tiefgreifenden Veränderungen und/oder Erweiterungen einer E-Commerce-Plattform nützlich sein.

Die dedizierte Verwendung von Microservices

Ganz im Sinne der Funktionsweise von Docker und PWA ist auch die Bereitstellung von Microservices. Diese Technologie ist die Grundlage einer dezentralisierten E-Commerce-Plattform und bricht monolithische Strukturen auf. Dadurch war es uns möglich, unter anderem das PWA-Frontend und die Datenverarbeitungs-API von Magento zu separieren und zu unterteilen. Dies bringt vor allem bei der Geschwindigkeit des mey story Webshops enorme Vorteile, da spezifisch nur die stark belasteten Services hoch skaliert werden können.

 

Erste Umsetzungsphase: Proof of Concept und dessen Ergebnisse

Nachdem in aufwendiger Vorarbeit die benötigten Voraussetzungen erkannt und geschaffen wurden, galt es, ein geeignetes Konzept für die Projektentwicklung des mey story Webshops zu erstellen. Für dieses Proof of Concept ergaben sich folgende Maßnahmen und Erkenntnisse:

  • Bereitstellung der Anwendung in zwei Docker-Containern – Für eine bessere Lastverteilung und Skalierbarkeit wurde das System in zwei separaten Docker-Container implementiert.
  • Host-System in Staging-Umgebung mit nginx Proxy hochfahren – Ein nginx-Webserver, eingesetzt als Reverse Proxy, hat den Vorteil, dass schnell und kostengünstig ein Zielsystem aufgebaut werden kann. Es wird kein aufwendiges Setup mit vorgeschalteten LoadBalancern (wie beim Produktivsystem) benötigt und so die Komplexität gemindert.
  • Nachteile dieser Installation nach ersten Tests erkannt – Der Aufbau mit einem herkömmlichen Hosting-System ist bei dieser Installation nicht redundant und hat zudem zwei große Fehleranfälligkeiten:
    • Der Ausfall des Host-Systems bewirkt den Ausfall der gesamten Applikation.
    • Ein Fehler in einem der Container kann ebenfalls den Ausfall der gesamten Applikation bedeuten.

 

Zweite Umsetzungsphase: Aufsetzen der Live-Umgebung

Wie an unserem konkreten Beispiel sehr ersichtlich ist das Proof of Concept eine sehr hilfreiche Methode um schwerwiegende Hindernisse bei der Projektentwicklung zu erkennen und zu beheben.

Die wichtigste Erkenntnis unserer Tests: Es musste eine schnelle und kostengünstige Lösung her, die die festgestellten Fehleranfälligkeiten minimiert oder sogar vollständig behebt. Da die Einrichtung einer Kubernetes-Plattform, zur Orchestrierung der Docker-Container, für dieses Setup zu aufwändig ist, blieb nur die Analyse der vorhandenen Systemlandschaft.

Da unser Kunde Mey den Plattform-Hosting-Service AWS (Amazon Web Services) nutzt, bot sich an, einen weiteren AWS-Dienst zur Lösung der Probleme heranzuziehen. Nach eingehender Prüfung haben wir uns für ein Setup mit Amazon ECS (Elastic Container Service) entschieden. Dieser Dienst verfügt über die entsprechenden Skalierungsmöglichkeiten unter Last – sowohl bei den beteiligten Host-Instanzen als auch bei den Containern. Im Betrieb unterzieht ECS die involvierten Container einer ständigen Prüfung und startet bei einer Fehlerrückgabe den betreffenden Container neu. Somit ist Amazon ECS in der Lage, alle festgestellten Fehleranfälligkeiten der ursprünglichen Infrastruktur zu entfernen.

 

Grafik Amazon ECS

 

 

Für eine reibungslose Bereitstellung der einzelnen Container verwenden wir außerdem die Amazon Elastic Container Registry (ECR). Dies hat den wichtigen Vorteil, dass wir das vollständige Setup nahtlos in unser Deployment übernehmen können.

 

Zukunftsfähigkeit und Zuverlässigkeit in einem

So hat unser Kunde Mey durch die Amazon-Dienste bei der Infrastruktur zwar alles „unter einem Dach“, aber durch die Container-Architektur trotzdem kein monolithisches System, das die Wartung und Erweiterung der Magento E-Commerce-Plattform behindert und auch keine Anfälligkeiten für Flaschenhälse beim Datentransfer hat. Und dieses Setup bietet noch weitere Vorteile: Durch die enorme Flexibilität und Skalierbarkeit sowie die einfach zu ändernde Container-Struktur ist Mey vollkommen zukunftsfähig und kann eine langfristige Digitalisierungsstrategie verfolgen.

 

Bilder: netz98

 

Ihr Kontakt

Hartwig Göttlicher
Hartwig Göttlicher
Head of Business Development
Webshops mit voller Performance und Sicherheit dank eines hochverfügbaren Varnish
Varnish-Teasebild mit Cloud- und Servernetz

Dank eines Workarounds von netz98 ist es möglich, die Performance von cloud-gehosteten Webshops mit Varnish-Servern dauerhaft zu sichern. Wir erklären Read more

Headless Commerce: Mehr Geschwindigkeit, mehr Möglichkeiten

Headless Commerce ist eine Technologie, die schon bald den Takt im E-Commerce angeben wird – und jeder Shopbetreiber sollte diesen Read more

IT-Sicherheit: Der optimale Schutz für E-Commerce-Plattformen
Schalter mit Schutzschild- und Schlosssymbol, der von einer Hand auf "Maximum" gedreht wird

Bei vielfältigen E-Commerce-Plattformen wie Magento und Adobe Commerce ist IT-Sicherheit besonders gefragt. Lesen Sie, worauf es ankommt!

Magento Open Source oder Adobe Commerce? Möglichkeiten und Erfolgsfaktoren
Zahnrad mit Pfeil-Kreislauf und Entwicklungsumgebung, im Hintergrund Laptop und Tablet-PC

Finden Sie heraus, welches System Ihren zukünftigen E-Commerce-Anforderungen entspricht und wie valantic bei der Entscheidung helfen kann.

Online-Marktplätze: Vorteile im DACH-Raum nutzen

Entdecken Sie die Vorteile von Online-Marktplätzen im DACH-Raum. Tipps zu Vorgehen, Tools & relevanten Plattformen!

Commerce Integration Suite: Die umfassende Lösung von valantic für nahtlose E-Commerce-Integration 
Laptop mit Einkaufswagen auf dem Screen und Entwicklungsumgebung drumherum

Mit unserer von Adobe akkreditierten Commerce Integration Suite machen E-Commerce-Unternehmen ihre Plattformen effizienter. Mehr erfahren!

Nachhaltiges Handeln: Mit Strategie zum Wettbewerbsvorteil im E-Commerce
Eine Gruppe junger, hipper Menschen sitzt links im Bild an einem Tisch vor einem Laptop. Sie scheinen in geschäftliche Gespräche verwickelt. Das Umfeld spiegelt ein Büro im Industrial Style. Rechts vorne im Bild ist ein Fahrrad abgestellt.

Nachhaltiges Handeln wird immer wichtiger: Zeit für Optimierung im E-Commerce. Entdecken Sie Strategien und Praxisbeispiele von mey!

Low-Code im E-Commerce: mehr Effizienz und Flexibilität
digitale Hand tippt auf einen Button mit der Schrift "Low Code Platform"

Erfahren Sie, wie Low-Code Tools die Entwicklung von E-Commerce Plattformen beschleunigen und flexibel machen. Jetzt informieren!

Über den Autor