Systeme: OpenStack Version 2014.1

Coole Sache

OpenStack stellt seit Ende 2010 eine Architektur für private und hybride Cloud-Infrastrukturen bereit. Die neue Version "Icehouse" bringt neben etlichen Verbesserungen von vorhandenen Funktionen auch neue Features und sogar neue Komponenten. So verfügt die Software jetzt über eine Code-Bibliothek, die alle anderen OpenStack-Bestandteile nutzen können, um selbst als Applikation schlank zu bleiben. Auch neu ist die Mehrsprachigkeit des Systems. Für Administratoren stellt Icehouse neue Automatismen in der Verwaltung von virtuellen Maschinen bereit und verbessert die Virtualisierung von Netzwerken.
Für die Mai-Ausgabe hat sich IT-Administrator den Schwerpunkt 'Messaging & Collaboration' auf die Fahnen geschrieben. Lesen Sie darin, wie Sie die Open ... (mehr)

OpenStack genießt wegen seiner zuverlässigen Release-Zyklen einen außerordentlich guten Ruf, sowohl innerhalb der Gemeinde der F/LOSS-Entwickler wie auch bei Systemadministratoren und IT-Planern. So präsentiert sich OpenStack Icehouse sowohl als solide Versionspflege wie auch als Motor für Innovation im Cloud-Geschäft.

Mit Oslo zu einer schlankeren Applikation

Eine der wichtigsten Neuerungen in OpenStack ist zweifellos “Oslo”, das zwar schon seit einiger Zeit als Projekt existiert, aber erst in den letzten Monaten wirklich integraler Bestandteil des OpenStack-Projekts geworden ist. Oslo beschreibt sich selbst als “OpenStack Common Libraries Project”; dessen Ziel es ist, die oft störenden Redundanzen in Hinblick auf den Quelltext von OpenStack zu beseitigen und in Zukunft gar nicht mehr aufkommen zu lassen.

 

 Derzeit besteht OpenStack aus etlichen einzelnen Projekten wie Glance, Nova, Neutron, Cinder und vielen anderen Teilen, die im OpenStack-Universum jeweils spezifische Aufgaben erledigen. Weil es allerdings Projekt-Standards gibt, die bindende Wirkung haben, müssen viele Komponenten einzelne Funktionen immer und immer wieder selbst implementieren: Die RPC-Kommunikation mit verschiedenen AMQP-Diensten ist dafür ein gutes Beispiel. In der Vergangenheit kam es häufig vor, dass ein OpenStack-Projekt Quelltext eines anderen Projektes übernommen und gegebenenfalls angepasst hat – was aus mehreren Gründen schlecht ist: Ein Vorgehen wie dieses sorgt nämlich einerseits dafür, dass Verbesserungen beim Ursprungscode nicht automatisch an die Kopien weitergereicht werden; ein durch Handarbeit zu erledigender Merge nimmt Zeit in Anspruch und verursacht Mühen. Hinzu kommt, dass ein solches Vorgehen den Quelltext unnötig aufbläht.

 

 Allerdings ist das Problem von praktisch jeder Programmiersprache her bekannt und Lösungen existieren in Form von Bibliotheken. Diese stellen eine einheitliche API zur Verfügung, die andere Programme dann nutzen können, wenn sie gegen die entsprechende Bibliothek gelinkt sind. Oslo will für OpenStack in Python das Gleiche erreichen: Oft genutzte Funktionen wandern in ein dafür eigens angelegtes Python-Modul, das im Anschluss jede OpenStack-Komponente verwendet. Oslo kommt dabei durchaus die Relevanz eines “Core-Projektes” zu, im Gegensatz zu den anderen Komponenten von OpenStack kommen Admins jedoch nur selten mit Oslo-Modulen direkt in Berührung. In Icehouse haben die Entwickler verschiedene Oslo-Module ausgebaut und herausgeputzt; eine vollständige Liste findet sich im OpenStack-Wiki [1]. Auch wenn das Projekt auf den ersten Blick unspektakulär aussieht, so hat es doch das Potential, die Entwicklung im OpenStack-Projekt langfristig zu verändern.

 

 Dabei wagen die OpenStack-Entwickler durchaus auch den Blick über den Tellerrand: Befinden sie, dass eine spezifische Funktionalität weit über die OpenStack-Grenzen hinaus relevant ist, so veröffentlichen sie das Modul außerhalb des Oslo-Frameworks als eigenständiges Python-Modul und geben damit anderen Projekten die Möglichkeit, von der Entwicklungsarbeit bei OpenStack zu profitieren.

Endlich mehrsprachig

Fernab von Bibliotheken hat sich bei OpenStack natürlich auch sonst einiges getan. Zunächst lohnt sich bei neuen Releases stets ein Blick auf die überaus zahlreichen Detailverbesserungen, die die Entwickler den schon vorhandenen Komponenten haben angedeihen lassen. Während es für Admins so aussieht, als wären viele grundlegende Komponenten mittlerweile “fertig”, finden sich hier und dort immer wieder Features, die als “nifty” gelten dürfen. Glance ist ein typisches Beispiel: Per Definition leistet OpenStack Glance gar nicht viel mehr, als fertige Images von Betriebssystemen an Computing-Knoten zu liefern, damit diese auf Grundlage eben jenes Images eine neue virtuelle Maschine aus dem Boden stampfen.

 

 Bis jetzt sprach Glance dabei allerdings nur Englisch. Wie bei allen anderen in Open­Stack vorhandenen Komponenten hatten die Entwickler an Mehrsprachigkeit bis jetzt ganz einfach nicht gedacht. Für gestandene Sysadmins ist das in der Regel nur ein untergeordnetes Problem, wenn überhaupt. Endanwender tun sich hingegen häufig schwer, wenn Computerprogramme in einer anderen Sprache verfasst sind – aber gerade denen soll OpenStack bekanntlich das einfache Nutzen von Diensten in der Cloud ermöglichen. Eine Internationalisierung muss also her, und in Glance ist das nun der Fall: Auf der Grundlage eines gettext-Modules in OpenStack Oslo beherrscht Glance im Icehouse-Release Meldungen in allen Sprachen, die auch gettext kann. Andere OpenStack-Komponenten werden diesem Beispiel folgen und neben Meldungen der API-Dienste auch Logs in anderen Sprachen als Englisch darstellen können.

Bild 1: Das OpenStack-Dashboard – hier im Ubuntu-Flavor – beherrscht schon die Mehrsprachigkeit, kann also auch auf Deutsch auftreten. In Icehouse werden andere Komponenten gleichziehen und auch APIs werden mehrsprachig.

Ä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