Da mein Vserver eigentlich nur am idlen war, habe ich mal boinc darauf installiert und lasse ihn jetzt an Malariacontrol mitrechnen.
Wie man BIONC auf einem Server installiert, könnt ihr nun erfahren.
Die Installation von Boinc
Zunächst müsst ihr boinc installieren. Das klappt meistens über den Paketmanager:
sudo apt-get install boinc
Danach legen wir in unserem Homeverzeichnis einen Ordner für Boinc ein:
mkdir ~/boinc
Wir starten dann BOINC als Daemon im Hintergrund:
boinc --daemon --dir ~/boinc
Nutzung
Wir können nun über boinccmd mit dem Daemon kommunizieren und Kommandos erteilen. Dazu brauchen wir jedoch ein Passwort, welches wir in der Datei gui_rpc_auth.cfg finden:
cat ~/boinc/gui_rpc_auth.cfg
Die Basis des Befehls sieht dann so aus:
boinccmd --host localhost --passwd $(< ~/boinc/gui_rpc_auth.cfg) [COMMAND]
Wir lesen das Passwort einfach aus der Datei aus und nutzen es zum Login.
Möchten wir uns nun bei einem Projekt anmelden, dann benötigen wir die Projekturl des Projekts. In meinem Beispiel ist das http://www.malariacontrol.net/. Dann können wir einen Account erstellen:
boinccmd --host localhost --passwd $(< ~/boinc/gui_rpc_auth.cfg) --create_account http://www.malariacontrol.net/ my@email.de mypasswd myusername
Wobei ihr die drei letzten Parameter entsprechend bearbeiten müsst. Ihr bekommt daraufhin einen AcccessKey zum Projekt. Diesen solltet ihr zumindest bis zum nächsten Befehl behalten.
Wir melden uns beim Projekt an:
boinccmd --host localhost --passwd $(< ~/boinc/gui_rpc_auth.cfg) --project_attach http://www.malariacontrol.net/ ACCESSKEY
Nun können wir endlich Gas geben:
boinccmd --host localhost --passwd $(< ~/boinc/gui_rpc_auth.cfg) --project http://www.malariacontrol.net/ resume
Daraufhin sollte der Server die entsprechenden Dateien herunterladen und anfangen diese zu berechnen. Das sieht man auch schön, wenn man htop bzw. top ausführt.
Wenn ihr beobachten wollt, wie der Server rechnet, dann könnt ihr euch die Tasks ausgeben lassen. Ein less ist dazu recht nützlich:
boinccmd --host localhost --passwd $(< ~/boinc/gui_rpc_auth.cfg) --get_tasks | less
Ihr könnt aber auch direkt den Projektstatus abrufen (Hier kann es etwas dauern, bis Informationen erscheinen):
boinccmd --host localhost --passwd $(< ~/boinc/gui_rpc_auth.cfg) --get_project_status
Möchtet ihr euch anzeigen lassen, wie viele WorkUnits der Server insgesamt fertig abgeschlossen hat, dann nutzt diesen Einzeiler:
boinccmd --host localhost --passwd $(< ~/boinc/gui_rpc_auth.cfg) --get_tasks | grep 'final CPU time:'| grep -v '0.00' | wc -l
Weitere Informationen bzw. Bedienungsmöglichkeiten könnt ihr per help herausfinden:
boinccmd --help
boinc --help
Performance meines VServers
Ich habe einen Vserver Light der 2. Klasse bei Netcup.de, und mir wurde folgende Leistung zugesichert:
- 2GhZ CPU Leistung
- 1-2Gig RAM
- 80 GB HDD
- unlimited Traffic
Für einen Preis von 5€ (ohne MwST) im Monat finde ist das recht akzeptabel.
Es laufen dort 5 BOINC-Prozesse und die WUs werden im Schnitt zwischen 5.000 und 9.000 CPU-Sekunden berechnet.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
|
Umgerechnet sollte jeder BOINC-Prozess in 3 Stunden eine WU fertig rechnen. Das sind dann 8 Stück pro Tag. Multipliziert mit den 5 Prozessen wären wir dann bei 40 WU die mein Vserver täglich dem Projekt beisteuert.
Ich finde es besser ein Projekt zu unterstützen, als den Server einfach idlen zu lassen :)
Gruß
gehaxelt