Einführung
SETI@home ist ein großes freiwilliges verteiltes Computerprojekt, bei dem auf Teilnehmersystemen ausgeführte Software zur Analyse von Radiodaten des Weltraumteleskops verwendet wird, um Signale oder Anzeichen eines intelligenten Lebens zu identifizieren. SETI @ home verwendet die als BOINC bekannte Software, die auf vielen Plattformen einschließlich Linux verfügbar ist.
BOINC hat eine grafische Anwendung, funktioniert aber auch über die Kommandozeile. Dies macht es sehr einfach, SETI @ home auf einem Droplet oder einem anderen kopflosen Server auszuführen. SETI @ home benötigt nur sehr wenig Festplattenspeicher - normalerweise sind 100 MB ausreichend - kann jedoch so viel CPU verbrauchen, wie es angegeben ist.
Voraussetzungen
-
Ein Ubuntu 14.04 oder Debian 7 Droplet, egal welcher Größe.
-
Ein sudo-Benutzer ohne Rootberechtigung. Sie können den ersten vier Schritten von this tutorial für die Einrichtung unter Ubuntu und https: // www folgen .digitalocean.com / community / tutorials / initial-server-setup-with-debian-7 [dieses Tutorial] für Debian.
Erster Schritt - Installieren Sie den boinc-client
SETI @ home funktioniert über den BOINC-Client, der in den Standard-Debian- und Ubuntu-Repositories verfügbar ist.
sudo apt-get install boinc-client
Schritt Zwei - Stellen Sie eine Verbindung zu einem SETI @ home-Konto her
Mit SETI @ home erhalten Sie eine SETI-Gutschrift für abgeschlossene Arbeiten. Um diesen Host mit einem SETI @ home-Konto zu verbinden und Guthaben zu erhalten, wird ein Kontoschlüssel benötigt.
Zuerst create a SETI @ home account oder melden Sie sich bei Ihrem vorhandenen SETI@home an Konto. Einmal drinnen, klicken Sie auf * Anzeigen * neben * Kontoschlüssel *.
Bild: https://assets.digitalocean.com/articles/seti@home_ubuntu/1.png [Kontoschlüssel]
Sie sehen Ihren SETI @ home-Kontoschlüssel oben auf der nächsten Seite. Führen Sie den folgenden Befehl mit Ihrem Kontoschlüssel aus:
boinccmd --project_attach http://setiathome.berkeley.edu
Zu diesem Zeitpunkt beginnt boinc mit den Standardwerten zu brechen.
Beenden Sie vorerst den Boinc-Client-Dienst, damit die CPU-Nutzungseinstellungen festgelegt werden können.
sudo service boinc-client stop
Schritt 3 - Konfigurieren Sie die Benutzervorgaben für die Host-CPU
Standardmäßig verwendet der BOINC-Client 100% der verfügbaren CPU. In diesem Schritt konfigurieren wir den Host so, dass er weniger CPU benötigt.
-
Hinweis *: In einer Cloud-Hosting-Umgebung müssen Sie die CPU-Auslastung von 100% senken, um eine übermäßige Auslastung zu vermeiden, die benachbarte Droplets beeinträchtigen kann.
Lokale Hosteinstellungen werden in der Datei + / var / lib / boinc client / global_prefs_override.xml +
festgelegt, die anfangs leer sein wird. Im Folgenden finden Sie eine Beispieldatei für dieses Handbuch, die die empfohlene Konfiguration für ein Droplet darstellt.
Bearbeiten Sie die Datei "+ / var / lib / boinc-client / global prefs override.xml".
sudo nano /var/lib/boinc-client/global_prefs_override.xml
Sie werden einen vorhandenen Text sehen, der so aussieht:
<global_preferences>
</global_preferences>
Löschen Sie das und fügen Sie es in diese Beispieldatei ein.
<global_preferences>
<run_on_batteries>0</run_on_batteries>
<run_if_user_active>1</run_if_user_active>
<run_gpu_if_user_active>0</run_gpu_if_user_active>
<start_hour>0.000000</start_hour>
<end_hour>0.000000</end_hour>
<net_start_hour>0.000000</net_start_hour>
<net_end_hour>0.000000</net_end_hour>
<leave_apps_in_memory>0</leave_apps_in_memory>
<confirm_before_connecting>1</confirm_before_connecting>
<hangup_if_dialed>0</hangup_if_dialed>
<dont_verify_images>0</dont_verify_images>
<work_buf_min_days>0.100000</work_buf_min_days>
<work_buf_additional_days>0.500000</work_buf_additional_days>
<max_ncpus_pct>100.000000</max_ncpus_pct>
<cpu_scheduling_period_minutes>60.000000</cpu_scheduling_period_minutes>
<disk_interval>60.000000</disk_interval>
<disk_max_used_gb>10.000000</disk_max_used_gb>
<disk_max_used_pct>90.000000</disk_max_used_pct>
<disk_min_free_gb>1.500000</disk_min_free_gb>
<vm_max_used_pct>75.000000</vm_max_used_pct>
<ram_max_used_busy_pct>50.000000</ram_max_used_busy_pct>
<ram_max_used_idle_pct>90.000000</ram_max_used_idle_pct>
<max_bytes_sec_up>0.000000</max_bytes_sec_up>
<max_bytes_sec_down>0.000000</max_bytes_sec_down>
<daily_xfer_limit_mb>0.000000</daily_xfer_limit_mb>
<daily_xfer_period_days>0</daily_xfer_period_days>
</global_preferences>
Als nächstes werden wir zwei Einstellungen in dieser Beispieldatei in Bezug auf die CPU untersuchen, die oben hervorgehoben sind.
Die erste Einstellung ist + cpu_usage_limit +
, mit der die von SETI @ home verwendete CPU-Kapazität begrenzt wird. Die Beispieldatei verwendet eine Einstellung von 25.000000, was bedeutet, dass die CPU-Auslastung auf maximal 25% begrenzt ist. 25.000000 ist eine gute Einstellung, wenn Ihr Gerät für eine andere Aufgabe oder einen anderen Service vorgesehen ist, jedoch weiterhin ein Beitrag zu SETI @ home gewünscht wird.
Die zweite Einstellung ist "+ suspend_cpu_usage +", mit der SETI @ home vorübergehend für den Betrieb gesperrt wird, wenn die CPU-Auslastung durch eine andere Anwendung diese Stufe erreicht. In der Beispieldatei ist suspendcpuusage auf 50.000000 oder 50% festgelegt.
Weitere Informationen zu den BOINC-Einstellungen finden Sie unter on their wiki.
Starten Sie nach dem Speichern und Schließen der Datei den boinc-client. Dadurch kann SETI @ home mit der Arbeit beginnen.
sudo service boinc-client start
Schritt 4 - Überprüfen Sie den neu hinzugefügten Host
Nach ungefähr fünf Minuten sollte der neue Host online angezeigt werden. Verbundene Computer können auf der SETI@home account page angezeigt werden.
image: https://assets.digitalocean.com/articles/seti@home_ubuntu/2.png [Verbundene Computer]
Fünfter Schritt - Überprüfen Sie den Status der Arbeitseinheiten
Verwenden Sie den folgenden Befehl, um den Status von Arbeitseinheiten oder Aufgaben anzuzeigen:
boinccmd --get_simple_gui_info
Beachten Sie, dass hier Ihre allgemeinen SETI @ home-Kontoinformationen angezeigt werden, gefolgt von den aktuell auf diesem bestimmten Host ausgeführten Aufgaben.
Unten finden Sie eine Beispielausgabe für –getsimplegui_info:
boinccmd --get_simple_gui_info
======== Projects ========
1) -----------
name: SETI@home
master URL: http://setiathome.berkeley.edu/
user_name: stmiller
team_name: SETI.USA
resource share: 100.000000
user_total_credit: 33159.675770
user_expavg_credit: 1409.252845
host_total_credit: 0.000000
host_expavg_credit: 0.000000
nrpc_failures: 0
master_fetch_failures: 0
master fetch pending: no
scheduler RPC pending: no
trickle upload pending: no
attached via Account Manager: no
ended: no
suspended via GUI: no
don't request more work: no
disk usage: 0.000000
last RPC: 1423684749.199424
project files downloaded: 0.000000
GUI URL:
name: Message boards
description: Correspond with other users on the SETI@home message boards
URL: http://setiathome.berkeley.edu/forum_index.php
GUI URL:
name: Help
description: Ask questions and report problems
URL: http://setiathome.berkeley.edu/forum_help_desk.php
GUI URL:
name: Your account
description: View your account information
URL: http://setiathome.berkeley.edu/home.php
GUI URL:
name: Your preferences
description: View and modify your computing preferences
URL: http://setiathome.berkeley.edu/prefs.php?subset=global
GUI URL:
name: Your results
description: View your last week (or more) of computational results and work
URL: http://setiathome.berkeley.edu/results.php?userid=9351194
GUI URL:
name: Your computers
description: View a listing of all the computers on which you are running SETI@Home
URL: http://setiathome.berkeley.edu/hosts_user.php?userid=9351194
GUI URL:
name: Your team
description: View information about your team: SETI.USA
URL: http://setiathome.berkeley.edu/team_display.php?teamid=115396
GUI URL:
name: Donate
description: Donate to SETI@home
URL: http://setiathome.berkeley.edu/sah_donate.php
======== Tasks ========
1) -----------
name: 25fe12ab.24545.17667.438086664204.12.226_0
WU name: 25fe12ab.24545.17667.438086664204.12.226
project URL: http://setiathome.berkeley.edu/
report deadline: Wed Mar 4 02:06:18 2015
ready to report: no
got server ack: no
final CPU time: 0.000000
state: downloaded
scheduler state: scheduled
exit_status: 0
signal: 0
suspended via GUI: no
active_task_state: EXECUTING
app version num: 701
checkpoint CPU time: 352.733700
current CPU time: 378.866400
fraction done: 0.088431
swap size: 110309376.000000
working set size: 40030207.999996
estimated CPU time remaining: 2505.901220
Der Status des SETI @ home-Guthabens kann auch auf Ihrer account page unter * Computing and credit * eingesehen werden.
Fazit
Das SETI@home forum ist der beste Ort für Neuigkeiten und Fragen zum Ausführen von SETI @ home.
Um einem Team beizutreten, besuchen Sie die team page!