Emulatoren verwalten

Die EaaSI-Plattform basiert auf einer Reihe von Open-Source-Emulator-Projekten, um den Emulationsaspekt des Software- und Umweltmanagements zu erfüllen. Replikieren von Umgebungen, Fehlerbehebung und Erweiterung einer Knoten-Funktionalität alle können eine gewisse Verwaltung der Emulatoren selbst beinhalten.

„Emulatoren“ im EaaSI Interface

Verfügbare Emulatoren können über die Registerkarte „Emulatoren“ im Navigationsmenü überprüft und verwaltet werden.

../_images/emulators_nav.png ../_images/emulators_menu.png

„Available emulators“ bezieht sich auf Emulationsanwendungen, die vom Entwicklungsteam über das GitLab repo dem EaaSI-Netzwerk leicht zugänglich gemacht wurden. Dies bedeutet not, dass sie für den sofortigen Einsatz in der aktuellen Knoteninstallation notwendig sind. Die Anwesenheit/Verfügbarkeit des Emulators im Knoten wird durch die „Anzahl der Bilder“ bestimmt.

Zum Beispiel enthält der Beispielknoten im obigen Screenshot QEMU (zwei Versionen/Bilder), BasiliskII und SheepShaver.

Details für jeden Emulator - Versionsnummer(n), Docker Quell-Info, etc. - können durch Klicken auf die Schaltfläche „Details“ überprüft werden.

../_images/emulator_detail_button.png ../_images/emulator_details.png

Auch im obigen Beispiel hat die Knoteninstallation zwei Bilder/Versionen von QEMU zur Verfügung: 2.12 und 3.1. Dies kann für die Fehlerbehebung von Umgebungen bequem sein, da bestimmte Versionen eines Emulators mit bestimmten älteren Betriebssystemen oder Hardware besser kompatibel sein können als andere.

Wenn ein Emulator mehrere Bilder/Versionen in einem Knoten hat, kann die Version, die EaaSI verwendet, um eine Umgebung auszuführen, auf einer bestimmten Umgebungsdetailseite unter „Umwelteinstellungen“ angesehen und bearbeitet werden:

../_images/emulator_settings.png

Bemerkung

Das „Letzte“-Tag sollte als „Standard“ gelesen werden. Sie können ein bestimmtes Bild/Version markieren, um die Standardversion zu sein, die bei der Erstellung und Ausführung von Umgebungen mit diesem Emulator angeboten wird, indem Sie auf die Schaltfläche „Make Latest“ in der Emulator Detailseite klicken.

Die „letzte“ (vor kurzem verfügbare) Version eines Emulators ist in der Regel der recommended Standard des EaaSI-Teams, um die aktuellsten Feature- und Sicherheitsupdates aus diesen Außenprojekten zu ermöglichen!

Emulator-Vorlagen

Emulatorbilder enthalten die Vorlagendateien, die zur Unterstützung bei Hardware Configuration verwendet werden. Diese Vorlagen bieten gemeinsame Systemkonfigurationen für empfohlene Emulatoren und sind im UI sichtbar, wenn eine neue Umgebung erzeugt oder importiert wird:

../_images/system_templates.png

Im obigen Bild sind beispielsweise die Konfigurationen für „Generic 90s PC“ und „Generic 2000s PC“ in Vorlagen definiert, die in einem importierten QEMU-Bild enthalten sind; die „Apple (Motorola)(7.x-8.x)“ wurde mit einem BasiliskII-Container versehen.

Um eine neue Umgebung von Grund auf zu starten, anstatt von einem Remote-Knoten zu replizieren und abzuleiten, müssen diese Vorlagen ** vorhanden sein, um diese Menüs in der UI zu bevölkern. Der Zielemulator muss also zuerst importiert werden (siehe unten).

Neue Emulator Container hinzufügen

Neue Emulator-Container können auf zwei Arten dem Knoten hinzugefügt werden: entweder durch Umgebungsreplikation oder manuelles Hinzufügen von Docker-Bildern.

Emulator-Bilder werden automatisch in einen Knoten importiert, wenn ein Knoten-Benutzer versucht, eine Umgebung von einem Remote-Knoten im Netzwerk zu replizieren, und der Host-Knoten hat nicht das Emulator-Bild, den Remote-Knoten verwendet, um diese Umgebung ursprünglich zu erstellen und zu konfigurieren.

Zum Beispiel: Ein Benutzer bei Node A sieht eine entfernte Mac OS 9.0.4 Umgebung, die mit SheepShaver konfiguriert wurde, die von Node B zur Verfügung steht. Node A hat derzeit kein SheepShaver-Bild installiert. Aber wenn der Benutzer sich für die Replikation entscheidet, wird das entsprechende SheepShaver-Bild im Rahmen des Umweltreplikationsprozesses importiert, ohne dass eine zusätzliche Eingabe erforderlich ist. Schafe Shaver wird nun auch in Node A für zukünftige Umwelterstellung und -konfiguration verfügbar sein.

Die obige Methode erfordert wenig bis keine direkte Verwaltung vom EaaSI-Benutzer. Node-Admins können auch manuell Emulator-Bilder hinzufügen sowie durch Klicken auf die Schaltfläche „Import Emulator“ auf der Emulator-Seite:

../_images/import_emulator_button.png

Dies bringt das Import Emulator Pop-up-Menü auf:

../_images/import_emulator_menu.png

Anweisungen zum Ausfüllen der Namens- und Tag-Felder divergieren leicht, je nachdem, ob der Benutzer versucht, ein neues QEMU-Bild oder einen anderen Emulator-Container zu importieren:

QEMU: EaaS QEMU Bilder werden auf DockerHub geschoben. Für das Feld „Name“ füllen Sie „eaas/qemu-eaas“ aus, dann verwenden Sie die Liste der verfügbaren Tags auf DockerHub, um den gewünschten QEMU-Container anzugeben: `<https://hub.docker.com/r/eaas/qemu-eaas/tags/> `_.

Alle anderen: Alle anderen Emulatorbilder werden direkt auf GitLab gehostet. Um die Referenzinformationen für ein Docker-Bild zu erhalten, wählen Sie zunächst den entsprechenden Emulator aus der Liste der verfügbaren Projekte auf dem EaaS GitLab: https://gitlab.com/emulation-as-a-service/emulators

Einmal im jeweiligen Emulatorprojekt (z.B. https://gitlab.com/emulation-as-a-service/emulators/vice-eaas), klicken Sie auf „Registry“ im linken GitLab Menü. Von diesem Bildschirm aus finden Sie den Link zum Container-Emulator (** Verwenden Sie die vollständige registy.gitlab.com Adresse als „Name“ des Emulators im Import Emulator Menü*) und bestimmte markierte Versionen, falls gewünscht.

../_images/container_registry_link.png

Bemerkung

Wenn kein Tag angegeben ist, wird die EaaSI-Importfunktion in das „letzte“ Bild, wie in jedem Emulator’s Dockerfile angegeben.

Das optionale Feld „Alias“ wird die „User-Version“-Informationen in der Emulator-Details-Seite bevölkern und hilft, zu unterscheiden, wenn es mehrere Bilder für einen Emulator in einem Knoten gibt.

Wenn Namen, Tag und Emulator Alias Felder alle nach Wunsch ausgefüllt wurden, klicken Sie auf die Schaltfläche „Import Emulator“. Nach einer Minute oder zwei sollte das neue Emulatorbild im Emulatoren-Menü sichtbar und zur Erstellung und Konfiguration von Umgebungen verfügbar sein.