Da ich es auf meinem lokalen Rechner immer vergesse, und sich mein Server sowieso langweilt, habe ich eine XEN Maschine erstellt, die auf drei Kernen mit 2,6 GHz für verschiedene Projekte rechnet.
Meine Maschinen rechnen für die Projekte von worldcommunitygrid.org. Die Anleitung bezieht sich also speziell auf diese Plattform.
BOINC Einrichten (Projekt unabhängig)
BOINC ist der Client, der sich die Aufgaben vom Server abholt und dann rechnet. Der Client arbeitet als Service. Um diesen Service zu steuern, kann man sich über eine RPC-GUI mit dem Server verbinden.
Die größte Herausforderung war, die 32 Bit Anwendung auf einem 64 Bit System zu starten. (Das mag vielleicht auch an der Tageszeit liegen.
) Man muss das Paket ia32-libs installerien. Tut man dies nicht, wird Linux beim Ausführen von ./boinc melden, dass es diese Datei nicht gibt. Sehr verwirrende Meldung...
Natürlich sollte man BOINC mit einem separaten Linux Account laufen lassen:
groupadd -u <einegroupid> boinc
useradd -u <eineuserid> -g <diegroupid> -G boinc -d /home/boinc -m -s /bin/bash boinc
su boinc
cd /home/boinc
Danach kann BOINC "installiert" werden:
wget http://boinc.berkeley.edu/dl/boinc_<version>_i686-pc-linux-gnu.sh
chmod u+x boinc_<version>_i686-pc-linux-gnu.sh
./boinc_<version>_i686-pc-linux-gnu.sh
cd BOINC
Möchte man den Zugang via GUI zum BOINC Prozess gestatten, kann man nun in der Datei gui_rpc_auth.cfg ein beliebiges Kennwort festlegen. Später beim Startbefehl legt man dann fest, ob diese Funktion genutzt werden soll, oder nicht.
BOINC mit worldcommunitygrid.org starten
Beim ersten Start von BOINC muss das Projekt hinzugefügt werden. Den letzten Parameter im Befehl, den so genannten Account Key, findet man auf der Website worldcommunitygrid.org unter My Profile relativ weit unten.
./boinc -attach_project www.worldcommunitygrid.org 28f34sdgsdgsdwr324234324a914596
Starten nun erfolgreich die Prozesse, kann der Client mit Strg+C wieder gekillt werden. Danach wird BOINC mit folgendem Befehl als Service gestartet:
./boinc --allow_remote_gui_rpc --daemon
Der erste Parameter gibt dabei an, ob BOINC über eine GUI erreichbar sein soll, oder nicht. Aus Sicherheitsgründen ist in meinem Fall der komplette Server via iptables dicht gemacht.
Nun noch ein Startscript bauen damit BOINC beim Systemstart startet.
Thats it. 