Inhaltsverzeichnis

Fernsteuerung / Wake On Lan (WoL)

Mit der Fernsteuerung können einzelne oder mehrere Rechner über Netzwerk gestartet, neugestartet oder heruntergefahren werden. Weiterhin können auf ausgewählten Computern beliebige Aktionen per Skript ausgeführt werden.

Sollten Sie sich bei bereits geschehener Konfiguration nur noch für die Anwendung interessieren, können Sie direkt zu Rechnerauswahl und Aktionen weiterspringen.

Konfiguration Server

Schaltfläche Grundeinstellungen
Eingabe Grundeinstellungen Einstellungen

Die nötigen Grundeinstellungen beziehen sich einerseits auf die Generierung eines für die Aktionen Neustart (Reboot), Herunterfahren (Shutdown) und Skriptausführung notwendigen ssh-Schlüssels, andererseits der Festlegung einiger Parameter für „Wake on Lan“ (im Folgenden auch einfach „WoL“ genannt).

Grundeinstellungen

Die Grundeinstellungen sind über die Schaltfläche „Einstellungen“ (siehe Abb. links) sowohl vom Menupunkt „Fernsteuerung / Wake On Lan“ als auch den Untermenupunkten erreichbar.

ssh

Erzeugen Sie hier ein neues ssh-Schlüsselpaar. Das ist in der Regel nicht notwendig, da ein Schlüsselpaar bei der Erstinstallation automatisch generiert wird. Achtung: Wenn Sie ein neues Schlüsselpaar erzeugen, können ab diesem Zeitpunkt bereits laufende Rechner nicht mehr über die Aktionen Neustart, Herunterfahren und Skript-Ausführung angesprochen werden. Diese müssen dann - falls kein anderer Zugriff konfiguriert - ggf. manuell neugestartet werden.

Wake-on-Lan-Port

Hier kann der udp-Zielport für WoL-Pakete eingestellt bzw. geändert werden. Standardmäßig ist Port 9 vorgegeben.

Automatische WoL-Ermittlung

Sprunghosts

Ein Sprunghost ist in diesem Kontext einfach ein anderer Linux1)-Rechner, der den WoL-Befehl vom Satellitenserver weiterleitet - z.B. wenn das Ziel-Subnetz nicht direkt erreichbar ist. Ein Spunghost muss vom Satellitenserver aus per SSH erreichbar (und im Idealfall durchgehend in Betrieb) sein sowie die gewünschten Zielrechner mit WoL-Paketen erreichen können. Das Weck-Skript wird vom Satellitenserver übergeben und vom Spunghost ausgeführt. Das Skript kann per Webschnittstelle editiert werden. Bereits konfigurierte Sprunghosts werden hier aufgelistet, ein Klick auf die Schaltfläche „+Neu“ bringt Sie zu den zur Konfiguration eines Sprunghosts nötigen Einstellungen.

Host, Port, Benutzername

Geben Sie hier den Hostnamen (IP oder DN) des zu verwendenden Sprunghosts an, den zu verwendenden Port des ssh-Zugangs (Default: 22) und den Namen des Users, unter dem das ssh-Login zum Starten des WoL-Skriptes stattfinden soll.

Sie können als Usernamen „root“ verwenden. Dies ist jedoch nicht notwendig. Verwenden Sie stattdessen eine möglichst gering berechtigte Userkennung!

Geheimer Schlüssel

Erzeugen Sie ein ssh-Schlüsselpaar, und legen den öffentlichen Schlüsselteil an passender Stelle des Useraccounts2) ab.

Aufweck-Skript

Legen Sie hier das Skript ab, das zum Wecken der Clientrechner dienen soll. Zur Bequemlichkeit wurde ein Skript vorgelegt, das in den meisten Fällen genügen dürfte. Dieses Skript wird unter der Standard-Shell des oben angegebenen Benutzers ausgeführt; das Vorgabeskript nimmt die bash als Shell an und erwartet, dass mindestens eines der Dienstprogramme „wakeonlan“ (bevorzugt) oder „etherwake“ vorhanden und für oben angegebenen User ausführbar ist. Ein übergebenes Skript kann zwei Platzhalter enthalten, die vor der Übergabe vom Satellitenserver ersetzt werden:

Vergessen Sie nicht, anschließend dem erstellten Sprunghost wie im nächsten Schritt unter #Netze beschrieben, Subnetze zuzuordnen.

Auflistung und Kontrolle

Auflistung bestehender Sprunghosts

Nach der Speicherung der Konfiguration eines Sprunghosts erscheint dieser in der Auflistung (siehe Abb. rechts).

Laufende bwlp-Clients, auch dnbd3-Proxies, werden automatisch als Sprunghost verwendet. Es genügt also ein laufender Rechner, um weitere Rechner im Subnetz nachzustarten - etwa eine PVS-Station.

Subnetze

Hier finden Sie eine Auflistung der dem Satellitenserver bekannten Subnetze und eine Möglichkeit, ein Subnetz manuell hinzuzufügen. Die Liste füllt sich automatisch mit Subnetzen bekannter Clientrechner. Zudem wird automatisch ermittelt, welche Netze mittels „Directed Broadcasts“ erreichbar sind, sofern diese Funktion nicht über die „Einstellungen“ deaktiviert wird.

Liste

In der Liste sind folgende Spalten zu finden:

Subnetz hinzufügen

Sie können ein Subnetz händisch hinzufügen, indem Sie das Netz à la 1.2.3.0/24-Notation eintragen und auf „Hinzufügen“ klicken. Wenn Sie durch Klick auf ein Subnetz über die Liste der Subnetze gekommen sind, sehen Sie ebenfalls diese Auswahlmöglichkeiten; in diesem Fall können Sie sie editieren.

Weiterhin finden Sie hier eine Schaltfläche „Löschen“, falls Sie das Subnetz löschen wollen.

Konfiguration Clients

Zur Nutzung von WoL müssen clientseitig einige Bedingungen gegeben sein:

Auswahl der Rechner

Ausschnitt Räume/Orte: Klick auf Rechneranzahl …
Ausschnitt Statistiken: … oder erweiterte Suche nach Raum unter „Mehr“ …
… liefert eine Liste der Rechner des Raums.

Vor der Ausführung einer Fernsteueraktion müssen die Zielrechner ausgewählt und gekennzeichnet werden. Hier führen viele Wege nach Rom. Im wohl häufigsten Fall der Ansteuerung eines ganzen Raumes empfiehlt sich, einfach auf den Menupunkt „Räume/Orte“ zu gehen und dort auf die in der Spalte „Rechner“ befindliche, dem Raum zugeordnete blau hinterlegte Zahl zu klicken (siehe Abb. rechts, Zahl eines Raumes umkreist). Dies führt direkt zur Auflistung aller Rechner dieses Raumes.

Sie können aber auch über den Menupunkt „Client-Statistiken“ gehen, und dort beispielsweise über Klick auf die Schaltfläche „Mehr“ nach einem bestimmten Raum suchen (siehe Abb. rechts). Kurz ausgedrückt: Sie können sich über die Client-Statistiken Rechner nach x-beliebigen Merkmalen und Kriterien auflisten lassen. Was auch immer Sie als Suchkriterium bzw. -kriterien suchen ließen: Sie bekommen eine verwendbare Liste, wenn Sie bei dem Statistik-Suchergebnis auf die Schaltfläche „Liste“ rechts oben klicken

Wie auch immer Sie also zu einer Rechnerliste gelangten: Markieren Sie dort die gewünschten Rechner durch Klick auf das Kästchen vor dem jeweiligen Rechnernamen; Sie können durch Klick auf das Kästchen vor „Rechner“ ganz oben auch alle Einträge markieren/demarkieren. Erneuter Klick auf ein Kästchen demarkiert - wenn Sie also beispielsweise alle Rechner außer einem haben wollen, klicken Sie auf das Kästchen vor „Rechner“, um alle zu markieren, und demarkieren den auszuschließenden Computer (siehe Abb. rechts). Zusätzlich können Sie auch, vergleichbar zur Auswahl in einem Dateiexplorer, die SHIFT-Taste gedrückt halten und somit Bereiche auswählen.

Nach Markierung mindestens eines Rechners wird die unten rechts befindliche Schaltfläche „Ferngesteuerte Aktionen“ aktiviert. Ein Linksklick darauf klappt die Fernsteuerungsmöglichkeiten (siehe unten) aus, mit einem weiteren Linksklick veranlassen Sie die Aktion Ihrer Wahl. Anmerkung: In der Abbildung wurde der erste Linksklick zur besseren Illustration bereits ausgeführt.

Fernsteuerung bei Einzelrechner

Eine Ausnahme gibt es allerdings: Sollte Ihre Suche - egal ob per Raumauswahl oder über die Statistiken - einen einzelnen Rechner als Ergebnis liefern, erhalten Sie keine Liste angezeigt, sondern direkt die Detailanzeige des betreffenden Computers. Das ist jedoch weiter kein Problem; Sie erhalten die gleichen Aktionsmöglichkeiten, nur eben nicht als Ausklappmenu, sondern direkt angezeigt (siehe Abb. links).

Aktionen

Als direkt ansteuerbare Aktionen stehen „Herunterfahren“, „Neustart“, „Wake on LAN“ zur Verfügung. Daneben besteht die Möglichkeit, ein sebst definiertes Skript zur Ausführung zu übergeben.

Herunterfahren

Die Auswahl der Möglichkeit „Herunterfahren“ löst - wer hätte das gedacht! - einen Shutdown der ausgewählten Rechner aus. Betroffene Rechner mit eingeloggtem User erhalten eine fünfminütige Frist vor dem herunterfahren. Clientseitig werden in diesem Fall im Minutentakt Warnungen angezeigt.

Neustart

Die Auswahl der Schaltfläche „Neustart“ löst einen Neustart/Reboot aus4). nach Anwahl der Schaltfläche kann per Häkchen eine Art Blitz-Neustart per kexec mit schnellem Reboot in bwLehrpool gewählt werden. Auch in diesem Fall erhalten eingeloggte User eine fünfminütige Frist vor dem Neustart. Clientseitig werden ebenfalls im Minutentakt Warnungen angezeigt.

Wake on LAN

„Wake on Lan (WoL)„ ist für viele Dinge eine praktische und bequeme Sache, als ein Beispiel von vielen sei hier nur das Vor-Starten der Rechner eines Raumes vor Kursen oder E-Prüfungen genannt. Die Fähigkeit zum Starten per WoL stellt neben anderem eine Voraussetzung für den Betrieb von bwLehrpool-remote dar.

Befehl ausführen

Fernsteuerung: Skriptbeispiel
Fernsteuerung: Skriptausgabe

Per „Befehl ausführen“ können beliebige Skripte übergeben und mit Rootrechten ausgeführt werden. Zur Ausführung wird die Standardshell des Users root verwendet (bash).

Rechts ist als Beispiel ist als simples Skriptbeispiel der Befehl „who“ angegeben, der auf vier Zielrechnern ausgeführt wird. Links sehen Sie die Ausgabe des Skriptes, pro Rechner jeweils in den grauen Unterfeldern, zusammen mit der Angabe des jeweiligen Exit codes. Standardausgabe und Fehlerkanal (stdout und stderr) werden in zwei getrennten Feldern ausgegeben.

Jobliste

Jobliste ohne Jobs
Jobliste mit einigen ausgef. Aktionen

Unter dem Menupunkt „Fernsteuerung / Wake On Lan“ werden angestoßene Aktionen („Jobs“) aufgelistet. Diese Liste ist im Normalfall leer; ausgeführte und beendete Jobs bleiben nur eine gewisse Zeit lang erhalten.

Allgemein sind Aktionen, die noch nicht beendet sind, mit einem Ein-Auschaltsymbol gekennzeichet, erfolgreich beendete Aktionen dagegen mit einem grünen Häkchen.

Beispiele

Herunterfahren:
Herunterfahren gestartet …
… und beendet.
Wake on LAN:
Wake-on-Lan gestartet …
… und beendet.

Noch zu dokumentieren

(zurück zum Satellitenserverhandbuch)

1)
oder einem anderen unixoiden Betriebssystem
2)
z.B. manuell nach ~/.ssh/authorized_keys oder bequem per ssh-copy-id.
3)
wer hätte das gedacht:)
4)
Wären Sie draufgekommen? :)