everythingpossible - Fotolia

OpenStack-Updates: Automatisierung minimiert Fehlerrisiko und Downtime

Updates gehören nach wie vor zu den kritischen Aufgaben in OpenStack-Umgebungen. Diese Best Practices helfen bei Planung und Durchführung.

OpenStack besteht aus etwa 30 Modulen, jedes mit recht komplexen Funktionen und Voraussetzungen. Zudem folgt das Entwickler-Team von OpenStack dem Open-Source-Ansatz, was wiederum Softwaretests, Dokumentation und Code-Qualität beeinträchtigen kann.

Damit ist es unerlässlich, dass IT-Abteilungen in regelmäßigen Abständen Updates ihrer OpenStack-Plattformen vornehmen, um operative Instabilitäten zu vermeiden. Im Grunde gleicht dies der Notwendigkeit, ein Betriebssystem wie Windows mit Patches und Updates aktuell zu halten, um ein höchstmögliches Level an Performance und Sicherheit zu gewährleisten.

Der große Unterschied zwischen Betriebssystemen wie Windows und der Cloud-Plattform OpenStack besteht nun darin, dass sich OpenStack noch immer rasend schnell weiterentwickelt und manche Module weniger ausgereift sind als andere. Alle sechs Monate erscheint eine neue OpenStack-Version, Windows wird wie jedes andere Betriebssysteme nur alle zwei bis vier Jahre aktualisiert. Gerade die fehlende Reife von OpenStack und der schnell wachsende Funktionsumfang können selbst kleinere OpenStack-Updates kompliziert machen.

Bis vor kurzem war die Kommandozeile das bevorzugte Tool der Wahl zur Durchführung eines OpenStack-Updates. Für einzelne Server mag das funktionieren, für große Cluster ist diese Methode aber enorm ineffizient. In großen Cluster-Umgebungen ist vor allem das Fehlerrisiko dramatisch höher.

Best Practices für das OpenStack-Update

In einer idealen Situation würden Administratoren vor einem OpenStack-Update alle Nodes herunterfahren, Patches und Updates einspielen und anschließend die gesamte Konfiguration neu starten. In der Realität wäre damit eine meist nicht haltbare Ausfallzeit der Umgebung verbunden. Eine sorgfältige Analyse der Updates, bevor sie implementiert werden, kann aber eine Alternative hierzu bieten.

Weitere Artikel zu OpenStack:

Tools zum OpenStack-Monitoring.

OpenStack auf dem Weg zur Workload-Portabilität.

Skalierbarkeit bleibt großes OpenStack-Problem.

Hierbei sollte man nach Updates Ausschau halten, die keine Abhängigkeiten zu anderen OpenStack-Modulen aufweisen und keine Auswirkungen auf die Storage-Infrastruktur haben. Bugfixes sind die mit Abstand häufigsten OpenStack-Updates und können als Rolling-Update auf allen Nodes verteilt werden.

Wenn ein OpenStack-Update mehrere Module betrifft, dann müssen auch alle betroffenen Module gleichzeitig aktualisiert werden. Das Problem dabei ist aber, dass jeder Knoten wiederum mit jedem anderen Knoten interagieren könnte. Der sicherste Weg wäre es daher, alle Nodes zu deaktivieren. Wenn sich allerdings die entsprechende Funktion, die sich über mehrere Nodes hinzieht, deaktivieren lässt, könnte das Gesamtsystem sicher neu gestartet werden, auch wenn andere Nodes weiterhin laufen. Sobald der Cluster insgesamt aktualisiert wurde, kann die Funktion wieder aktiviert werden.

Generell ist es immer am besten, ein Modul nach dem anderen zu aktualisieren, um anschließend jeweils die Stabilität und das Funktionieren sicherzustellen. Dieses Schritt-für-Schritt-Vorgehen stellt eine einfachere Fehlersuche sicher, falls beim Update tatsächlich etwas schief gehen sollte.

Update-Pakete sollte stets von bekannten und sicheren Quellen bezogen werden. Das trifft sowohl für Instanzen als auch für Container-Images und die Applikationen selbst zu, genauso natürlich für den OpenStack-Code. Da OpenStack-Cluster horizontal skalieren und oft mit der Public Cloud verbunden sind, kann das Identifizieren eines Sicherheitsvorfalls und die anschließende Absicherung der Umgebung sehr zeitintensiv sein.

OpenStack-Updates automatisieren

Die Lehren aus klassischen Betriebssystemen finden aber auch in der OpenStack-Community Widerhall. So ist es zum Beispiel äußerst sinnvoll, den Update-Vorgang von OpenStack zu automatisieren, um so Downtime und Fehlerrisiko gleichermaßen zu minimieren. Einige kommerzielle OpenStack-Distributionen bieten diese Funktion.

Red Hats RHEL OSP Director (Red Hat Enterprise Linux OpenStack Platform) wäre ein Beispiel hierfür. Das Tool führt sowohl kleinere als auch große Versionsupdates durch. Red Hat versucht dabei, Funktionsänderungen in kleineren Releases zu vermeiden, um zum Beispiel Probleme mit Programmierschnittstellen zwischen unterschiedlichen Modulen zu vermeiden.

Aber auch andere Anbieter wie Platform9, HPE, Dell oder IBM und Softwarehersteller wie Stratoscale, NephoScale oder Mirantis adressieren die zunehmenden Update-Probleme. Bei all der Komplexität rund um OpenStack-Updates sollten Admins wo immer möglich auf Automatisierungs-Tools setzen. Sie funktionieren zwar noch nicht perfekt – gerade Abhängigkeiten zwischen Modulen können noch zu Problemen führen – aber sie stellen trotzdem eine große Hilfe beim Update-Prozess dar.

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

Artikel wurde zuletzt im Dezember 2016 aktualisiert

Erfahren Sie mehr über Cloud Computing

- GOOGLE-ANZEIGEN

ComputerWeekly.de

Close