Walmart hat vor kurzem eine Hybrid-Cloud-Plattform eingeführt, die die Softwareentwickler des Unternehmens dabei unterstützen soll, eine Vielzahl von Infrastrukturtypen und Cloud-Services über eine einzige Konsole zu nutzen. Mit der sogenannten "Walmart Cloud Native Platform" will der Einzelhandelsriese seinen Entwicklern eine Abstraktionsschicht zur Verfügung stellen, die Public Clouds und Walmart-eigene Infrastrukturen und Dienste zusammenbringt.
Ressourcen à la Carte
Kevin Evans, Vice President of Infrastructure Services bei Walmart, erklärt, welches Ziel der Konzern damit anstrebt: "Die Idee ist, die zugrundeliegende Infrastruktur zu abstrahieren, so dass sie für alle gleich aussieht und sich Anwendungs- und Entwicklungs-Teams nicht um die Unterschiede zwischen Azure und der Walmart-eignen Infrastruktur kümmern müssen."
Evans arbeitet innerhalb des Plattform-Engineering-Teams bei Walmart, das sich auf drei Bereiche konzentriert:
Aufbau einer gemeinsamen Infrastrukturebene und einer Reihe von Cloud-Funktionen für alle Entwickler bei Walmart,
Pflege einer zentralen Datenplattform und
Verbesserung der Entwicklerproduktivität durch optimierte Tools und Automatisierung.
"Wir stellen eine Container-Plattform oder eine VM zur Verfügung, die als zentrale Schnittstelle für unsere Ingenieure dient, während wir ihnen gleichzeitig die besten Funktionen zur Verfügung stellen", erklärt der Infrastrukturspezialist. "Unsere Entwickler können über die interne DX.io-Konsole auf diesen Katalog von Managed Services zugreifen und die benötigten Funktionen oder Ressourcen à la carte auswählen. Sie haben zum Beispiel in Sachen Datenbanken die Wahl zwischen Azure Cosmos DB und Google Cloud Spanner."
Die Entwickler haben dabei derzeit eine gewisse Flexibilität in Bezug auf die Art und Weise, wie und wo sie ihre Anwendungen ausführen. Walmart setzt aber auch auf eine wachsende Anzahl vorgefertigter Templates und "goldener Pfade", die bestimmte technologische Probleme lösen und entsprechend weniger Flexibilität ermöglichen. "Mit zunehmender Reife wollen wir Entscheidungen darüber, wo etwas platziert wird, in die Plattform einbetten und diesen Entscheidungsprozess auf der Grundlage kodifizierter Anforderungen und Konfigurationen steuern", stellt Evans in Aussicht. Dabei solle möglichst verhindert werden, dass die Entwicklerplattformen bei Walmart zu starr und die Developer daran gehindert werden, die besten Angebote der Cloud-Anbieter zu nutzen.
Hybrid by Design
Walmart arbeitet in Sachen Cloud mit Microsoft und Google, aber - im Gegensatz zu vielen anderen Retail-Unternehmen - ausdrücklich nicht mit Amazon Web Services. Die Cloud-Strategie von Walmart - das sogenannte "Triplet"-Modell - ist von vornherein hybrid ausgelegt. Sie ermöglicht Entwicklern, auf konsistente Weise mit bestehenden Walmart-Rechenzentren, Public-Cloud-Plattformen und einer wachsenden Zahl von Edge-Standorten zu arbeiten.
"Indem wir Public Clouds mit unseren Walmart Private Clouds über ein regionales Cloud-Modell in den USA verbinden, realisieren wir 10.000 Edge-Cloud-Knoten in unseren Standorten und bringen Rechenleistung und Daten näher zu unseren Kunden und Mitarbeitern", schreibt Suresh Kumar, Global Chief Technology Officer bei Walmart, in einem LinkedIn-Pulse-Beitrag. In der Praxis bedeutet das für Evans und sein Team Management-Arbeit in zweifacher Hinsicht: Einerseits muss eine große Container-Flotte mit Kubernetes, andererseits eine ausufernde OpenStack-Private-Cloud-Plattform für VM-basierte Workloads verwaltet werden. Dann gibt es noch den Edge-Bereich, mit dem Walmart seine rund 6.000 Filialen, Distributions- und Fulfillment-Zentren in den USA mit Rechenleistung versorgen will.
Während einige Unternehmensapplikationen in einem zentralen Walmart-Rechenzentrum laufen, werden andere direkt in der Filiale oder dem Lager gehostet, um eine größere betriebliche Ausfallsicherheit und niedrige Latenzzeiten für sensible Workloads zu ermöglichen.
Sparen per Streamlining
Das Triplet-Modell eröffnet Entwicklern neue Produktivitäts- und Innovationsmöglichkeiten und eröffnet Walmart die Möglichkeit, seine Preise zu optimieren. Der Konzern schätzt, jeden Monat 170.000 Anpassungen an seinem Website-Backend vornehmen zu können, was im Vergleich zum Ausgangszustand einer 1.700-fachen Steigerung entspricht. "Die Positionierung von Workloads an den richtigen Stellen hilft uns, die Anwendungsleistung zu steigern und die Latenzzeiten zu verringern. Darüber hinaus bietet das Triplet-Modell eine höhere Kapazität. Das ermöglicht uns, besser auf Nachfragespitzen zu reagieren", schreibt Walmart-CEO Kumar.
Evans geht davon aus, dass 70 Prozent der Anwendungen von Walmart "generischer Natur" sind - diese könnten deshalb fast überall laufen. "Wir wollen eine nahtlose Verlagerung von Workloads ermöglichen und dies zu einer Plattformfunktion und nicht zu einer Entwicklerentscheidung machen. Indem wir so viele Reibungsverluste wie möglich beseitigen, können wir etwas an einem kosteneffizienteren Ort platzieren", so der Infrastrukturexperte.
Das ermöglicht kurzfristig eine Win-Win-Situation. Allerdings ist sich Evans bewusst, dass die Cloud-Rechnungen seines Unternehmens mit zunehmender Abhängigkeit von Public-Cloud-Diensten steigen könnten, wenn sie nicht sorgfältig überprüft werden: "Die Services in der Public Cloud sind manchmal überraschend teuer. Deshalb haben wir an dieser Stelle mit unseren Partnern herausgearbeitet, wo wir die Workloads idealerweise ausführen sollten." (fm)
Dieser Beitrag basiert auf einem Artikel unserer US-Schwesterpublikation Infoworld.