Grizzly Series Release Notes

Release Übersicht

Die Grizzly-Versionszyklus sah umfassende Verbesserungen der gesamten Benutzerfreundlichkeit, riesige Stabilitätsverbesserungen, viele neue Netzwerk-, Instant-Management-und Abbild-Management-Funktionen, eine lang geforderte architektonische Klarstellung und große Anstieg der Aktivtäten in der Gemeinschaft! Lesen Sie weiter, um weitere Informationen zu erhalten.

Schwerpunkte

Neue Eigenschaften

Netzwerk

Quantum hat eine riesige Anzahl neuer Funktionen in Grizzly hinzugefügt, darunter L3-Unterstützung (Router), Load-Balancer, Netzwerktopologie-Infografiken, bessere Kompatibilität mit Nova-Netzwerk-APIs und erheblich verbesserte Informations-Displays.

Direktes Hochladen von Abbildern nach Glance

Es ist jetzt möglich (obwohl es zahlreiche Implementierungs- / Sicherheitsimplikationen gibt), um eine Abbilddatei direkt von der Festplatte eines Benutzers in Glance durch Horizon hochzuladen. Für Multi-GB-Abbilder wird dringend empfohlen, dass der Upload mit der Glance-CLI durchgeführt wird. Weitere Verbesserungen dieser Funktion werden in zukünftigen Versionen kommen.

Unterstützung für Extraspezifikationen für Varianten

In Folsom fügte Nova Unterstützung für „zusätzliche Spezifikationen“ auf Varianten hinzu - zusätzliche Metadaten, die benutzerdefinierte Scheduler für die entsprechende Zeitplanung von Instanzen verwenden könnten. Ab der Grizzly-Version unterstützt Horizon jetzt Lesen und Schreiben der Daten für jede Variante.

Instanz migrieren

Administratoren können jetzt im Instanzen Paneel des admin Dashboards eine Instanz vom aktuellen Host weg migrieren.

User Experience Verbesserungen

„Nicht berechtigt“ & Ausgeloogt

Eine schockierende Anzahl von Problemen von OpenStack Erstanwendern kann als „Ich dachte, ich hätte alles eingerichtet, dann versucht mich im Dashboard einzuloggen und wurde sofort wieder ausgeloggt“. Die Ursache war die Idee möglichst such auf unberechtigten Zugriff zu reagieren und alle 401 oder 403 Antworten gleich zu behandeln. Dadurch wurde der Benutzer mit wenig bis gar keinen weiteren Informationen abgemeldet.

In Grizzly haben wir stattdessen beschlossen, API 401 und 403 Fehler als weniger ernst zu behandeln als unberechtige Zugriffsversuche. Dafür gibt es drei Gründe:

  1. Für einen nicht böswillig handelnden Benutzer sind diese Fehler in fast 100% der Fälle eine Folge von Fehlkonfiguration und dies erlaubt eine Fehlersuche.

  2. Ein böswilliger Benutzer kann die genau gleichen Anfragen per CLI als auch über das Dashboard stellen. Es werden keine besonderen Privilegien vergeben.

  3. API-Fehler werden von externen Systemen nicht im Bereich unseres Projekts erzeugt. Während wir diese respektieren und angemessen darauf reagieren sollten, sollten wir nichts Drastisches oder gar Destruktives daraufhin übernehmen.

Zukünftig wird der Benutzer nicht abgemeldet, aber die Seite gibt weiter keine Informationen aus, außer einer Fehlermeldung, dass er keinen Zugriff auf die Daten hat.

Reorganisationen

Ein paar lange vorhandene und den Benutzer verwirrende Dinge wurden in Grizzly korrigiert.

Zunächst wurde das API Access-Panel (mit den API-Endpunkten eines Benutzers, rc-Dateien und EC2-Anmeldeinformationen) aus dem Bereich „Einstellungen“ in den Bereich „Zugriff & Sicherheit“ des Projekt-Dashboards verschoben.

Zweitens wurden die Standardkontingent- und DIenste-Panels (die beide eng zusammen waren) zu Registerkarten in einem einzigen System-Info-Panel zusammengefasst, um zu verdeutlichen, dass diese Panels thematisch verknüpft sind, und ein Startpunkt für Nur-Information-Displays wie diese zu erstellen.

Floating IP-Verwaltung mit einem Klick

Eine häufige Beschwerde der Benutzer war, dass die Zuordnung einer Floating-IP zu einer Instanz zahlreiche Klicks benötigte und die Mehrheit der Nutzer nicht wusste, was genau einzustellen war. Als solches wurde eine „einfache“ Floating-IP-Anhängoption mit einem Klick erstellt. Für Bereitstellungen, die nur einen einzigen Floating-IP-Pool haben, können Benutzer das explizite Floating-IP-Management ignorieren und einfach auf eine Schaltfläche klicken, um eine Floating-IP mit einer Instanz zu verknüpfen oder zu disassoziieren.

Abbilder organisiert

Die Abbilder-Tabelle hat jetzt eine neue Funktion: vordefinierte Filter für das Ansehen Ihrer eigenen Abbilder, Abbilder, die mit Ihnen geteilt wurden, oder öffentliche Abbilder. Dies macht die Suche nach dem Abbild für Sie viel einfacher und angenehmer.

Verbesserungen bei der Bearbeitung von Sicherheitsgruppenregeln

Das Bearbeiten der Sicherheitsgruppenregeln war schon immer sehr kompliziert, einfach angesichts der Anzahl der Optionen und beteiligten technischen Begriffe. Darüber hinaus hatte der kombinierte Tabelle-plus-Form-Ansatz, den das OpenStack Dashboard genommen hatte, nur das frustrierende Kommandozeilen-Werkzeug noch mehr kompliziert.

In Grizzly wurde das alles überarbeitet, um entscheidend einfacher zu werden, und um so viel wie möglich Kontexthilfe und Rationalisierung zu bieten.

Icons!

Um das Dashboard überschaubarer zu machen, haben wir Icons für die meisten allgemeinen Aktionsknöpfe hinzugefügt.

„Weitere Aktionen“, noch besser

Es gab viele Rückmeldungen zum „Weitere Aktionen“ Dropdown-Menü“ (für Tabellen mit vielen Aktionen in jeder Zeile), dass dies verwirrend für neue Benutzer sei und schwierig zu klicken.

Wir haben das verbessert, so dass der Knopf zum öffnen des Menüs klar beschriftet ist und die Hitbox zum klicken wesentlich größer ist.

Community

Docs, Docs, und mehr Docs!

Während des Grizzly-Zyklus wurden große Mengen neuer Dokumentationen hinzugefügt, vor allem Abschnitte, die Folgendes dokumentieren: alle verfügbaren Einstellungen für Horizon und das OpenStack Dashboard; Sicherheits- und Installationsüberlegungen; und weiterführende Anleitungen zum Anpassen des OpenStack Dashboards.

IRC Meeting

Während des Grizzly-Zyklus begannen wir mit einem wöchentlichen Projekttreffen im IRC. Dies war für das Wachstum und den Fortschritt des Projekts äußerst vorteilhaft. Schauen Sie sich die OpenStack Meetings wiki page an.

Unter der Haube

Original-Dashboardnamen & Code Separation

Sehr früh im Grizzly-Zyklus nutzten wir die Gelegenheit, einige langjährige Cleanup- und Refactoring-Arbeiten zu tun. Das Dashboard „nova“ wurde in „Projekt“ umbenannt und das Armaturenbrett „syspanel“ wurde in „admin“ umbenannt.

Darüber hinaus wurde eine bessere Trennung zwischen Code im Zusammenhang mit dem Kern Horizon Framework-Code (der sich nicht direkt auf OpenStack bezieht) und dem OpenStack Dashboard-Code. Ab dieser Stelle existiert *der ganze * Code im Zusammenhang mit OpenStack im OpenStack Dashboard-Verzeichnis, während das Horizon-Framework völlig agnostisch ist als eine wiederverwendbare Django-App.

Objektspeicherbegrenzungen und Pseudo-Ordner-Objekte

Wenn Horizons Objektspeicherschnittstelle zuerst hinzugefügt wurde, empfahl die Dokumentation von Swift, 0-Byte-Objekte mit einem speziellen Inhaltstyp zu bezeichnen, um Pseudoordner innerhalb eines Containers zu benennen. Es hat sich seitdem herausgestellt, dass dies nicht die empfohlene Praxis ist und dass Pseudo-Ordner nur durch ein abgrenzendes Zeichen (meist „/“) im Objektnamen abgegrenzt werden sollten.

Horizon wurde unter der Haube aktualisiert, damit es diese Methode verwendet. Dies solle es daran annähern, wie andere Bereitstellungen ihren Objektspeicher verwenden.

Weitere Verbesserungen und Fehlerkorrekturen

  • Unterstützung für Keystone PKI Token.

  • Bearbeiten von Varianten ist wesentlich stabiler.

  • Sicherheitsgruppen können einer laufenden Instanz hinzugefügt werden.

  • Datenträgerkontingente werden vom passenden Dienst gehandhabt, abhängig davon, ob Cinder aktiviert ist.

  • Passwortbestätigungsfelder werden jetzt zur sofortigen Rückmeldung auf der Klientenseite validiert.

  • Zahlreiche Fehlerkorrekturen um mehr und bessere Informationen für Instanzen und Datenträger in den Übersichtsseiten anzuzeigen.

  • Verbesserte Unicode-Unterstützung für die Objektspeicher-Paneele.

  • Abmelden versucht die mit der aktuellen Sitzung verbundenen Token zu löschen, um Replay-Angriffe usw. zu vermeiden.

  • Zahllose Fehlerkorrekturen zur Browserkompatibilität und Grafikgenerierung.

  • Viele weitere Fehlerkorrekturen und Verbesserungen. Sehen Sie auf Launchpad für die vollständige Liste für Grizzly.

Bekannte Probleme und Limitierungen

Bearbeiten einer Variante, welches in einem API-Fehler endet, löscht die Variante

Aufgrund der Art und Weise wie Nova beim Bearbeiten/Ersetzen Varianten behandelt, ist es notwendig, die alte Variante zu löschen, bevor sie durch die neue ersetzt wird. Wenn also ein API-Fehler bei der Erstellung des Ersatzes auftritt, ist es möglich, die alte Variante zu verlieren, ohne dass die neue erzeugt wird.

Erzeugen reichhaltiger Netzwerktopologien

Aufgrund mehrerer Quantum-Funktionen, die sich sehr spät im Grizzly-Zyklus befinden, ist es nicht möglich, über das OpenStack Dashboard besonders komplexe Netzwerkkonfigurationen zu erstellen. Diese Funktionen werden in künftigen Versionen weiter wachsen.

Loadbalancer Eigenschaft

Das Loadbalancer Feature kam erst auf den letzten Drücker in Quantum und Horizon. Obwohl wir beim testen alles gegeben haben, kann es noch unentdeckte Bugs enthalten. Es kann bestenfalls als „Beta“ oder „experimental“ Feature im Grizzly Release angesehen werden.

Quantum Brocade Plugin nicht kompatibel

Das Brocade Plugin für Quantum unterstützt nicht die entscheidenden Eigenschaften der Floating IPs, welche zentral für Horizons Funktionalität stehen. Somit ist es nicht kompatibel mit der Quantum Integration in Grizzly.

Gleichzeitiges Löschen einer größeren Anzahl von Ressourcen

Wenn Sie das Kontrollkästchen „Alles auswählen“ verwenden, um eine große Anzahl von Ressourcen über die API zu löschen, können Netzwerkauszeiten (je nach Konfiguration) verursacht werden. Dies ist darauf zurückzuführen, dass die APIs nativ keine Bulk-Deletion unterstützen und folglich muss Horizon Anforderungen senden, um jede Ressource einzeln hinter den Kulissen zu löschen.

Abwärtskompatibilität

Die Grizzly Horizon Version sollte vollständig kompatibel mit Grizzly und Folsom Versionen in den OpenStack Kernprojekte (Nova, Swift, etc.) sein. Während einige Funktionen besser funktionieren mit einem All-Grizzly-Stack aufgrund von Bugfixes, etc. in zugrunde liegenden Diensten, sollte es keine Einschränkungen in der Funktion geben.

Insgesamt wurden viele Anstrengungen gemacht, um Kompatibilität für Dritthersteller-Entwickler zu bewahren, die bisher auf Horizon aufgebaut haben.