OpenStack einfach deployen mit Puppet und Kickstack

Peter Bernik, 123RF

Startvorteil

OpenStack haftet der Ruf an, ein komplexes Konstrukt zu sein, für dessen Installation eine Unmenge an Zeit draufgeht. Das muss nicht sein: Kickstack automatisiert die OpenStack-Installation und erleichtert auch die Wartung.
Sicher verstaut - Deduplizierung spart Platz, Cloud-Backup für Windows, Areca sichert kostenlos. ADMIN 01/14 stellt Backups für Profis mit und ohne Cloud ... (mehr)

Kickstack versus Packstack

Kickstack ist nicht das einzige Werkzeug, das das automatische Deployment von OpenStack mittels Puppet ermöglicht. Red Hat arbeitet beispielsweise zur gleichen Zeit an Packstack, das ganz ähnliche Ziele verfolgt. Warum gibt es für diese Aufgabe zwei unterschiedliche Tools?

Die Antwort auf diese Frage ist die klassische Open-Source-Antwort: Es gibt mehr als einen Weg, etwas zu tun. Im Falle von Packstack und Kickstack ergeben sich obendrein merkliche Unterschiede hinsichtlich der Funktionen. Denn Packstack ist zumindest augenblicklich Red-Hat-spezifisch: Das Werkzeug steht in enger Verbindung zu Red Hats eigener OpenStack-Distribution namens RDO [1] und ist maßgeblich auf dieses zugeschnitten.

Kickstack im Gegenzug setzt eher auf die klassische Ubuntu-Umgebung, die auf der Ubuntu-LTS-Version 12.04 aufsetzt und jeweils aus dem Repository des Ubuntu-Cloud-Teams mit den neuesten OpenStack-Versionen versorgt wird. Ob und wenn ja wann eines der beiden Werkzeuge dahingehend erweitert wird, neben der angestammten Distribution auch andere Systeme zu unterstützen, steht derzeit in den Sternen; bis dahin tun Admins gut daran, das richtige Werkzeug für die richtige Aufgabe auszuwählen. Am Ende setzen Packstack und Kickstack ja eh auf die gleichen Puppet-Module, die von denselben Entwicklern gepflegt werden.

Regelmäßige ADMIN-Magazin-Leser fanden vor einigen Monaten einen Artikel, der sich ausführlich mit der Frage beschäftigt hat, wie die Installation von OpenStack funktioniert. Eine Tatsache hat eben jener Artikel unter Beweis gestellt: Die OpenStack-Installation ist keine Kleinigkeit, wenn man sie manuell absolvieren möchte. Verschiedene Dienste sind dazu auf eigene Server zu verteilen, falls kein All-in-One-Setup gewünscht ist. Verschärft wird das Problem dadurch, dass viele Befehle im Rahmen eines Setups von OpenStack wenig intuitiv sind und im ersten Augenblick auch nur begrenzt einleuchten. Wer mit Technologien wie Open vSwitch noch nicht gearbeitet hat, wird viele der Befehle bei der Installation von OpenStack Neutron überhaupt nur schwer nachvollziehen können.

Manuelles Installieren war gestern

Wer sich schon mal an einer manuellen OpenStack-Installation versucht hat, wird festgestellt haben, dass einige Konfigurationsschritte über die Grenzen der einzelnen OpenStack-Komponenten hinweg identisch sind; man führt also den gleichen Arbeitsschritt mehrere Male aus. Wer jetzt an Automatisierung denkt, liegt damit genauso richtig wie die Admins, die sich die manuelle Wartung einer kompletten OpenStack-Installation so oder so nicht antun wollen.

Genau das ist im Jahre 2013 angesichts verschiedener Automatisierungswerkzeuge auch ein legitimer Wunsch. Denn gerade Cloud-Computing-Installationen müssen ja massiv in die Breite skalieren können – der perfekte Anwendungsfall für die klassische System-Automatisierung.

Kickstack ist ein Ansatz zur Lösung dieses Problems: Es ermöglicht auf Puppet-Grundlage die sinnvolle und effiziente Administration von OpenStack-Clouds. Wer innerhalb von 20 Minuten eine eigene OpenStack-Cloud aufsetzen will, ist hier genau an der richtigen Stelle.

OpenStack-Automatisierung für Ubuntu

Kickstack ist im Grunde eine Zusatzschicht, die sich zwischen den Admin und OpenStack legt. Es nutzt die Puppet-Module, die bereits seit einiger Zeit für sämtliche Core-Komponenten von OpenStack existieren. Die Aufgabe, die Kickstack übernimmt, ist die eigentliche Automatisierung: Mit den normalen Puppet-Modulen ließen sich die Dienste zwar auch automatisiert installieren, doch wäre dann wieder eine mühsame Konfiguration verschiedener Parameter in Puppet notwendig, sodass sich kaum ein zeitlicher Vorteil ergäbe, besonders nicht im direkten Vergleich mit der Installation zu Fuß.

Kickstack räumt damit radikal auf: Es kümmert sich um das Anlegen von Daten wie Keystone-Benutzern automatisch, sorgt dafür, dass sämtliche Dienste der OpenStack-Umgebung passwortgesichert mit ihrer Datenbank kommunizieren und stellt auch sicher, dass die OpenStack-Dienste auf den ihnen vom Admin zuvor zugewiesenen Hosts laufen. Aus einer Vielzahl von Parametern, aus denen der Admin bei den Puppet-Modulen wählen kann, filtert Kickstack die wichtigsten Parameter heraus und erledigt den Rest automatisch.

Dabei bedient es sich eines eigens eingeführten Rollensystems, das verschiedenen Maschinen einer OpenStack-Installation eine eigene Rolle zuweist – um die Motivation hinter diesem Umstand zu verstehen, ist ein kleiner Ausflug in die Ideen notwendig, die OpenStack ausmachen.

Ähnliche Artikel

comments powered by Disqus

Artikel der Woche

Eigene Registry für Docker-Images

Wer selber Docker-Images herstellt, braucht auch eine eigene Registry. Diese gibt es ebenfalls als Docker-Image, aber nur mit eingeschränkter Funktionalität. Mit einem Auth-Server wird daraus ein brauchbares Repository für Images. (mehr)
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

Google+

Ausgabe /2019