Klient BOINC w systemie Centos 6

Mój atomowy serwerek z uszkodzonego netbooka chodzi non stop, pełni wiele funkcji, a mimo to średni load oscyluje w bardzo bliskich okolicach zera. Jego niewielka moc obliczeniowa się marnuje… a szkoda, bo prąd i tak pobiera. Jak wykorzystać ją w przydatny sposób? Można uruchomić na nim klienta BOINC i wspierać jednen z wielu projektów przetwarzania rozproszonego. Pewnie uśmiechniesz się myśląc, co wątły atom z 1GB pamięci RAM może zmienić… jeśli będzie chodził non stop przez rok, dwa a nawet dłużej, to mimo wszystko trochę obliczeń wykona – mój sererek w chwili obecnej mieli dane dla projektu rosetta@home.

Jak zainstalować klienta BOINC na systemie Centos 6

Instalujemy za pomocą skryptu dostępnego pod adresem


http://boinc.berkeley.edu/download_all.php

instalujemy przez systemowego menedżera pakietów, lub ściągamy najnowsze źródła z repozytorium (trzeba mieć zainstalowane subversion):

svn co http://boinc.berkeley.edu/svn/trunk/boinc

W nowo powstałym katalogu BOINC uruchamiamy kolejno skrypty:

./_autosetup
./configure --disable-server --disable-manager
./make
./make install

Ponieważ potrzebuję jedynie clienta BOINC przy konfiguracji zrezygnowałem z aplikacji serwera jak i okienkowego menedżera BOINC. W którymś z powyższych punktów pewnie zostaniesz poinformowany o konieczności doinstalowania kolejnych pakietów niezbędnych do działania programu. Ja musiałem do instalować: libtool, perl-FCGI, libcurl-devel.

Jak przyłączyć się do projektu BOINC (na przykładzie rosetta@home)

Jeśli korzystamy z środowiska okienkowego to sprawa jest bardzo uproszczona – uruchamiamy boincmgr, boinc_mgr lub run_manager (zależnie od metody instalacji i naszej dystrybucji) i wyklikujemy wszystko – żadna filozofia. W przypadku korzystania z konsoli musimy wykonać następującą komendę:

boinccmd --create_account http://boinc.bakerlab.org/rosetta/ email haslo nazwa uzytkownika

Jeśli mamy kilka maszyn, i chcielibyśmy podpiąć je pod nasze konto to całą czynność wyklikujemy w menedżerze lub po raz kolejny korzystamy z aplikacji boinccmd. W przypadku pracy bez menedżera okien odczytujemy klucz:

boinccmd --lookup_account http://boinc.bakerlab.org/rosetta/ email haslo

zapamiętujemy klucz, oraz wpisujemy komendę:

boinc --attach_project http://boinc.bakerlab.org/rosetta/ klucz

Instalacja przebiegła bez większych utrudnień, ale…

BOINC nie chce działać mimo bezbłędnej instalacji

Poświęcę trochę czasu na opisanie najważniejszych problemów jakie spotkałem uruchamiając BOINCa – mimo poprawnej instalacji nie chciał rozpocząć pracy (nawiązać połączenia ze światem). Okazało się, że gdzieś po drodze (pewnie w serwerowniach TPSA) musiał być tak zwany black hole router. Jeśli mimo poprawnej instalacji nie możesz dołączyć do projektu, czy pobierać danych polecam dodać tag

< http_1_0 > 1 < /http_1_0 >

do pliku cc_config.xml, lub jeśli go nie ma w Twoim systemie (skorzystaj z polecenia locate cc_config.xml) stworzyć nowy w katalogu z xml’ami powstałymi przy pierwszym uruchmomieniu BOINCa (pewnie będzie to katalog powstały po pobraniu źródeł z subversion):

< cc_config >
< options >
< http_1_0 > 1 < /http_1_0 >
< /options >
< /cc_config >

Teraz wystarczy przeładować BOINC:

/etc/init.d/boinc-client force-reload

i upewnić się, że nowe ustawienia zostały ponownie wczytane i zaktualizować projekt:

boinccmd --read_cc_config
boinccmd --project http://boinc.bakerlab.org/rosetta/ update

po chwili w tle powinien działać proces minirosetta_3.1 (tak było u mnie). Ponieważ boinc działa na serwerze wielu innych usług nie chcę aby cała reszta muliła – nawet nie muszę się przejmować, gdyż z automatu proces mielący dane ma ustawiony najniższy priorytet.

Ze względu na fakt, iż na moim serwerku z uszkodzonego netbooka wszystko ładnie działa, postanowiłem zainstalować klienta BOINC także na domowych desktopach (a na nich fedora i ubuntu). Instalacja przebiegła sprawnie, ale podczas próby uruchamiania graficznego menedżera wystąpił…

Błąd autoryzacji BOINC

…tak jak to zwykle bywa, problem ma bardzo proste rozwiazanie – w folderze BOINC tworzymy plik known_hosts.cfg z jednym wierszem zawierającym adres IP maszyny na której próbujemy uruchomić menedżera. Proste, nieprawdaż?

Zachęcam do udziału w projektach przetwarzania rozproszonego takich jak World Community Grid czy Rosetta – przyłączając się do projektu pomożesz w obliczeniach związanych z badaniami nad przewidywaniem struktury białek, co pomaga w opracowywaniu metod zwalczania wielu popularnych chorób (nowotwory złośliwe, malaria, hiv, alzheimer, wąglik oraz inne wirusy).

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

*

Możesz użyć następujących tagów oraz atrybutów HTML-a: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>