sumetho - Fotolia

OpenStack Cinder ermöglicht Block Storage auf der Open Source Cloud-Plattform

OpenStack Cinder ist ein Projekt der Cloud-Plattform, um Rechenleistungen, virtuelle Maschinen und Volumes mit Block Storage zu unterstützen.

Die OpenStack-Plattform ist ein Forum für Open-Source-Collaboration, um ein Ökosystem für private Clouds zu entwickeln, indem IT-Services auf Web-Niveau geliefert werden.

OpenStack ist aufgeteilt in eine Reihe von einzelnen Projekten, die alle einen Code-Namen in Anlehnung an den jeweiligen Zweck des Projekts besitzen.

Virtuelle Maschinen – oder Rechenleistung – werden durch ein Projekt mit Namen Nova zur Verfügung gestellt. In frühen OpenStack-Implementierungen hatten die virtuellen Maschinen von Nova keinen festen Ort, wurden also an keinem dauerhaften Speicherplatz vorgehalten: Eine solche virtuelle Maschine von Nova verlor ihren Inhalt, wenn sie heruntergefahren wurde.

Mit der Entwicklung von Nova wurde ein Feature mit Namen Nova-Volume eingeführt, um virtuelle Maschinen auf bestimmten Medien zu speichern – vergleichbar mit der Methode, mit der Elastic Cloud Compute (EC2) von Amazon Web Services Instanzen auf dauerhaften Medien (bekannt als Elastic Block Store, EBS) abspeichert. Das Feature Nova-Volume wurde schließlich durch ein eigenes Projekt, Cinder genannt, abgelöst, das dauerhaften Block-Level-Storage für OpenStack-Umgebungen zur Verfügung stellt.

Wie Cinder arbeitet

Cinder führt eine Reihe von Aufgaben in OpenStack-Umgebungen aus. In erster Linie ist es ein Stück Middleware, das Anwendungsschnittstellen (Application Programming Interfaces APIs) zur Verfügung stellt, mit denen durch den Einsatz der Cinder Client-Software Volumes erzeugt werden. Ein einzelnes Cinder-Volume ist mit einer einzelnen Computing-Instanz oder virtuellen Maschine von Nova verbunden. Mit einer MySQL-Datenbank, die mit dem Cinder Services-Controller erzeugt wird, registriert Cinder die in OpenStack benutzten Volumes.

Durch den Einsatz eines gemeinsamen Interfaces und von APIs fasst Cinder die Erzeugung und Anbindung von Volumes an die Computing-Instanzen von Nova zusammen. Dies bedeutet, dass Storage mit einer Vielzahl von Methoden für OpenStack-Umgebungen zur Verfügung gestellt werden kann.

Gewöhnlich werden Cinder-Volumes auf einem Standard-Linuxserver erzeugt, auf dem der Logical Volume Manager (LVM) läuft. Auf diese Weise können physikalische Festplatten kombiniert werden, um Datenschutz mit RAID (Redundant Array of Independent Disks) einzurichten und um aus einem physikalischen Kapazitätspool (als Volume Group bezeichnet) logische Volumes herauszubilden. Cinder-Volumes werden aus einer Volume-Gruppe erzeugt, Cinder-Volumes genannt. Der OpenStack-Administrator hat sie so konfiguriert, dass diese LVM-Group genau auf physikalische Platten gemappt werden kann.

Cinder und externer Storage

Cinder kann auch externe Speicherressourcen verwalten, entweder auf der Basis physikalischer externer Speicher-Arrays oder softwarebasierter Speicherimplementierungen. Dies wird durch den Einsatz eines Cinder-Treibers erreicht, der Cinder-Anfragen mit den Kommandos der externen Speicher-Plattform mappt – tatsächlich ist die gewöhnliche LVM-Installation einfach ein anderer Cinder-Treiber. Für iSCSI- und Fibre-Channel-Protokolle steht Support zur Verfügung, entsprechend den jeweiligen Features der Speicher-Hardware der Hersteller. Die Speicherhersteller haben relativ schnell die Unterstützung von Cinder in ihre Plattformen eingefügt, was zu einer großen Bandbreite an Speicher-Hardware geführt hat, die in OpenStack-Umgebungen eingesetzt wird. Abhängig von der jeweiligen Installation erlaubt es der Treiber OpenStack, den Entstehungsprozess von Volumes zu automatisieren und sie virtuellen Maschinen von Nova zuzuschreiben.

Einige Hardware-Plattformen erfordern den händischen Einsatz von Speicheradministratoren, um einen oder mehrere Pools von Storage für OpenStack zu erzeugen – zum Beispiel traditionelle Arrays, die Pools von RAID-Gruppen benützen.

Es gibt eine Liste der unterstützten Plattformen, die aber nicht vollständig ist. Man sollte sich deshalb an seinen Speicherhersteller wenden, um Informationen über den Cinder-Support und entsprechende Treiber-Features zu bekommen.

Der Einsatz von externem Storage für OpenStack führt aber auf jeden Fall dazu, dass bestehende Features dieser Plattformen wie Deduplizierung, Komprimierung, Thin Provisioning oder Quality of Service verwendet werden können.

Externer Storage ist nicht auf physikalische Hardware-Appliances begrenzt: So ist der Einsatz von Block-Storage von verschiedenen software-basierten Systemen (kommerziell und open-source) für OpenStack möglich. Hierzu gehören zum Beispiel Ceph und GlusterFS, wobei Ceph durch die Verwendung von Rados Block Device (RBD) – einem Gerätetreiber des Linux-Kernels, der direkt mit einem Ceph Speicher-Cluster kommuniziert – implementiert wird.

Features von OpenStack Cinder

Mit jedem nachfolgenden Release von OpenStack (das jüngste heißt Mitaka – die Versionen erhalten ihre Namen, indem man den Buchstaben des Alphabets folgt) sind neue Features zu Cinder hinzugefügt worden. Einige von ihnen sind mit einer zweiten Version der Cinder-API implementiert worden, da die erste API-Version noch keine Unterstützung für die neuen Features bot.

Die Versionen Eins und Zwei der APIs liefern sowohl Kommandos, um Volumes zu erzeugen, zu verbessern, zu löschen und auszudehnen, als auch um sie an Instanzen oder virtuellen Maschinen von Nova anzubinden und wieder abzulösen. Volumes können Volume-Typen zugeteilt werden, so dass sie zu einem bestimmten Storage Provider passen, wenn eine OpenStack-Installation gleichzeitig Speicherplatz von verschiedenen Providern bezieht. Alternativ können Volume-Typen für die Unterscheidung zwischen verschiedenen Speicherklassen benutzt werden, die zum Beispiel auf verschiedenen physikalischen Eigenschaften wie RAID-Schutz oder -Performance beruhen.

Cinder stellt die Funktion zur Verfügung, Snapshots von Nova-Instanzen zu ziehen. Für externe Speicherplattformen erreicht man dies, indem die mitgelieferten Snapshot-Prozesse der jeweils zugrundliegenden Plattform benutzt werden. Das Juno-Release von OpenStack führte die Funktion ein, Cinder-Volumes in einer einheitlichen Gruppe zusammenzufassen, so dass die jeweiligen Volumes in einem einzigen Snapshot erfasst werden können. Bis jetzt unterstützen nur wenige Hersteller diese Funktionalität.

Cinder unterstützt auch die Funktion, von Nova-Instanzen Backups zu machen. Leider ist dieser Prozess darauf eingeschränkt, einen Object-Speicher als Backup-Zielpunkt zu benutzen, wobei das Recovery die Wiederherstellung des gesamten Volumens erfordert. Dies wird sich in vielen Situationen als Beschränkung von Backups erweisen und stellt einen der Gründe dafür da, dass sich Manila – das File-Services-Projekt von OpenStack – als eine besser geeignete Methode für das Management von Anwendungsdaten erweisen könnte.

Cinder als Bestandteil von OpenStack-Distributionen

OpenStack-Distributionen gibt es bei sehr vielen Anbietern – nach unserer letzten Zählung sind es über 20. Jeder Anbieter stellt Support für ein bestimmtes Release von OpenStack und für jede der wesentlichen OpenStack-Komponenten zur Verfügung. Cinder ist eine dieser Kernkomponenten und wird mit jeder Distribution ausgeliefert. Auf dem OpenStack-Marketplace findet sich eine Liste der Lieferanten und ihrer Produkte. Dort sind sind auch alle OpenStack-Projekte, die unterstützten Versionen sowie der Support für die verschiedenen API-Stufen verzeichnet. Heutzutage unterstützen fast alle Anbieter die API-Version 2 für Cinder.

Mit Cinder können die Anwender sehr flexibel Storage zu ihren OpenStack-Umgebungen hinzufügen, egal ob es sich um direkten LVM-Support oder um eine externe Appliance oder Software handelt. Allerdings erfordert Cinder wie alle OpenStack-Komponenten Zeit und Mühe, sie zu verstehen und korrekt zu konfigurieren. Dies trifft ganz besonders für die Fehlerdiagnose zu, zum Beispiel wenn die Volumes nicht mehr synchron mit der Cinder-Datenbank laufen.

Außerdem sollten sich die Anwender daran erinnern, dass Cinder-Treiber sowohl entfernt als auch zu neuen OpenStack-Distributionen hinzugefügt werden können, wenn die Anbieter nicht die Spezifikationen oder Anforderungen aus dem OpenStack-Projekt erfüllen. Dies wird wohl zu Problemen mit zukünftigen Upgrades führen, so dass es sich immer auszahlt, konkrete Aussagen des Speicherlieferanten einzuholen, was die Unterstützung von Cinder-Features und zukünftiger OpenStack-Releases angeht.

Folgen Sie SearchStorage.de auch auf Twitter, Google+, Xing und Facebook!

Nächste Schritte

OpenStack Storage: Swift und Cinder.

Wie OpenStack in Hybride-Cloud-Strategien passt.

Zentrale Unterschiede zwischen OpenStack und VMware Integrated OpenStack.

Container-Bereitstellung mit den OpenStack-Modulen Heat, Magnum, Nova und Ironic.

Artikel wurde zuletzt im August 2016 aktualisiert

Pro+

Premium-Inhalte

Weitere Pro+ Premium-Inhalte und andere Mitglieder-Angebote, finden Sie hier.

Erfahren Sie mehr über Datenspeicherlösungen für virtuelle Server

Diskussion starten

Schicken Sie mir eine Nachricht bei Kommentaren anderer Mitglieder.

Mit dem Absenden dieser Daten erklären Sie sich bereit, E-Mails von TechTarget und seinen Partnern zu erhalten. Wenn Ihr Wohnsitz außerhalb der Vereinigten Staaten ist, geben Sie uns hiermit Ihre Erlaubnis, Ihre persönlichen Daten zu übertragen und in den Vereinigten Staaten zu verarbeiten. Datenschutz

Bitte erstellen Sie einen Usernamen, um einen Kommentar abzugeben.

- GOOGLE-ANZEIGEN

SearchSecurity.de

SearchNetworking.de

SearchEnterpriseSoftware.de

SearchDataCenter.de

Close