Ich habe eine Reihe von Servern und möchte OpenStack installieren. Wie kann ich OpenStack mit Metal-as-a-Service (MAAS) installieren?
Ich habe eine Reihe von Servern und möchte OpenStack installieren. Wie kann ich OpenStack mit Metal-as-a-Service (MAAS) installieren?
Antworten:
Dieses Dokument enthält Anweisungen zur Installation der MAAS-Software (Metal As A Service).
Mit Metal as a Service (MAAS) können Sie physische Server wie virtuelle Maschinen in der Cloud behandeln. Anstatt jeden Server einzeln verwalten zu müssen, verwandelt MAAS Ihr Bare Metal in eine elastische wolkenähnliche Ressource.
Was bedeutet das in der Praxis? Informieren Sie MAAS über die Maschinen, die verwaltet werden sollen, und es startet sie, überprüft, ob die Hardware in Ordnung ist, und lässt sie warten, wenn Sie sie benötigen. Sie können dann Knoten nach oben ziehen, abreißen und nach Belieben neu bereitstellen. Genau wie bei virtuellen Maschinen in der Cloud.
Wenn Sie bereit sind, einen Dienst bereitzustellen, gibt MAAS Juju die Knoten, die zur Stromversorgung dieses Dienstes erforderlich sind. So einfach ist das: Sie müssen nicht manuell bereitstellen, überprüfen und anschließend bereinigen. Wenn sich Ihre Anforderungen ändern, können Sie Services einfach nach oben oder unten skalieren. Benötigen Sie für einige Stunden mehr Strom für Ihren Hadoop-Cluster? Zerreißen Sie einfach einen Ihrer Nova-Rechenknoten und stellen Sie ihn erneut in Hadoop bereit. Wenn Sie fertig sind, ist es genauso einfach, den Knoten an Nova zurückzugeben.
Das Ubuntu Cloud Archive ist ein Repository, das speziell dafür entwickelt wurde, Benutzern die aktuellsten und stabilsten Versionen von MAAS, Juju und anderen Tools zur Verfügung zu stellen. Es wird dringend empfohlen, Ihre Software auf dem neuesten Stand zu halten:
sudo apt-get update
Es gibt mehrere Pakete, die eine MAAS-Installation umfassen. Diese sind:
Das DHCP-Setup ist entscheidend für das korrekte PXE-Booten von Knoten.
Zur Vereinfachung gibt es auch ein maas
Metapaket, in dem alle diese Komponenten installiert werden.
Wenn Sie diese Dienste trennen müssen oder einen zusätzlichen Cluster-Controller bereitstellen möchten, sollten Sie die entsprechenden Pakete einzeln installieren.
Ausführen des Befehls:
sudo apt-get install maas
... startet die Installation aller Komponenten von MAAS. Die Pakete maas-dhcp und maas-dns sollten standardmäßig installiert sein.
Sobald die Installation abgeschlossen ist, wird die webbasierte Oberfläche für MAAS gestartet. In vielen Fällen verfügt Ihr MAAS-Controller über mehrere Netzwerkkarten. Standardmäßig werden alle Dienste mit dem ersten erkannten Controller (dh normalerweise eth0) initiiert.
Bevor Sie sich zum ersten Mal beim Server anmelden, sollten Sie ein Superuser-Konto erstellen.
Nach der Installation von MAAS müssen Sie ein Administratorkonto erstellen:
sudo maas-region-admin createsuperuser
Wenn Sie diesen Befehl ausführen, werden Sie aufgefordert, einen Benutzernamen, eine E-Mail-Adresse und ein Kennwort für den Administrator einzugeben. Sie können auch einen anderen Benutzernamen für Ihr Administratorkonto verwenden, aber "root" ist eine gängige Konvention und leicht zu merken.
Sie können diesen Befehl erneut für alle weiteren Administratorkonten ausführen, die Sie möglicherweise erstellen möchten, aber Sie benötigen mindestens eines.
MAAS sucht einmal pro Woche nach neuen Ubuntu-Bildern und lädt sie herunter. Sie müssen sie jedoch beim ersten Mal manuell herunterladen. Dazu sollten Sie über einen Webbrowser eine Verbindung zur MAAS-Weboberfläche herstellen. Verwenden Sie die URL:
http://172.18.100.1/MAAS/
Sie sollten die IP-Adresse des Servers eingeben, auf dem Sie die MAAS-Software installiert haben. Wenn es mehrere mögliche Netzwerke gibt, befindet es sich standardmäßig in dem Netzwerk, das dem eth0-Gerät zugewiesen ist.
Sie sollten einen Anmeldebildschirm wie diesen sehen:
Geben Sie den Benutzernamen und das Passwort ein, die Sie für das Administratorkonto angegeben haben. Wenn Sie sich erfolgreich angemeldet haben, sollte die MAAS-Hauptseite angezeigt werden:
Klicken Sie entweder auf den Link, der in der Warnung oben angezeigt wird, oder auf die Registerkarte "Cluster" im Menü, um zum Cluster-Konfigurationsbildschirm zu gelangen. Der anfängliche Cluster wird bei der Installation automatisch zu MAAS hinzugefügt, es sind jedoch noch keine Images zum Booten von Knoten zugeordnet. Klicken Sie auf die Schaltfläche, um den Download geeigneter Boot-Images zu starten.
Das Importieren der Startabbilder kann abhängig von der verfügbaren Netzwerkverbindung einige Zeit dauern. Diese Seite wird nicht dynamisch aktualisiert, sodass Sie sie manuell aktualisieren können, um festzustellen, wann die Startabbilder importiert wurden.
Um zu überprüfen, ob alles ordnungsgemäß funktioniert, sollten Sie versuchen, sich jetzt beim Server anzumelden. Beide Fehlermeldungen sollten verschwunden sein (es kann einige Minuten dauern, bis sich die Boot-Image-Dateien registriert haben), und Sie können sehen, dass derzeit 0 Knoten an diesen Controller angeschlossen sind.
Einige Switches verwenden das Spanning-Tree-Protokoll (STP), um einen schleifenfreien Pfad durch eine Root-Bridge auszuhandeln. Während des Scannens kann jeder Port bis zu 50 Sekunden warten, bevor Daten an den Port gesendet werden dürfen. Diese Verzögerung kann wiederum Probleme bei einigen Anwendungen / Protokollen wie PXE, DHCP und DNS verursachen, von denen MAAS in großem Umfang Gebrauch macht.
Um dieses Problem zu beheben, sollten Sie Portfast für Cisco-Switches oder gleichwertige Geräte anderer Geräte aktivieren , damit die Ports fast sofort aktiviert werden können .
Während es sicherlich möglich ist, MAAS mit nur einem Cluster-Controller für alle Knoten auszuführen, ist es im Interesse einer einfacheren Wartung, Upgrades und Stabilität wünschenswert, mindestens zwei betriebsbereite Cluster zu haben.
Jeder Cluster benötigt einen Controller-Knoten. Installieren Sie Ubuntu auf diesem Knoten und folgen Sie einem ähnlichen Setup-Verfahren, um die Cluster-Controller-Software zu installieren:
sudo apt-get update
sudo apt-get install maas-cluster-controller
sudo apt-get install maas-dhcp maas-dns
Nach der Installation der Cluster-Software ist es nützlich, Folgendes auszuführen:
sudo dpkg-reconfigure maas-cluster-controller
Auf diese Weise können Sie sicherstellen, dass der Cluster-Controller-Agent auf die richtige Adresse für den MAAS-Master-Controller verweist.
Wenn Sie Ihren ersten Cluster-Controller auf demselben System wie den Regions-Controller installieren, wird er standardmäßig automatisch akzeptiert (aber noch nicht konfiguriert, siehe unten). Alle anderen von Ihnen eingerichteten Cluster-Controller werden in der Benutzeroberfläche als "ausstehend" angezeigt, bis Sie sie manuell in das MAAS übernehmen.
Um einen Cluster-Controller zu akzeptieren, klicken Sie oben auf der MAAS-Weboberfläche auf die Registerkarte "Cluster":
Sie sollten sehen, dass der Text oben auf der Seite auf einen ausstehenden Cluster hinweist. Klicken Sie auf diesen Text, um zum Cluster-Akzeptanzbildschirm zu gelangen.
Hier können Sie den Namen des Clusters ändern, wie er in der Benutzeroberfläche angezeigt wird, seine DNS-Zone und seinen Status. Durch das Akzeptieren des Clusters wird sein Status von "Ausstehend" in "Akzeptiert" geändert.
Nachdem der Cluster-Controller akzeptiert wurde, können Sie eine oder mehrere seiner Netzwerkschnittstellen für die Verwaltung durch MAAS konfigurieren. Dadurch kann der Cluster-Controller Knoten verwalten, die an diese Netzwerke angeschlossen sind. Im nächsten Abschnitt wird erläutert, wie dies zu tun ist und welche Entscheidungen zu treffen sind.
MAAS erkennt automatisch die Netzwerkschnittstellen auf jedem Cluster-Controller. Einige davon werden mit Netzwerken verbunden, in denen Sie Knoten verwalten möchten. Wir empfehlen, Ihren Cluster-Controller als DHCP-Server für diese Netzwerke fungieren zu lassen, indem Sie diese Schnittstellen in der MAAS-Benutzeroberfläche konfigurieren.
Als Beispiel konfigurieren wir den Cluster-Controller so, dass er ein Netzwerk auf der Schnittstelle eth0 verwaltet. Klicken Sie auf das Bearbeitungssymbol für eth0, um zu dieser Seite zu gelangen:
Hier können Sie auswählen, inwieweit der Cluster-Controller das Netzwerk verwalten soll:
Ohne DHCP-Verwaltung ist keine DNS-Verwaltung möglich, da MAAS auf die Lease-Datei seines eigenen DHCP-Servers angewiesen ist, um die IP-Adresse der Knoten im Cluster zu ermitteln. Wenn Sie die zu verwaltende Schnittstelle festlegen, müssen Sie jetzt alle üblichen DHCP-Details in den folgenden Eingabefeldern angeben. Klicken Sie anschließend auf "Schnittstelle speichern". Der Cluster-Controller kann nun Knoten in diesem Netzwerk starten.
Es besteht auch die Möglichkeit, das Netzwerk nicht verwaltet zu lassen. Verwenden Sie diese Option für Netzwerke, in denen Sie keine Knoten verwalten möchten. Oder wenn Sie Knoten verwalten möchten, aber einen vorhandenen DHCP-Dienst in Ihrem Netzwerk verwenden möchten.
Ein einzelner Cluster-Controller kann mehr als ein Netzwerk über eine andere Netzwerkschnittstelle auf dem Cluster-Controller-Server verwalten. Dies kann Ihnen helfen, Ihren Cluster auf eine größere Anzahl von Knoten zu skalieren, oder es kann eine Anforderung Ihrer Netzwerkarchitektur sein.
Nachdem der MAAS-Controller ausgeführt wird, müssen wir die Knoten auf MAAS aufmerksam machen und umgekehrt. Da MAAS DHCP und PXE-fähige Knoten steuert, ist dies unkompliziert
Wenn Knoten so eingestellt sind, dass sie von einem PXE-Image booten, werden sie gestartet, nach einem DHCP-Server gesucht, die PXE-Bootdetails empfangen, das Image gestartet, den MAAS-Server kontaktiert und heruntergefahren.
Während dieses Vorgangs werden dem MAAS-Server Informationen über den Knoten übergeben, einschließlich der Architektur, der MAC-Adresse und anderer Details, die in der Datenbank der Knoten gespeichert werden. Sie können die Knoten über die Weboberfläche akzeptieren und in Betrieb nehmen. Wenn die Knoten akzeptiert wurden, wird die ausgewählte Ubuntu-Serie installiert.
Sie können auch alle Knoten über die Befehlszeile akzeptieren und in Betrieb nehmen. Dazu müssen Sie sich zuerst mit dem API-Schlüssel anmelden und dann den folgenden Befehl ausführen:
maas-cli maas-profile nodes accept-all
Nach der Inbetriebnahme wird der Status des Knotens auf "Bereit" aktualisiert. Sie können die Ergebnisse der Inbetriebnahmeskripte überprüfen, indem Sie auf den Knotennamen und dann auf den Link unter der Überschrift "Inbetriebnahmeausgabe" klicken. Auf dem Bildschirm wird eine Liste der Dateien und deren Ergebnisse angezeigt. Sie können die Ausgabe weiter untersuchen, indem Sie auf den Status einer der Dateien klicken.
Wenn Ihre Knoten nicht von PXE-Images booten können, können sie manuell bei MAAS registriert werden. Klicken Sie im Hauptbildschirm der Weboberfläche auf die Schaltfläche "Knoten hinzufügen":
Dadurch wird eine neue Seite geladen, auf der Sie manuell Details zum Knoten eingeben können, einschließlich seiner MAC-Adresse. Dies wird verwendet, um den Knoten zu identifizieren, wenn er den DHCP-Server kontaktiert.
MAAS unterstützt verschiedene Arten der Energieverwaltung. Um die Energieverwaltung zu konfigurieren, klicken Sie auf einen einzelnen Knoteneintrag und dann auf die Schaltfläche "Bearbeiten". Der Energieverwaltungstyp sollte aus der Dropdown-Liste ausgewählt und die entsprechenden Energieverwaltungsdetails hinzugefügt werden.
Wenn Sie eine große Anzahl von Knoten haben, sollte es möglich sein, diesen Prozess mit der MAAS-CLI zu skripten.
Ohne Energieverwaltung kann MAAS Knoten nicht einschalten, wenn sie benötigt werden.