Openmosix, worauf dieser Artikel basiert, ist eingestellt seit 2008, sourcecodes kann man natürlich noch haben
Cluster Knoppix 3.3
Homepage: http://bofh.be/clusterknoppix/ & some /EnglishQuestions
Inhalt
Inhaltsverzeichnis
Ihr braucht einen Screenshot in Front, sagt es doch:)
Worum es geht
ClusterKnoppix ist die Vernetzung von mehreren Computer für mehr Rechenleistung. Es wird Openmosix eingesetzt. Die Rechner arbeiten aber nicht einfach parallel, sondern arbeitsintensive Prozesse werden nach einem volkswirtschaftlichen Aspekt beurteilt, ob sich das Verschieben dieser Aufgabe auf einen andern Rechner lohnt. Wenn ja, wird der Prozess auf dem Orginal Computer eingefroren, auf einen anderen Rechner verschoben und da erneut gestartet. Nach Beendigung wird der Prozess auf den Orginal Computer zurückgeholt. Dabei ist darauf zu achten, dass man innerhalb eines OpenMosix Systems die gleichen Kernelversionen benutzt. Auf der clusterKnoppix CD befindet sich auch das Programm pvm; povray render Aufgaben werden parallel an alle Rechner verteilt.
Was es kann
clusterKnoppix 3.3 bietet anderen Client-Rechnern über das Netz das ganze Betriebssystem an. Diese Clients sollten über Netzwerkkarten verfügen, die PXE boot Fähigkeit haben, da die Clients vom Master über das Netzwerk booten. In dieser Beschreibung wird davon ausgegangen, das man zwei Netzwerkarten installiert hat. Eine wird für die Verbindung an ein bestehendes Netz oder einen Provider verwendet, die zweite Karte ist für die Cluster-Clients reserviert. Auf der Homepage von clusterKnoppix findet man unter dem Menüpunkt "Dokumentation" Links zu Beschreibungen, die weiterhelfen, falls z. B. der Rechner keine Netzwerkkarten mit PXE Fähigkeit hat.
Was es nicht kann
DVD rippen und umwandeln auf divx kann man allgemein nicht mit einem Cluster. Da mpeg Dateien nicht zeilenweise abgearbeitet werden können. Wer so etwas machen möchte, richtet sich am besten einen Fileserver ein, und teilt die Quell-mpeg Datei in ein paar gleich grosse Teile und verteilt diese dann auf freie Rechner, transcoded diese Einzelteile lokal. Zurück auf dem Fileserver fügt man die Teile (mit avimerge) wieder zusammen. (rsh Kommando für Befehle ausführen auf entfernten Rechner)
(Siehe Verschiedenes)
Installation
Es wird nur die Harddisk installation betrachtet, und nicht das Live-System (Benutzung nur ab CD). Ein bisschen Linux Kenntnisse sind wünschenswert. Das System wird nachher so angepasst, dass der Master Computer auch zum Cluster gehört, sowie die benötigten Dienste automatisch starten.
Die Version 3.3 von der clusterKnoppix Homepage herunterladen, diese Datei auf CD brennen. Von CDROM booten. Wenn die grafische Oberfläche erscheint, kann neben der Uhr die Tastaturbelegung eingestellt werden (Rechtsklick). Beim Pinguin Symbol unten links, eine Root Shell öffnen, darin /usr/local/bin/knx-hdinstall aufrufen. Festplatte auswähen, eine 10GB partition würde ich einrichten, minimal 3GByte. Allenfalls reiserfs wählen, ext2 würd ich nicht nehmen, und ext3 wird schlecht supportet von diesem Kernel auf dieser Knoppix. Danach wird man gefragt ob man eine SWAP benützen will, verneinen, weil sich die Installtion sonst aufhängt. Files werden auf die Partition kopiert. Beim root Passwort würd ich nur 12345 eingeben und erst später wenn das richtige System läuft nochmals anpassen, weil die Tastatur anfangs, also beim ersten boot, noch nicht stimmt. Für ein Cluster System würd ich keinen Mailserver installieren. Lassen Sie sich sich den DHCP Broadcast installieren. Benötigt wird auch sshd wichtig. Zur Installation der Version 3.4 auch die Root-Shell wie oben beschrieben öffnen, darin dann knoppix-installer eingeben jetzt weiter der Beschreibung oben folgen. Im Zweifel auch nachlesen wie die "normale" Version von Knoppix installiert wird.
Erster Boot ohne CD, das System anpassen
Tastatur
Nach dem Reboot müssen einige Sachen angepasst werden. Beim kdm grafischen Login ist die Tastatur noch auf US Keyboard Layout, beachten Sie das wenn Sie ihr root passwort eintippen. In der Datei /etc/X11/XF86config-4 kann man dieses Keyboard Layout von "us" auf "de" oder für die schweiz auf "de_CH" ändern. Das Layout für X wird erst aktiv, nachdem man X einmal abschiesst, resp. kdm, ctrl+strg+Backspace, oder reboot des Rechners (empfohlen).
Auch die Console ist noch falsch konfiguriert, "dpkg-reconfigure console-data" (Select from arch list->qwertz->das richtige Layout wählen und latin1). Auch /etc/init.d/keymap.sh muss noch angepasst werden, damit das layout wirklich geladen wird beim boot.
/etc/init.d/keymap.sh, nur ein Ausschnitt dieser Datei, dabei auf die bz2 Endung achten.
case "$1" in start | restart | force-reload | reload) # load new map if [ -r ${CONFDIR}/${CONFFILEROOT}.${EXT}.bz2 ] ; then loadkeys ${CONFDIR}/${CONFFILEROOT}.${EXT}.bz2 fi #loadkeys /usr/share/keymaps/i386/qwerty/us.kmap.gz ;;
Wer Numlock on will, In /etc/console-tools/config LEDS=+num aktivieren für console, für's X kann man "apt-get install numlockx" machen, falls man schon online ist.
Netzwerkkarten
Die Netzwerkkarten Module sollten schon geladen sein. Es kann hier nicht näher auf Hardware eingegangen werden.
eth0 = Anbindung an bestehenden Server als dhcp-client
eth1 = DHCP Server von unserem cluserKnoppix, von hier werden die Cluster-Client Nodes gestartet
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8) # The loopback interface # automatically added when upgrading auto lo eth0 iface lo inet loopback iface eth0 inet dhcp auto eth1 iface eth1 inet static address 192.168.0.1 netmask 255.255.255.0
Aktualisieren der Netzwerkarten: /etc/init.d/networking restart
Filesystem
In /etc/fstab fehlt ein Eintrag für mfs, einfach zu unterst eine Zeile einfügen.
mfs_mnt /mfs mfs dfsa=1 0 0
Start -Scripte anpassen
In /etc/init.d/openmosix ein "umount mfs 2&1 > /dev/null" einfügen , ein Ausschnitt aus dieser Datei.
stop_openmosix() { echo "Stopping openMosix..." echo -n "$OM_MSG " # Expel all processes $MOSCTL expel # disable openMosix configuration $SETPE -off # kill any autodiscovery deamon if running killall -TERM omdiscd &> /dev/null # remove lock file rm -f /var/lock/subsys//openmosix umount /mfs 2&>1 > /dev/null }
In /etc/init.d/knoppix-terminalopenmosix ein "rm -f /root/.ssh/id_dsa" in der ssh sektion einfügen, ein Ausschnitt aus dieser Datei.
### #sssh stuff rm -f /root/.ssh/id_dsa ssh-keygen -t dsa -N "" -f /root/.ssh/id_dsa cp -a /root/.ssh "$MINIROOT/root/" cp /root/.ssh/id_dsa.pub "$MINIROOT/root/.ssh/authorized_keys" cp /root/.ssh/id_dsa.pub "/root/.ssh/authorized_keys"
Start-Scripte in die Runlevels für automatischen start der Dienste
...zuerst die alten entfernen,
update-rc.d -f openmosix remove update-rc.d -f knoppix-terminalopenmosix remove
...einfügen
update-rc.d openmosix start 20 2 3 4 5 . stop 20 1 2 3 4 5 6 . update-rc.d knoppix-terminalopenmosix start 20 2 3 4 5 . stop 20 1 2 3 4 5 6 .
Wer will, das Openmosix die Verteilung und Auslastung mitlogt
update-rc.d -f openmosixcollector remove update-rc.d openmosixcollector start 20 2 3 4 5 . stop 20 1 2 3 4 5 6 .
Punkte und Abstände beachten
OpenMosix auf Master Interface definieren
Im Moment wenn man openmosixview startet, wird openmosix auf eth0 horchen, und erwartet da andere Clients für das Cluster. Wir ändern das auf eth1, weil wir unser Cluster-clients an eth1 betreiben.
In /etc/default/openmosix.config ein Eintrag mit AUTODISCIF=eth1
CD-Rom Datei für Clients auf Harddisk kopieren
...folgende Anweisungen befolgen,
eject /cdrom mkdir /cdrom/KNOPPIX -p clusterKnoppix CD einlegen mount /dev/cdrom /mnt cp /mnt/KNOPPIX/KNOPPIX /cdrom/KNOPPIX/
Reboot von Diensten und Konfiguration der Client-Netzwerkkarten
Dienste
/etc/init.d/openmosixcollector start/stop/restart (logger für cluster Belastung) /etc/init.d/openmosix start/stop/restart (openmosix für Master) /etc/init.d/knoppix-terminalopenmosix start/stop (terminal dienst für dhcp nfs tftp)
Konfiguration "/etc/init.d/knoppix-terminalopenmosix" Enter für die Konfiguration der Client-Netzwerkkarten für das PXE miniroot.
Netzwerkkarte eth1 wählen
Die letzten Einstellungen werden beim Booten des Masters übernommen. Wer auf den Clients ein X will, sollte hier "secure: Disable root access on client(s)" und "textmod: boot client(s) in textmode" die Häcken wegnehmen. Die wheelmouse option stört auch, wenn nicht wirklich solche Mäuse installiert sind.
Auf der Homepage von clusterKnoppix unter Dokumentation finden man links wenn man z.b keine Netzwerkkarten hat die PXE boot können. Weitere Konstellationen (Master kein X, Clients X etc..) können auf der Homepage von clusterKnoppix nachgelesen werden unter Dokumentation.
Verschiedenes
Mehr Programme
Master
Auf dem Master kann man normal Programme installieren mit den apt Funktionen.
Client
Wenn man auf den Clients Programme benötigt, die nicht installiert sind im Image von /cdrom/KNOPPIX/KNOPPIX, muss man die clusterKnoppxi CD selber remastern, und wieder hineinkopieren auf den Master und die Clients neu booten. http://www.knoppix.net/docs/index.php/KnoppixRemasteringHowto (Es wird nur die englische Anleitung update gehalten)
Doch mpeg-cluster?
Wen man den Audio Anteil alleine transcoded, wird es mögich, diese Aufgabe zu automatisieren, verteilen mit dvd::rip. http://www.linux-user.de/ausgabe/2002/05/047-dvd-cluster/dvd-cluster.html . Aber Clustern im eigentlichen Sinn zu sagen, ist Ansichtssache.
Dazu muss man aber zuerst transcode in die CD Image Datei remastern (siehe "Mehr Programme"). Dabei müssen auch die nfs mount ergänzt werden im clusterKnoppix Image (fstab wird von einem Script erstellt!) und allenfalls nochmals ein ssh-schlüssel paar für dvdrip. Mplayer & video-dvdrip & transcode kriegt man unter andern von:
/etc/apt/sources.list, ein Auszug aus dieser Datei
#nicht mehr hier: deb http://marillat.free.fr/ unstable main #nicht mehr hier: deb-src http://perso.wanadoo.fr/debian/ unstable main deb ftp://ftp.nerim.net/debian-marillat/ unstable main
oder durch suche auf http://apt-get.org, weiter Informationen zu apt
Verwandte Links
Ein Netbsd cluster, bitsplit für mpeg, Zeitanzeige als Untertitel mit ImageMagick einfügen.
http://www.feyrer.de/marathon-cluster/
Die Vorbereitung zur WDR Computer Nacht, oder wo TCP/IP cluster enden.
http://www.linux-magazin.de/Artikel/ausgabe/1999/02/Cluster/cluster.html
Viel Spass