0. Vorbereitungen

Bevor du den OpenStack der Universität Münster nutzen kannst, musst du die Nutzung über ein Antragsformular bei der WWU Cloud beantragen. Das Formular findest du hier. Falls du dir unsicher bist, welche Ressoucren du benötigst und in den Antrag schreiben solltest, melde dich gerne bei uns. Wir helfen gern bei der Einschätzung.

1. Erste Schritte mit dem OpenStack

Wenn dein Antrag bearbeitet wurde, kannst du dich unter https://openstack.wwu.de im OpenStack mit deiner WWU-Kennung und deinem Passwort einloggen. Dich empfängt dann eine Dashbboard-Übersicht, ähnlich zu dieser:


Auf der linken Seite findest du das Menü, über das du auf die verschiedenen Ebenen des OpenStack zugreifen kannst. Die wichtigsten Punkte für die alltägliche Nutzung werden für uns "Instanzen", "Datenträger" und "Netzwerk" sein. Auf diese werden wir im folgenden insbesondere eingehen. Als nächstes beginnen wir, die Einrichtung einer Virtuellen Maschine (VM) vorzunehmen.

2. Einrichtung deiner ersten VM

Um eine Virtuelle Maschine starten zu können, benötigt sie (ganz wie ein echter PC) einen Datenträger, also eine Art Festplatte. Zusätzlich musst du bereits bei der Einrichtung deinen SSH-Key hinterlegen, um nach dem Start per SSH auf die Maschine zugreifen zu können.

2.1 Hinterlegen deines SSH-Keys

Klicke im Menü auf Schlüsselpaare. Hier werden dir nun deine bereits hinterlegten SSH-Keys angezeigt. Falls du den OpenStack zum ersten Mal nutzt, kannst du nun einen neuen Schlüssel hochladen. Wie du einen SSH-Key auf deinem Rechner erstellst, erfährst du im Kapitel Verwalte deinen Code mit GitLab. Du kannst den selben SSH-Schlüssel nutzen, den du auch dort generiert hast, aus Sicherheitsgründen empfehlen wir allerdings, einen neuen Schlüssel für den OpenStack zu verwenden.

Hast du einen Schlüssel auf deinem Rechner, klicke nun auf "Öffentlichen Schlüssel Importieren". Du kannst dem Schlüsselpaar nun einen Namen geben (zum Beispiel den Namen deines Rechners, wenn du mit mehreren Rechnern arbeitest). Wähle als Schlüsseltyp SSH-Schlüssel und lade die Datei des Öffentlichen Schlüssels. In der Regel findest du diese auf deinem Rechner im Home-Verzeichnis unter 

~/.ssh/[schlüsselname].pub

Gib niemals die Private Schlüsseldatei heraus oder lade sie irgendwo hoch. Die Authentifizierung erfolgt ausschließlich durch weitergabe des Public-Keys.

Dieses Schlüsselpaar kannst du später bei der Erstellung der VM angeben, um dich initial per SSH mit dem System verbinden zu können.

2.2 Erstellen eines Datenträgers

Um einen Datenträger für eine VM zu erstellen, klicke nun auf Datenträger → Datenträger und anschließend oben rechts auf Datenträger erstellen.

Gib dem Volume nun einen Namen. Hier empfiehlt sich, den Namen zu nehmen, der später auch der VM zugeordnet wird, um die Zuordnung einfacher zu haben. In unserem Beispiel nennen wir das Volume "price-api".

Wähle als Datenträger Quelle den Punkt Abbild aus. Nun kannst du ein bereits vorgefertigtes Image nutzen, hier gibt es eine ganze Menge zur Auswahl, insbesondere was verschiedene Linux-Systeme angeht. Wähle das System, das für dich am besten passt. Wir wählen in unserem Beispiel Ubuntu 22.04.

Der Typ replicated_bronze ist für uns erst einmal gut, die anderen Typen sind eher dafür geeignet, Datenbanken zu hosten.

Gib nun eine Größe an. Hier hast du theoretisch freie Wahl, dennoch solltest du beachten, dass du große Datenmengen wie Trainingsdaten besser auf einem usershare ablegen kannst (den du später natürlich auch in deine VM integrieren kannst). Deshalb empfehlen wir, auf dem System-Volume nur deinen Code sowie weitere Software abzulegen, aber keine großen Datensätze oder ähnliches. Mit ein bisschen Luft nach oben wählen wir dann als Volume-Größe 48GB.

Die Verfügbarkeitszone und die Gruppe sind für uns nicht relevant.

Klicke zum erstellen des Volumes auf Datenträger erstellen.

2.3 Erstellen der Sicherheitsgruppen

Aus Sicherheitsgründen ist bei allen VMs im OpenStack erst einmal die Firewall für alle Ports aktiv, das heißt es darf kein Netzwerkverkehr in die VM hereingehen. Du musst für jeglichen Traffic in die Maschine angeben, von wo aus er kommt und welche Kommunikation (Protokoll/Port) aufgenommen werden darf.

Da wir uns zunächst per SSH mit der VM verbinden möchten, müssen wir also eine Sichergruppe für den SSH-Verkehr einrichten. Klicke dazu auf Netzwerk → Sicherheitsgruppen und dann auf Sicherheitsgruppe erstellen. Gib der Sicherheitsgruppe einen Namen. Wir empfehlen, diese einfach "SSH" zu nennen und dort alle Regeln zu definieren, die für den SSH-Verkehr notwendig sind.

Nun möchten wir erlauben, dass wir von unserem Computer aus Kontakt mit der VM aufnehmen dürfen. Dies geht zunächst nur über das WWU-Netz. Du musst also entweder mit dem LAN/WLAN der Uni oder per VPN verbunden sein. Eine Anleitung, wie du eine VPN-Verbindung ins Uni-Netz aufbaust, findest du hier.

Nun klickst du auf Regel hinzufügen. Im erscheinenden Dialog wählst du als Regeltyp den letzten Punkt SSH aus. Als Beschreibung kannst du beispielsweise den Namen deines Computers angeben, falls du mit mehreren Computern arbeitest kannst du diese so besser identifizieren. Belasse den Punkt Entfernt bei der Auswahl CIDR

Hier kannst du nun entweder eine einzelne IP oder aber ganze IP-Blöcke angeben, von denen eine SSH-Verbindung erlaubt wird. Merke dabei: Je spezifischer die IP angegeben wird, desto sicherer. Da im Uni-Netz in der Regel feste IP-Adressen vergeben werden, geben wir hier unsere genaue IP an. Diese findest du zum Beispiel in den Systemeinstellungen heraus.

Bist du per VPN mit dem Uni-Netz verbunden, findest du deine IP-Adresse in den Statistiken/Details von Cisco AnyConnect.

Gib nun im Feld CIDR deine IP-Adresse ein und am Ende den Postfix /32.

Der Postfix /32 gibt an, dass alle 32 Bits der IP-Adresse genutzt werden, also nur genau diese IP eine Verbindung zur VM aufbauen darf. Beispiels weise dürfte mit der Eingabe 192.168.0.0/16 jede IP eine Verbindung aufbauen, die mit 192.168... beginnt.

Klicke abschließend auf Hinzufügen und wiederhole den Vorgang ggf. für weitere IP-Adressen, die von deer Firewall freigegeben werden sollen.