RAID-Technologie verspricht höhere Performance und mehr Sicherheit beim permanenten Speichern von Daten. Die ADMIN-Redaktion gibt einen Überblick über ... (mehr)

Cinder: Ein Blockspeicher für VMs

Virtuelle Maschinen innerhalb einer Cloud-Umgebung benötigen persistenten Speicher in Form von Blockdevices, die als Festplatten dienen. Allerdings läuft die typische Architektur von Storage der Idee hinter einer Wolke im Grunde komplett zuwider. Denn während in einem Cloud-Setup eine große Zahl gleichwertiger Knoten vorhanden ist, ist Storage meist an einer Stelle zentral zusammengefasst. An dieser Stelle kommt Cinder ins Spiel: Es sorgt dafür, das zentral verwalteter Speicher portitioniert als Festplatte bei den virtuellen Maschinen innerhalb der Wolke ankommt. Auch Cinder war in der Vorgängerversion "Essex" noch fixer Bestandteil der Computing-Komponente Nova und hat erst in Folsom den Einzug als Core-Projekt in OpenStack geschafft. Es kommt mit mehreren Storage-Backends zurecht: Block-Speicher, der Teil einer LVM-Volume-Group ist, stellt die Standard-Konfiguration dar; das deckt insbesondere per Fibre Channel angebundene SANs oder DRBD-Setups ab. Diese werden mittels iSCSI vom Storage-Host zu den Computing-Nodes verbunden, wo sie über KVMs Hotplug-Funktion dann zum Bestandteil einer virtuellen Maschine werden. Wer stattdessen lieber auf Ceph setzt, bekommt ein natives Ceph-Interface mitgeliefert. Cinder ist auch eines der Projekte in OpenStack, deren Funktionsumfang in den nächsten Monaten beträchtlich wachsen wird, um weitere Storage-Backends nativ zu unterstützen. So ist beispielsweise eine direkte Fibre Channel-Anbindung in der Diskussion, die sich den Umweg über den Blockdevice-Layer spart.

Das Hirn der Wolke: Nova

OpenStack Compute, Codename Nova, ist die zentrale Computing-Komponente. Weil Cinder (vormals »nova-volume« ) und Quantum (als Ersatz für »nova-network« ) seit der Folsom-Release in ihre eigenen Projekte ausgelagert sind, kann Nova sich ausschließlich darum kümmern, die virtuellen Systeme innerhalb einer Openstack-Umgebung zu verwalten. Es spannt den Bogen um alle anderen Komponenten und kümmert sich darum, das virtuelle Maschinen in der Wolke gestartet und gestoppt werden, wenn Benutzer entsprechende Befehle per Kommandozeile oder Webinterface geben. Der Dienst ist modular: Neben »nova-api« als Frontend gehört auch die eigentliche Computing-Komponente »nova-compute« direkt zu Nova. »nova-compute« läuft auf jedem Virtualisierungsknoten und wartet auf entsprechende Anweisungen von der API-Komponente. Teil von Nova ist überdies der Scheduler »nova-schedule« , der weiß, welche Hypervisor-Knoten vorhanden sind, und welche VMs wo in der Wolke laufen. Soll eine neue VM hinzukommen, entscheidet eben dieser Scheduler, auf welchem Host sie laufen soll. Übrigens: »nova-compute« setzt im Hintergrund auf die erprobte »libvirt« , um virtuelle Systeme zu verwalten. Es ist den OpenStack-Entwicklern hoch anzurechnen, dass sie das Rad an dieser Stelle nicht neu erfunden haben und stattdessen auf bewährte Technologien setzen.

Ä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