1
 
 
Profil
In deinem persönlichen Profilbereich kannst du den Status deiner Bewerbung einsehen, unvollständige Bewerbungen zwischenspeichern und aktuelle News und Events einsehen
27. April 2022

Die Open Source Private Cloud in der Otto Group

Worum geht es in diesem Artikel?

Schon lange ist der Begriff „Cloud“ nicht mehr nur irgendein Buzzword. Die Cloud, oder besser die Clouds, sind aus unserem Daily-Doing quasi nicht mehr wegzudenken. Doch was, wenn ich, obwohl sich die Spreu schon längst vom Weizen getrennt hat, noch immer nicht sehr viel über Cloud weiß? Einfach abheben und den Blindflug in die große, weite Welt der Public Clouds starten? In einem Web Frontend mal etwas zusammenklicken und schauen, wie es sich anfühlt? Cloudformation? DevOps? Wait! – What? Um richtig testen zu können, auch gleich meine Daten in irgendein Bucket schieben und los geht’s? Übung macht bekanntlich den Meister. Go for it!

Wie wir finden ein ziemlich gewagter Ansatz. Doch was wäre, wenn es einen sicheren Hafen gäbe, so sicher, dass ich fast im totalen Blindflug mit der Cloud spielen, Erfahrungen und Know-how aufbauen kann? Nun, genau das dachten wir uns auch und darum haben wir genau diesen sicheren Hafen gebaut – die „Open Cloud Platform“ oder kurz „OCP“.

Doch wer sind wir eigentlich? Wir sind ein virtuelles Team aus dem Cloud & Infrastructure Services-Bereich der OTTO Group IT. Unser fachlicher Background setzt sich aus den Bereichen Virtualisierung, Storage, Netzwerk und DevOps zusammen.

Seit vielen Jahren betreiben wir erfolgreich die VMware Private Cloud Umgebung „SPICE“. Zu unseren Kund*innen gehören interne Teams sowie Konzerngesellschaften, welche „Managed Services“, meist in Form von virtuellen Maschinen von uns beziehen.

Mit der Trendwende hin zur Public Cloud, wurden auch die Rufe nach einer agilen, skalierbaren Private Cloud Umgebung im Konzern lauter. Schnell haben wir erkannt, dass hier dringender Handlungsbedarf besteht, um am Puls der Zeit zu bleiben und unseren Kunden den bestmöglichen Service zu bieten. Dies war die Geburtsstunde der Open Cloud Platform.

Was ist die Open Cloud Platform?

OCP ist eine dicht an die Funktionalitäten der Hyperscaler angelehnte Private Cloud in den Campus-Netzen der Otto Group. Hier halten Benutzer*innen selbst die Zügel in der Hand und können in ihrem Private Cloud Bereich völlig frei agieren, ausprobieren, aufbauen, abreißen, kaputtmachen und wieder von vorn beginnen.

Natürlich ist OCP auch für den produktiven Betrieb bereit und beheimatet bereits erste produktiv eingesetzte Umgebungen wie z.B. Th!ngs. Th!ngs ist eine Application aus vielen Microservices, um u.a. die Services der Otto Group IT via SAP an Kund*innen zu verrechnen. Auch Public Cloud Accounts, welche die Otto Group IT ihren Kund*innen bereitstellt, werden seit 2022 in Th!ngs abgerechnet.

Ob hoch komplexe Plattformen mit eigenen (virtuellen) Netzwerken, Routern, DNS Services, Security Groups, Load Balancing, Container oder Compute Instanzen – alle Cloud Ressourcen können in OCP per WebUI oder REST-API konsumiert werden. REST-API, da war doch was? Genau. Tools, wie z. B. Terraform, nutzen die REST-API, um voll automatisiert die benötigte Infrastruktur (IaC) aufzusetzen. Wir haben hier eine Private Cloud geschaffen, in der die Möglichkeiten nahezu grenzenlos sind. Mit dem kleinen, aber feinen Unterschied, dass es unmöglich ist versehentlich etwas ins Internet zu stellen, was dort nichts zu suchen hat. Alles findet auf richtig dicken Cloud-Nodes in unseren Datacentern auf dem OTTO Campus und einer extern betriebenen Co-Location im Raum Hamburg statt.

Arbeitssituation
Arbeitssituation

Unser gesamter Tech Stack ist ein buntes Konglomerat aus 100% Open Source Software – darauf sind wir mehr als stolz.

Der Tech Stack hinter OCP

Die Automation geht schon los, sobald ein Techniker den physischen Server ins Rack geschraubt und ihn eingeschaltet hat. Das noch relativ kalte Eisen sendet einen DHCP Request ins Netzwerk und erhält per PXE die nötigen Boot-Parameter – hier setzen wir MaaS ein. Der Server wird vollautomatisch mit einem Betriebssystem provisioniert, auch die Basis-Konfiguration von Netzwerk, Partitionierung der Festplatten etc. werden hier vorgenommen. Nachdem in MaaS bestimmte Tags zugewiesen wurden, welche die Rolle der Node (z.B. Compute Node) bestimmen, befindet sich die Maschine im Status „Ready to deploy“. Der Server ist also bereit eine Cloud Node zu werden. Yay!

Unsere Cloud basiert auf dem über Jahre erprobten Cloud Framework „OpenStack“. Wer OpenStack kennt, weiß, dass es nicht mit „weiter, weiter – fertig“ installiert ist. Normalerweise. Bei uns ist das schon der Fall, wir sind nur noch einen Schritt weiter gegangen und verzichten sogar auf das „weiter, weiter – fertig“.

Screenshot of the "Registration App"
Screenshot of the "Registration App"

Automate all the Th!ngs

CP betreiben wir voll automatisiertes Up-/Down-Scaling mit Hardware.

In den Tiefen unserer Automation lauert eine Gitlab Pipeline, die MaaS per API nach Nodes mit genau diesem Status absucht. Sobald so eine Node gefunden wurde, wird ein weiterer, wohlbekannter Freund ins Rennen geschickt – Ansible. Der ein oder andere wird sich jetzt denken: „Okay, die nehmen Ansible und installieren die OpenStack Packages…“. Nope, wir betreiben OpenStack zu 100% containerisiert in Docker, inkl. Hypervisor und SDN (Software Defined Network). Ansible ist für uns quasi nur ein etwas besseres Docker-Compose. Es rollt die benötigten Container, ausgewählt anhand der Tags aus MaaS, auf der Node aus und übernimmt die Konfiguration der verschiedenen OpenStack Komponenten wie z. B. Nova, Neutron, Keystone usw.

Auch hier haben wir das Rad nicht neu erfunden. Die OpenStack Community hat erkannt, dass OpenStack anhand von Paketen zu installieren und zu betreiben wahrlich mit viel Schmerz einhergeht. Das deployment Tool unserer Wahl wurde Kolla/Kolla-Ansible. Da wir sehr spezielle Anforderungen haben, mussten wir noch eigenen Code schreiben, um Kolla/Kolla-Ansible für uns passend zu machen. Wie es sich für OpenSource gehört, haben wir diesen Code natürlich zurück in die Community gegeben.

Was gibt es noch zu tun, nachdem alle OpenStack Services auf der neuen Node up & running sind? Kurz und knapp: nichts. Sobald die Pipelines erfolgreich abgeschlossen wurden, ist die Node produktiv und führt i.d.R. bereits neu erstellte Cloud Ressourcen aus.

Umgekehrt, d.h. wenn eine Node in den Ruhestand geht, funktioniert es natürlich genauso. In OCP betreiben wir voll automatisiertes Up-/Down-Scaling mit Hardware.

OpenStack (OCP) Dashbord
OpenStack (OCP) Dashbord

Automatisierung bis zum Schluss

Ist die Automation hier vorbei? Noch lange nicht. Auch unser Monitoring und Logging ist durchautomatisiert. So werden auch die üblichen Verdächtigen wie Grafana, Prometheus, ELK, CheckMK, Alerta uvm. automatisiert in Containern ausgerollt und konfiguriert. Auch die Ressourcen, welche es zu überwachen gilt, finden sich automatisch in o.g. Tools wieder.

Die Open Cloud Platform wird stetig weiterentwickelt, optimiert und wird ihren Anwender*innen in Zukunft noch viele weitere neue Features bieten.

Wir freuen uns ein Produkt geschaffen zu haben, dass ein hohes Maß an Datenschutzsicherheit und zugleich Agilität bietet und heute von zunehmend mehr Bereichen der Otto Group Holding sowie Konzerngesellschaften genutzt wird. OCP bietet einen geschützten Raum für Cloud-Neulinge und richtet sich an agile Entwicklungsteams, für die eine Public Cloud aufgrund ihrer sensiblen Daten nicht in Frage kommt.


Möchtest du Teil des Teams werden?

0Noch keine Kommentare

Dein Kommentar
Antwort auf:  Direkt auf das Thema antworten

Geschrieben von

Ole Kleinschmidt
Ole Kleinschmidt
Senior IT-Architekt

Ähnliche Beiträge

We want to improve out content with your feedback.

How interesting is this blogpost?

We have received your feedback.

Cookies erlauben?

OTTO und drei Partner brauchen deine Einwilligung (Klick auf "OK") bei einzelnen Datennutzungen, um Informationen auf einem Gerät zu speichern und/oder abzurufen (IP-Adresse, Nutzer-ID, Browser-Informationen).
Die Datennutzung erfolgt für personalisierte Anzeigen und Inhalte, Anzeigen- und Inhaltsmessungen sowie um Erkenntnisse über Zielgruppen und Produktentwicklungen zu gewinnen. Mehr Infos zur Einwilligung gibt’s jederzeit hier. Mit Klick auf den Link "Cookies ablehnen" kannst du deine Einwilligung jederzeit ablehnen.

Datennutzungen

OTTO arbeitet mit Partnern zusammen, die von deinem Endgerät abgerufene Daten (Trackingdaten) auch zu eigenen Zwecken (z.B. Profilbildungen) / zu Zwecken Dritter verarbeiten. Vor diesem Hintergrund erfordert nicht nur die Erhebung der Trackingdaten, sondern auch deren Weiterverarbeitung durch diese Anbieter einer Einwilligung. Die Trackingdaten werden erst dann erhoben, wenn du auf den in dem Banner auf otto.de wiedergebenden Button „OK” klickst. Bei den Partnern handelt es sich um die folgenden Unternehmen:
Google Inc., Meta Platforms Ireland Limited, elbwalker GmbH
Weitere Informationen zu den Datenverarbeitungen durch diese Partner findest du in der Datenschutzerklärung auf otto.de/jobs. Die Informationen sind außerdem über einen Link in dem Banner abrufbar.