Du hast deinen AdBlocker an?

Es wäre ein Traum, wenn du ihn für t3n.de deaktivierst. Wir zeigen dir gerne, wie das geht. Und natürlich erklären wir dir auch, warum uns das so wichtig ist. Digitales High-five, deine t3n-Redaktion

Software & Infrastruktur

OpenStack-Alternative: OpenSource-Cloud-Management mit OpenNebula

(Grafik: opennebula.org)

OpenNebula ist im Vergleich zum wesentlich bekannteren OpenStack schon ein alter Hase im Cloud-Management. Dank niedriger Einstiegshürden, guter Dokumentation und einem hohen Maß an Flexibiliät kann es oft eine Alternative zum komplexeren OpenStack sein. Wir gehen der Frage nach, wo sich ein Einsatz lohnt, beschreiben die Konzepte hinter OpenNebula und geben Tipps für den Einstieg.

OpenNebula: Entstanden aus einem EU-Forschungsprojekt

Im Zuge der globalen Digitalisierung und der vorangegangenen Cloud-/Virtualisierungs-Welle ist ein neuer Markt der Cloud-Management-Frameworks entstanden. Sie stellen eine unentbehrliche Basis für das Management, die Automatisierung und Skalierung von Diensten dar. In vielen Fällen bilden diese Frameworks das technische Rückgrat der Apps, die man tagtäglich auf dem Smartphone oder Tablet verwendet.

„Durch die Abwesenheit eines Hypes haben viele potentielle Anwender OpenNebula nicht auf dem Schirm.“

Sowohl Administratoren als auch Entwickler werden mit diesen Tools in die Lage versetzt, dynamisch Ressourcen zu verwalten und vorhandene Bausteine in der virtuellen Infrastruktur zu kombinieren. Die „Cloud-Konsumenten“, die sich dieser Umgebung bedienen, können sowohl Kunden eines Hosting-Unternehmens als auch Abteilungen innerhalb einer Firma sein.

Dabei setzen die Cloud-Management-Frameworks auf vorhandenen Komponenten (Speicher, Rechenleistung und Netzwerktechnik) auf. Dazu werden Schnittstellen entweder vom Framework vorgegeben oder auf die des Partners genutzt (etwa die APIs von VMware).

Neben dem in den Medien und Hersteller-Newslettern sehr präsenten OpenNebula begann schon 2008, ausgehend von einem EU-Forschungsprojekt. Es zählt damit also schon zu einer der „älteren“ Cloud-Plattformen. Zum Vergleich: OpenStack wurde Mitte 2010 aus der Taufe gehoben und kam dabei primär aus den Reihen der Firma Rackspace als auch der NASA.

Das Ziel beider Projekte ist im Grunde genommen gleich: Eine offene Basis für das Cloud-Computing? Damit steht man schnell vor der Entscheidung zwischen OpenStack oder OpenNebula. Falls sich diese Frage überhaupt stellt, denn die nahezu vollständige Abwesenheit eines Hypes dürfte dazu geführt haben, dass viele potentielle Anwender OpenNebula nicht (oder nicht mehr) auf dem Schirm haben. Dabei weist die Plattform einige interessante Aspekte auf, die es zu kennen lohnt, bevor man sich (wie viele andere) sofort auf OpenStack stürzt.

Haustier oder Herdentier?

Durch das Cloud-Computing hat eine neue Art der Klassifizierung von Workloads beziehungsweise virtueller Maschinen Einzug gehalten. Vorbild dabei war der Umgang mit der Tierwelt: Zum einen gibt es die VMs, die eher dem Haustier ähneln und gehegt und gepflegt werden. Daneben gibt es andere VMs, die wie Nutztiere in der Landwirtschaft gehandhabt werden. Diese Bild lässt sich gut mit den Eigenschaften der beiden Gruppen darstellen: „Haustiere“ sind die klassischen „fetten“ VMs: Datenbanken oder Applikationsserver, die individuell gehegt und gepflegt werden (als Hypervisor ist VMwares vSphere verbreitet). Folgende Eigenschaften haben sie gemeinsam:

  • Sehr individuelle Konfiguration, oft manuell erstellt
  • Wenige Instanzen der Dienste und Anwendungen
  • Set & forget ist die Regel – falls die Maschinen Updates erhalten, werden sie vorher auf nicht-produktiven VM getestet
  • Hohe Anforderung an Ressourcen: Speicherkapazität und/oder IO-Performance sowie Rechenleistung
  • Definierte und einzuhaltende Service-Level-Agreements
  • Hochverfügbarkeit
  • Backup und Disaster-Recovery

Die Nutztiere hingegen sind die Arbeitsbienen und unterschieden sich schon allein in der schieren Anzahl von den Haustieren. Sie haben festgelegte Aufgaben, die es zu erfüllen gilt. Diese Gruppe zeichnen folgende Eigenschaften aus:

  • Viele gleichartige Maschinen mit identische Konfiguration in Bezug auf Dienste, und Applikationen, meist basierend auf fertigen Golden Images
  • Eine Aufgabe für den „Schwarm“, beispielsweise Berechnungen durchführen oder für eine unbekannte Anzahl an Usern als Desktop bereitstehen
  • Die Wichtigkeit der einzelnen Maschine ist sehr gering, also kein Backup oder Disaster Recovery
  • Kurze Lebenszyklen: An einem Tag werden 100 VMs gebraucht, am nächsten nur noch 50, jedoch unter anderer Zielsetzung

Ein Beispiel dafür sind virtuelle Floating-Desktops, Webserver als auch Server zum Prozessieren von Daten.

OpenNebula kann im Prinzip beide Anforderungen bedienen, ist jedoch eher bei der Haustierpflege einzuordnen und damit für für die Automatisierung der Rechenzentrums besser geeignet als zum Ausrollen von tausenden VMs. Im Vergleich mit bekannten kommerziellen Produkten ist OpenNebula also eher beim VMware „vCloud Director“ anzusiedeln, als bei AWS als Anbieter einer möglichst kompletten Bandbreite an Cloud-Diensten.

Einordnung von Cloud-Management-Software.
Einordnung von Cloud-Management-Software.

Von Rollen und Ressourcen

„Am besten nähert man sich dem System aus Sicht der Aufgaben.“

Die Beschäftigung mit Cloud-Werkzeugen und -Frameworks setzt in der Regel voraus, sich mit (meist herstellerkonformen) Definitionen und Begrifflichkeiten auseinanderzusetzen, die mehr oder weniger scharf definiert sind. Auch bei OpenNebula führt daran kein Weg vorbei. Jedoch sind Begriffe und Konzepte hier eher allgemein gehalten und oft ungefähr deckungsgleich zu anderen Frameworks.

Am besten nähert man sich dem System aus Sicht der Aufgaben und damit verbundenen Nutzergruppen. Es gibt zum einen die Konsumenten: Entwickler beziehungsweise „Endbenutzer“, die Ressourcen oder einen Dienst verwenden – die Ressourcen können dabei aus einer OpenNebula-Wolke oder von anderen Quellen wie Amazon Web Services kommen. Die Herkunft ist für den Konsumenten nicht notwendigerweise sichtbar.

Daneben erfüllen die „Cloud-Admins“ noch am ehesten die „klassischen“ IT-Management-Aufgaben: die Infrastrukturbausteine verwalten und für den reibungslosen Betrieb sorgen. Um fertige Bausteine auszurollen zu können, braucht es die „Appliance-Builders“. Sie bauen die Pakete und fertigen Plattformen für die Entwicklung oder die weiteren Schritte der Bereitstellung. Zu guter Letzt haben die „Cloud-Integrators“ sich um die Schnittstellen und API-Thematik zu kümmern.

Typische Nutzerrollen von OpenNebula.
Typische Nutzerrollen von OpenNebula.

Das Rollenmodell von OpenNebula erlaubt die Abbildung dieses Zugriffmodells ohne größere Anpassungen. OpenNebula verwendet als Nutzerkonzepte folgende drei Zugriffsebenen (und daraus resultierend unterschiedliche GUIs): Der „Cloud-User“, der Ressourcen konsumiert und auf der höchsten Abstraktionsstufe arbeitet. Daneben gibt es den „VDC (Virtual Data-Center) -Admin“, der sich um die virtuelle Infrastruktur kümmert. Und als oberste Instanz fungiert der „Admin“, der über alle Einstellungen und Ressourcen vollen Zugriff hat. Darüber hinaus sind auch erweiterte Provisionierungsmodelle mit vorkonfigurierten Berechtigungen möglich, etwa, Gruppen-Administratoren oder „Advanced User“ mit zusätzlichen Rechten.

Hinsichtlich physischer Ressourcen ist das logische OpenNebula-Konzept recht einfach aufgebaut. Hosts, virtuelle Netze und Datastores bilden die unterste Ebene. Gruppen dieser Ressourcen, die aus administrativen oder anderen Gründen zusammengehören, lassen sich in Clustern zusammenfassen, die bei Bedarf wiederum zu so genannten Zones gruppiert werden können. Bei der Definition eines Virtual Datacenters ist man in der OpenNebula-Welt relativ frei: Sie können sowohl aus individuellen Ressourcen wie Hosts und Virtual Networks bestehen, aber auch auch Clustern.

Ein Begriff, der in der OpenNebula-Welt häufig fällt, ist „Cloud-Bursting“. Dabei nutzt man Schnittstellen, um Ressourcen (Rechenleistung, Speicher oder auch Datenbanken) von anderen Clouds oder Anbietern für das Projekt mit einzubinden – falls beispielsweise die lokale Infrastruktur nicht mehr genügend Ressourcen hat. Durch offene Schnittstellen ist das möglich und sogar gewünscht. OpenNebula bietet hierbei Interfaces zu Microsoft Azure.

Architektonisches

Der Aufbau von OpenNebula ist relativ einfach und schnell erklärt. Der abstraktere Cloud-Management-Teil von OpenNebula stellt über eine einfache GUI beziehungsweise abstrahierte APIs Funktionen zur Provisionierung und Elastizität der gesamten Cloud-Struktur sowie Mehrmandanten-Fähigkeiten zur Verfügung. Dieser Teil orchestriert auch die Schnittstelle zu „externen“ Clouds, um das Cloud-Bursting betreiben zu können.

Prinzipieller Aufbau von OpenNebula.
Prinzipieller Aufbau von OpenNebula.

Eine Ebene darunter ist das Management der virtuellen Infrastruktur für die Verbindung mit den Hypervisor-Schicht zuständig, seien es KVM, Xen oder auch Vmwares ESXi. Gemeinsam mit dem Hypervisor sorgt dieser Teil von OpenNebula für die Optimierung der Ressourcen und Themen wie Hochverfügbarkeit und Business-Continuity und erlaubt eine einheitliche Sicht auf die virtuelle Infrastruktur. Ist schon ein vCenter von VMware vorhanden, kann es parallel genutzt oder auch als Ressource in das Cloud-Management von OpenNebula eingebunden werden. Die Einbindung erfolgt dabei über die VMware-Treiber.

Finde einen Job, den du liebst

Bitte beachte unsere Community-Richtlinien

Eine Reaktion
Florian Heigl

Hi,

das mit den tausenden VMs ist bei OpenNebula kein Thema - OpenNebula Umgebungen waren lange im Durchschnitt groesser als typische OpenStack Setups.
Gerade im Forschungsbereich oder im Hosting haben die Leute zehntausende VMs auf OpenNebula laufen.

Zu einer Produkteinfuehrung wie OpenStack sollte auch gehoeren, dass man den Markt wirklich sichtet und mit den eigenen Anforderungen vergleicht.
OpenStack kann eine gute Wahl sein, wenn man von einem *ganz bestimmten* SDN Feature traeumt, oder einfach die Kartonloesung mit 24x7 Support vom bereits im Haus eingesetzten Vendor will, oder ... ne.
Mehr faellt mir eigentlich nicht ein.

Es muss einen wirklichen Grund geben, einen echten Vorteil fuer den jeweiligen OpenStack zu waehlen. Ansonsten wirft man im Vergleich zu CloudStack oder OpenNebula zu viel Geld und Zeit zum Fenster raus.

Antworten

Melde dich mit deinem t3n-Account an oder fülle die unteren Felder aus.

Abbrechen