Der ADMIN 05/13 wirft einen Blick auf die frei verfügbaren Cloud-Frameworks von Eucalyptus über OpenNebula bis OpenStack. Gute Aussichten für skalierbare ... (mehr)

Block-Speicher für VMs: Cinder

Schließlich gibt es noch Cinder [8] , dessen Funktion sich nicht auf den ersten Blick erschließt – man versteht sie aber, wenn man sich das Problem vergegenwärtigt: OpenStack geht grundsätzlich davon aus, dass virtuelle Maschinen nicht darauf ausgelegt sind, dauerhaft zu laufen. Der radikale Gedanke resultiert aus dem hauptsächlich in Amerika vertretenem Ansatz, eine Cloud-Umgebung müsse nur in der Lage sein, schnell viele VMs aus dem gleichen Image zu starten – es ist in diesem Prinzip quasi gar nicht vorgesehen, dass Daten innerhalb einer VM anfallen, die dauerhaft zu speichern sind. Deshalb existieren VMs zunächst nur als lokale Kopie in den Dateisystemen ihres jeweiligen Hypervisor-Knotens. Und wenn der abstürzt oder der Kunde die VM löscht, sind die Daten weg. Das Prinzip trägt den Namen Ephemeral Storage. Dass die Realität komplizierter ist, ist kein Geheimnis.

OpenStack bietet durchaus die Möglichkeit, Daten in VMs zu sammeln und sie über den Neustart der VMs hinweg zu sichern. Genau hier kommt Cinder ins Spiel (Abbiuldung 6): Cinder stattet virtuelle Maschinen auf Kundenwunsch mit persistentem Blockspeicher aus. Dabei unterstützt es eine Vielzahl verschiedener Storage-Backends, darunter LVM, Ceph, aber auch Hardware-SANs wie IBMs StoreWiz und 3PAR-Storages von HP. Je nach gewählter Implementierung unterscheiden sich die technischen Details im Hintergrund. Wichtig für den Benutzer ist aber zunächst nur, dass er sich einen Speicher anlegt und diesen seiner VM zuweist – danach greift er in der VM auf den Speicher wie auf eine gewöhnliche Festplatte zu. Auf Kundenwunsch hin lassen sich VMs auch von Block-Devices booten, sodass die gesamte VM auf dauerhafte Weise gesichert ist und sich zum Beispiel auf verschiedenen Knoten starten lässt.

Abbildung 6: Die einzelnen VMs auf den Computing-Knoten liegen einfach auf einem Dateisystem lokal – sollen sie dauerhaft erhalten bleiben, ist Cinder notwendig.

Cloud Storage: SwiftDashboard

Nahezu sämtliche bis hierhin vorgestellten Komponenten beschäftigen sich mit dem Thema Virtualisierung. Allerdings ist es gängige Lehrmeinung, dass eine Cloud zusätzlich auch On-Demand-Storage bieten muss, also Speicher, welchen Anwender bei Bedarf über ein simples Interface nutzen können. Dienste wie Dropbox oder Google Drive sind der Beweis dafür, dass solche Dienste sich einer großen Fangemeinde erfreuen. In OpenStack kümmert sich Swift [9] darum, dass Benutzer Cloud-Speicher haben. Der vom amerikanischen Anbieter Rackspace entwickelte Dienst bietet Nutzern über ein ReSTful-Protokoll die Möglichkeit, Dateien in den Speicher hoch- oder aus ihm herunterzuladen. Für Unternehmen ist Swift interessant, weil es sich um einen Object Store handelt, der Daten in Form binärer Objekte ablegt und damit nahtlos in die Breite skaliert. Wird der Platz knapp, stellen Unternehmen also einfach ein paar Storage-Knoten mit frischem Plattenplatz dazu, ohne dass der Speicher vollläuft. Es ist übrigens auch möglich, Swift ohne die anderen OpenStack-Komponenten zu betreiben – damit nimmt der Dienst in OpenStack eine Sonderstellung ein, denn die anderen Dienste bedingen einander zwingend.

Ähnliche Artikel

comments powered by Disqus
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023