OVH NEWS | Aktuelles, Innovationen und IT Trends


Aktuelles, Innovationen & IT Trends







31. Januar 2019
Teilen

Geschrieben von OVH Team


Warum überhaupt OVH Managed Kubernetes?


Die Verwendung von Kubernetes ist eine großartige Erfahrung, in der Produktion ist es aber gar nicht so einfach. Und eine vollständig verwaltete Kubernetes-Plattform aufzubauen, ist sogar noch schwieriger…

Im November 2018 haben wir die Betaversion unseres Managed Kubernetes Service gestartet. Es war das Ergebnis einer langen Reise, die wir als Kubernetes-Benutzer begannen und die uns zum Aufbau eines vollständig verwalteten Kubernetes-Service führte, zu einer zertifizierten Kubernetes-Plattform machte und uns viel über Aufbau, Betrieb und Handhabung von Kubernetes im großen Maßstab lehrte.

Jetzt, da die Betaversion läuft und wir an den letzten Änderungen für den finalen Release arbeiten, möchten wir einige unserer wichtigsten Lektionen mit Ihnen teilen, unsere technischen Entscheidungen erläutern und die im Laufe dieses Prozesses entwickelten Tools vorstellen.

In unserem heutigen Beitrag werden wir OVH Managed Kubernetes vorstellen und erklären, warum wir die Plattform überhaupt entwickelt haben. In den nächsten Beiträgen werden uns dann mit ausgewählten Aspekten der Architektur befassen, etwa mit der Skalierung der etcd-Datenbank oder mit der Frage, wie wir die Kubernetes-Master unserer Kunden innerhalb der Worker-Nodes unseres übergeordneten Kubernetes-Masters zum Laufen bringen.

Die Kubernetes-Reise 

Das erste Mal mit Minikube zu spielen ist oft wirklich faszinierend. Man muss sich keine Gedanken mehr über die Verwaltung der Instanzen machen, nicht mehr sorgfältig überwachen, ob die Container laufen … Sie stoppen eine Instanz und Kubernetes erstellt die Container auf einer anderen Instanz neu … It’s a kind of magic!

Wenn Sie dann erst einmal auf den Geschmack gekommen sind, denken Sie sich, dass Sie jetzt versuchen sollten, ein richtiges Cluster aufzubauen und ein paar größere Apps darauf laufen zu lassen. Sie erstellen ein paar VMs, lernen mit kubeadm umzugehen und haben einige Zeit später ein Kubernetes-Cluster für Ihre Apps erstellt. Die Magie ist immer noch da, aber Sie ahnen schon … wie so oft im Märchen hat die Magie ihren Preis.

Einsatz von Kubernetes in Produktion

Und wenn Sie dann versuchen, Ihr erstes Kubernetes-Cluster zu deployen – sei es auf einer Hypervisor- oder einer Bare-Metal-Plattform –, stellen Sie fest, dass der Preis vielleicht doch etwas zu hoch sein könnte. 

Und dabei ist das Deployment des Kubernetes-Clusters nur der Anfang. Damit es produktionsbereit ist, müssen erst noch ein paar weitere Punkte sichergestellt werden: 

  • Der Installationsprozess ist automatisierbar und wiederholbar.
  • Der Upgrade-/Rollback-Prozess ist sicher. 
  • Ein Recovery-Verfahren ist vorhanden, dokumentiert und geprüft.
  • Die Performance ist vorhersagbar und konsistent, insbesondere wenn persistente Speichermedien („Persistent Volumes“) verwendet werden.
  • Das Cluster ist funktionsfähig und verfügt über genügend Tracing, Metriken und Logs, um Fehler und Probleme schnell zu erkennen und zu beheben.
  • Der Dienst ist sicher und hochverfügbar.


Unsere Antwort auf diese operationale Komplexität

Wenn Sie gedacht haben, mit dem Deployment Ihres neuen Kubernetes-Clusters könnten Sie auf NoOps umstellen, dann haben Sie sich wohl geirrt. Um bei unserer Magie-Metapher zu bleiben: Es dauert lange, bis man wirklich zaubern kann, und es ist auch nicht ganz ungefährlich …

Wie bei so vielen leistungsstarken Technologien ist Kubernetes zwar aus Dev-Perspektive einfach und vielseitig, aber aus Ops-Perspektive hochkomplex. Kein Wunder, dass die meisten Anwender für das Upgrade von Proof-of-Concept zu Produktion verwaltete Kubernetes-Lösungen in Betracht ziehen.

Wir bei OVH wollten als benutzerorientiertes Unternehmen auf diesen Bedarf eingehen, indem wir unsere eigene, vollständig verwaltete Kubernetes-Lösung entwickeln – komplett auf Open-Source-Basis, ohne Vendor-Lock-in und voll kompatibel mit allen „pure“ Kubernetes-Lösungen. Unser Ziel war, für unsere Nutzer ein vollständig verwaltetes und gebrauchsfertiges Kubernetes-Cluster bereitzustellen – ohne lästige Details bei Installation oder Betrieb.

Auf den Schultern von Riesen …

Wir wollten also eine verwaltete Kubernetes-Lösung anbieten. Die Frage war nur: wie? Der erste Schritt war einfach: Wir mussten sicher sein, dass die zugrunde liegende Infrastruktur absolut stabil war. Daher haben wir beschlossen, unsere eigene Public Cloud zu verwenden, die auf OpenStack basiert.

Weil unsere Plattform auf der OVH Public Cloud und damit auf einem ausgereiften, hochverfügbaren und auf Industriestandards basierenden Produkt aufbaut, konnten wir uns direkt auf das eigentliche Problem konzentrieren: die Schaffung eines hochskalierbaren, einfach zu bedienenden, CNCF-zertifizierten und vollständig verwalteten Kubernetes-Dienstes.


Was kommt als Nächstes?

In den nächsten Beiträgen dieser Serie werden wir uns näher mit der Architektur des OVH Managed Kubernetes Service befassen, einige unserer technologischen Entscheidungen beschreiben und erklären, warum wir sie getroffen und wie wir sie schließlich umgesetzt haben.

Kubinception: Kubernetes auf Kubernetes betreiben


Anfangen werden wir mit einer unserer wohl mutigsten Entscheidungen: Kubernetes auf Kubernetes zu betreiben – oder wie wir es gerne nennen: Kubinception.

Horazio Gonzales, Developer Evangelist at OVH Plattform