Seite wählen

Rückblick auf ein Jahr mit der Cloud

von | Dez 11, 2012 | Virtualisierung, OpenNebula, Web Services

Laut den Mayas geht 2012, also schon in ein paar Tagen, die Welt unter! Bevor es zu spät ist möchte ich deshalb noch die Gelegenheit nutzen über das vergangene Jahr, insbesondere über die Erfahrungen mit OpenNebula als private Cloud, zu berichten.
Zum Jahresbeginn starteten wir mit dem Ziel eine private Cloud für uns und unsere Kunden in unserem Rechenzentrum betreiben zu können. Am Ende der Evaluierungsphase stellte sich OpenNebula für uns als die richtige Lösung dar und bis jetzt haben wir die Entscheidung noch nicht bereut. OpenNebula ist ein starkes Open-Source Projekt, dass sich besonders durch seine stetige und rasante Weiterentwicklung auszeichnet. Mittlerweile ist das Projekt auch regelmäßiger Gast auf unseren Konferenzen und OpenNebula wurde mit in unser Schulungsportfolio aufgenommen. Die gute Partnerschaft zwischen uns und OpenNebula hält für das kommende Jahr voraussichtlich noch einige Überraschungen parat. Selbstverständlich erfährt man auf unserem Blog als Erster davon – solange die Gerüchteküche nicht schneller ist.
Unsere private Cloud ging mit der Version 3.2 in den Produktivbetrieb. Das Setup ist so ausgelegt, dass jeder Host sowohl ein Wirt-System als auch das OpenNebula-Frontend als Rolle übernehmen kann. Die Logik übernimmt hierfür Pacemaker auf Basis von Corosync. Das zentrale Storage war zu Beginn ein iSCSI-Export mit OCFS2, das in der Betaphase auch jeden Failover-Fall mitgemacht hat, sobald es allerdings produktiv war, kam es zu nicht deterministischen Problemen, weshalb wir in einer nächtlichen Wartung das OCFS2 durch NFS ersetzt haben.
Ein weiteres Problem trat auf als der Dienst libvirtd, mit dem OpenNebula die VMs auf den Hosts überwacht und bei Bedarf auf einem anderen Node neustartet, seinen Dienst auf einem Host mit Segfault quittiert hat. Daraufhin hat OpenNebula die vermeintlich als down deklarierten VMs doppelt auf den anderen Hosts gestartet. Aufgrund dessen haben wir uns einen Ressource Agent zur Überwachung von libvirtd geschrieben und diesen mit in die Kontrolle von Pacemaker übergeben. Würde das Problem wieder auftreten würde Pacemaker den entsprechenden Host mit allen VMs und Diensten mit Hilfe von STONITH hart neustarten (Strom aus).
Auf die Resource Agents ist leider auch nicht immer Verlass. Nach einem System Update wurde der RA, der sich um das STONITH kümmert, vom Paketbetreuer mit einem Syntaxfehler im Bash-Skript ausgerollt, was natürlich erst auffiel, als ein Host gefenced werden sollte.
Zu guter Letzt gab es natürlich immer noch das berühmte Layer 8 Problem. Auf Details verzichte an dieser Stelle aber lieber 🙂
Zusammenfassend kann man also sagen, OpenNebula hat sich verhalten wie es soll und es hat eher die Infrastruktur drum herum bzw. die Software Probleme gemacht. Nach der Fehlerbeseitung der Kinderkrankheiten läuft unsere private Cloud nun performant und sehr zuverlässig. Auch das Update auf 3.4, mit dem die multiplen Datastores eingezogen sind, und später auf 3.6 waren ohne größeren Komplikationen möglich.
Mittlerweile hat sich die Anzahl unserer Wirt-System verdoppelt und auch die Anzahl an produktiven VMs nimmt stetig zu. Die Erweiterung der Cloud um weitere Host-Systeme ist dank Puppet und den hierfür geschriebenen Puppetmodulen einfach und schnell möglich. Hosts von VMs via Livemigration zu befreien, um Wartung am Host-System vornehmen zu können (Livemigration), Ressourcen-Allozierung (CPU,Memory,Quotas) und die sekundengenau Berechnung der benötigten Ressourcen für das Accounting sind nur einige herausstechende Funktionen, die uns die Arbeit erleichtern und neue Möglichkeiten zur Administration bereitstellen.
Unser Auszubildender Marcus hat uns für seine Abschlussprüfung eine kleine Cloud als Staging-Umgebung und Spielwiese zur Verfügung gestellt, so dass wir zukünftig Updates und Features vorher ausgiebig testen können. Mit Ozones ist dann auch die zentrale Steuerung mehrerer Clouds möglich.
Zukünftig stehen natürlich weitere Updates aus, sowie die Möglichkeit unseren Kunden Zugriff zu gewähren und hoffentlich auch der stetige Ausbau der Cloud-Infrastruktur durch Neukunden und Wachstum unserer bestehenden. Die Aussichten sehen jedenfalls gut aus.
Insgesamt und trotz der anfänglichen Schwierigkeiten ist das Projekt „private Cloud“ ein voller Erfolg und OpenNebula hat sich für uns als eine sehr gute Wahl entpuppt.

Sebastian Saemann
Sebastian Saemann
CEO Managed Services

Sebastian kam von einem großen deutschen Hostingprovider zu NETWAYS, weil ihm dort zu langweilig war. Bei uns kann er sich nun besser verwirklichen, denn er leitet das Managed Services Team. Wenn er nicht gerade Cloud-Komponenten patched, versucht er mit seinem Motorrad einen neuen Rundenrekord aufzustellen.

2 Kommentare

  1. Jörg

    Meine 2 Cents über OCFS – OCFS2:
    Für mich macht einfach der Betrieb von OCFS2 ohne Oracle Ultimate Kernel und dementsprechenden Support überhaupt gar keinen Sinn mehr. Nur hier ist die aktuellste OCFS2-Version enthalten.
    Im WWW und in Bücherform wird OCFS2 immer als Paradebeispiel für Cluster-FS und Linux-HA durchexerziert und viele, schnelle Setups wurden in den letzten Jahren durchgeführt und am Leben erhalten. Hier tut sich dann schnell eine Wissenslücke auf: Keine Sau 😉 weiß wie man das Ding managed, wie man Probleme behebt. Dazu kommen dann die alten OCFS2-Versionen ausserhalb Oracle dazu.
    Letztendlich habe ich mich bei Fehlersuche in Setups selbst schon oft erwischt: Kernel-Version entpacken, Quellcode studieren. Bei der Umstellung auf NFS meint man zuerst in die Vergangenheit zu reisen, letztendlich umgeht man aber eine Vielzahl von Problemen und KISSed es.

    Antworten
  2. Sebastian Saemann

    Hi Jörg,
    danke für dein Feedback! Ich bin ganz deiner Meinung. Ich hatte zudem OCFS2 über Corosync anstatt über den Oracle o2cb Clusterstack kommunizieren lassen. Ich kann es nicht bestätigen, aber subjektiv kamen viele Fehler vermutlich auch aufgrund der Lösung mit dem ‚alternativen‘ Clusterstack. Ein einfaches Abmelden am Cluster durch Herunterfahren eines Servers ging sporadisch schief und veranlasste OCFS2 sein Dateisystem readonly zu mounten.
    Eins muss man jedoch erwähnen: In keinem Szenario und Ausfall hatte das Dateisystem einen Treffer 🙂

    Antworten

Trackbacks/Pingbacks

  1. Weekly Snap: A Journey in the Cloud, Pylint for Python & Christmas Cheer › NETWAYS Blog - [...] reflected on a year of cloud computing with OpenNebula, learning the ins and outs of central storage with OCFS2…

Einen Kommentar abschicken

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Mehr Beiträge zum Thema Virtualisierung | OpenNebula | Web Services

CfgMgmtCamp 2024: Unser Rückblick

Vergangene Woche fuhr ein Teil unseres Teams bei NWS bis nach Ghent in Belgien, um am ConfigManagementCamp 2024 teilzunehmen. Hierbei handelt es sich um eine kostenlose Konferenz, direkt im Anschluss an die FOSDEM, was Jahr für Jahr für ein großes Publikum aus Fans...

Effektive Zugriffskontrolle für GitLab Pages

Grundlagen von GitLab Pages GitLab Pages sind eine facettenreiche Funktion, die es ermöglicht, statische Webseiten direkt aus einem GitLab-Repository heraus zu hosten. Diese Funktionalität eröffnet eine breite Palette von Anwendungsmöglichkeiten, von der Erstellung...

Why We’re Excited About DevOps Camp 2023!

This year, our NETWAYS Web Services Team is highly motivated to participate in DevOps Camp in Nuremberg! After a short break since stackconf in Berlin, we are back at a conference. We are delighted to be able to support DevOps Camp once again. In this article, we...