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
Head of Managed Services

Sepp 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 zusammen mit Martin das Managed Services Team. Wenn er nicht gerade Server in MCollective einbindet, versucht er mit seinem Motorrad einen neuen Geschwindigkeitsrekord aufzustellen.