constantinos - Fotolia

Vier Tools zum Benchmarking von OpenStack-Umgebungen

Die Optimierung produktiver OpenStack-Umgebungen setzt fundierte Belastungstests voraus. Diese vier Tools helfen beim Benchmarking von OpenStack.

Wer es nach Proof of Concept und Testumgebung zu einer produktiven OpenStack-Umgebung geschafft hat, der benötigt anschließend weitreichende Kennzahlen, um den Betrieb seiner Private Cloud weiter optimieren zu können. Neben dem Monitoring von OpenStack-Installationen mit Tools wie Ceilometer oder Monasca steht beim Optimieren der OpenStack-Umgebung daher auch das Testen ganz oben auf der Prioritätsliste. 

OpenStack selbst bietet hierfür mittlerweile verschiedene Lösungen an, die Cloud-Administratoren mit unterschiedlichsten Benchmarks versorgen können. Auf dem OpenStack Summit 2016 in Barcelona wurden die neuesten Entwicklungen der drei wichtigsten Tools sowie eine eher exotische Lösung in jeweils eigenen Vorträgen vorgestellt.

OpenStack Rally – das bekannteste Benchmarking-Tool für OpenStack

Auf der Suche nach Benchmarking-Tools für OpenStack wird man schnell auf Rally stoßen, das wohl populärste Test-Werkzeug im Repertoire von OpenStack-Admins. OpenStack Rally bietet dabei einen vollständigen Benchmarking-Zyklus, um die Skalierbarkeit einer OpenStack-Umgebung zu testen. Hierzu nutzt Rally im ersten Schritt bestehende Deployment-Tools wie DevStack oder Fuel, um eine OpenStack-Cloud aufzusetzen (alternativ kann auch eine bestehende Umgebung verwendet werden), im zweiten Schritt wird über OpenStack Tempest die Funktionsfähigkeit der Bereitstellung verifiziert, bevor im dritten Schritt die Nutzerlast simuliert wird. Anschließend erstellt Rally einen Bericht über die Ergebnisse der zuvor ausgeführten Schritte.

Rally dürfte eines der ausgereiftesten Benchmarking-Tools für OpenStack sein und kann neben reinen Skalierbarkeitstests auch für DevOps- und CI/CD-Szenarien (Continuous Integration/Continuous Development) verwendet werden. So lassen sich also grundlegende Skalierungs- und Performance-Probleme ebenso mit Rally identifizieren wie Probleme nach Code-Änderungen, genauso sind aber auch Tests für unterschiedliche Bereitstellungsmöglichkeiten oder Konfiguration von OpenStack möglich.

 

 

Benchmark-Orchestrierung mit OpenStack Browbeat

Während das Rally-Tool von Mirantis vorangetrieben wird, steht hinter Browbeat vor allem Red Hat, was gewisse Implikationen zur Verwendung des Benchmarking-Tools mit sich bringt. Red Hat setzt zur Bereitstellung seiner OpenStack-Distribution RHEL OSP (Red Hat Enterprise Linux OpenStack Platform) nämlich auf ein spezielles Director-Tool, das wiederum auf TripleO basiert. TripleO steht hierbei für „OpenStack on OpenStack“ und nutzt eine grundlegende OpenStack-Bereitstellung (die sogenannte „Undercloud“) zur Bereitstellung, Skalierung und Verwaltung der eigentlichen, produktiven OpenStack-Cloud (der sogenannten „Overcloud“).

Diese Architektur ist aufgrund der prinzipiell höheren Komplexität nicht unumstritten und unterscheidet sich grundlegend von den Deployment-Tools der Open-Source-Distribution sowie anderer kommerzieller OpenStack-Distributionen. Browbeat wurde speziell für TripleO-Deployments entwickelt und kann in OpenStack-Bereitstellungen ohne Undercloud nicht verwendet werden.

Weitere Artikel zu OpenStack:

Skalierbarkeit bleibt größtes OpenStack-Problem

OpenStack auf dem Weg zur Workload-Portabilität?

Fünf Tipps für erfolgreiche OpenStack-Deployments

Dabei ist der Ansatz von Browbeat durchaus überzeugend: Statt das Rad immer wieder neu zu erfinden, soll das Benchmark-Tool von Red Hat bereits existierende Lösungen bündeln und integrieren. Browbeat könnte man daher auch einfach ausgedrückt als Orchestrierungs-Tool bereits bestehender Werkzeuge bezeichnen. Dabei verfolgt Browbeat das Ziel, die umfangreichsten Benchmark-Ergebnisse für OpenStack zu liefern und integriert zum Beispiel Rally für das Benchmarking der OpenStack-Module Nova, Neutron, Keystone, Cinder oder Glance.

Gleichzeitig lassen sich aber auch Tools wie PerfKit, Shaker oder cbtool für das Netzwerk-Monitoring integrieren, beim Sammeln und Anzeigen der Benchmark-Daten setzt Browbeat auf collectd, Grafana, ElasticSearch und Kibana. Bei Browbeat handelt es sich um ein enorm umfangreiches und damit sehr mächtiges Benchmark-Tool für OpenStack, das aber mit zwei Einschränkungen leben muss: Erstens kann Browbeat wie bereits erwähnt nur in der Undercloud verwendet werden, zweitens besteht das Tool im Kern lediglich aus Ansible-Playbooks (nur logisch, denkt man an die Ansible-Übernahme durch Red Hat), mit denen bestehende Werkzeuge orchestriert werden. Wer also keine TripleO-Bereitstellung von OpenStack nutzt und nicht auch gleichzeitig mit Ansible umgehen kann, für den kommt Browbeat daher nicht in Frage.

 

 

OpenStack Watcher: Optimierung statt Benchmarking

OpenStack Watcher geht über das reine Benchmarking von OpenStack weit hinaus und kann Optimierungen der Cloud-Umgebung selbstständig vornehmen. In diesem Sinne ist OpenStack Watcher kein reines Benchmarking-Tool, sondern vielmehr eine Erweiterung für den nativen Nova-Scheduler, der virtuelle Maschinen meist suboptimal platziert. Vor allem wenn eine Private Cloud bereits längere Zeit betrieben wird, kann es zu großen Ungleichgewichten bei der Ressourcenzuweisung kommen, die OpenStack Watcher analysiert und anschließend so ähnlich wie vSphere Distributed Resource Scheduler über VM-Migrationen als Load Balancer optimiert.

Administratoren können OpenStack Watcher entweder im manuellen (Advise Mode) oder im automatischen Modus (Active Mode) betreiben und unterschiedliche Ziele für die Optimierung vorgeben, etwa eine Reduzierung der Kosten, eine höhere Systemperformance oder auch eine bessere Energieeffizienz. Dabei können die Performance-Ziele sehr frei vorgegeben und an bestimmte OpenStack-Werte beispielsweise aus OpenStack Ceilometer gekoppelt werden, etwa an die von Ceilometer erfasste Anzahl an vCPUS oder die so ausgelesene CPU-Auslastung.

 

 

OpenStack Infra: Benchmarking als Nebenprodukt

Bei OpenStack Infra handelt es sich sicherlich um den Exoten unter den Benchmarking-Lösungen für OpenStack, weil OpenStack Infra – besser gesagt das OpenStack Project Infrastructure – das Projekt-Team bezeichnet, das sich um die Aufrechterhaltung der OpenStack-Infrastruktur kümmert. OpenStack Infra produziert also kontinuierlich reale Workloads eines Produktivsystems mit natürlichen Lastspitzen und Ruhephasen, die sich mit Tools wie Rally oder PerfKit nur schwer simulieren lassen – ideal also für das Testen einer OpenStack-Umgebung

Auf diese Idee kamen zumindest Entwickler am OSIC, dem von Intel und Rackspace betriebenen OpenStack Innovation Center, das über eine Entwickler-Cloud mit 2.000 Server-Knoten verfügt, auf die Mitglieder der OpenStack-Community für Test- und Validierungszwecke zurückgreifen können. Da auch das OSIC seine OpenStack-Cloud auf Skalierbarkeit und Performance testen muss, wurden in Zusammenarbeit mit dem Infra-Team kurzerhand die dort ausgeführten Workloads in die OSIC-Cloud gehievt, um so Benchmarks unter Produktivbedingungen zu ermöglichen. Das Testen von OpenStack-Clouds mit OpenStack Infra ist also sicherlich keine für jeden verfügbare Option, vom theoretischen Standpunkt aus betrachtet aber eine interessante Benchmarking-Methode.  

 

 

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

Artikel wurde zuletzt im Februar 2017 aktualisiert

Erfahren Sie mehr über Private-Cloud-Infrastruktur

Diskussion starten

Schicken Sie mir eine Nachricht bei Kommentaren anderer Mitglieder.

Bitte erstellen Sie einen Usernamen, um einen Kommentar abzugeben.

- GOOGLE-ANZEIGEN

SearchSecurity.de

SearchStorage.de

SearchNetworking.de

SearchEnterpriseSoftware.de

Close