
Spisu treści:
- Krok 1: Obejrzyj wersję wideo
- Krok 2: Czego będziesz potrzebować
- Krok 3: Instalacja i konfiguracja Raspbian
- Krok 4: Instalowanie MPICH
- Krok 5: Instalacja MPI4PY
- Krok 6: Kopiowanie obrazu
- Krok 7: Konfiguracja pozostałych Raspberry Pi
- Krok 8: Weryfikacja kluczy hosta
- Krok 9: Uruchamianie programu na superkomputerze
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-23 15:03

Samo Raspberry Pi nie może pochwalić się imponującymi specyfikacjami. Ale przy tak niskiej cenie, kupując kilka z nich i łącząc je w celu wykorzystania ich połączonej mocy obliczeniowej, może potencjalnie stworzyć przyzwoity, tani komputer. Zbudowano kilka imponujących platform łączących ze sobą dziesiątki Pi. W tej instrukcji przyjrzyjmy się, jak technologia stojąca za przetwarzaniem klastrowym i stwórzmy własne Bramble Pi!
Krok 1: Obejrzyj wersję wideo


Zrobiłem również dwuczęściową wersję wideo tego samego projektu. Więc jeśli nie lubisz czytać, odpręż się i obejrzyj filmy! Należy pamiętać, że wersja wideo wykorzystuje Raspbian Wheezy. Jednak poniższe instrukcje dotyczą aktualnej dystrybucji Raspbian, czyli Jessie w momencie, gdy to piszę.
Krok 2: Czego będziesz potrzebować
Aby śledzić ten projekt, oto części, które musisz nabyć
Oto, czego będziesz potrzebować:
- 2 lub więcej Raspberry Pi
- Karty SD dla każdego Pi
- Kable zasilające dla każdego Pi
- Zasilany koncentrator USB (opcjonalny)
- Kable sieciowe
- Koncentrator lub router
CAŁKOWITY KOSZT: ~100,00$
Krok 3: Instalacja i konfiguracja Raspbian


Gdy masz już wszystkie części, następnym krokiem jest pobranie i skonfigurowanie Raspbian OS na jednym z Raspberry Pi. To będzie twój mistrz Pi. Oto kroki:
- Pobierz obraz Raspbian stąd.
-
Nagraj obraz Raspbian na każdą kartę SD, którą masz dla każdego Raspberry Pi.
- Jeśli masz system Windows, możesz postępować zgodnie z tymi instrukcjami.
- Jeśli masz komputer Mac, możesz postępować zgodnie z tymi instrukcjami.
- Po wypaleniu obrazu na karcie SD włóż go do każdego Raspberry Pi i uruchom go.
-
Po pierwszym uruchomieniu powinieneś zobaczyć pulpit Rasbperry Pi. Kliknij ikonę menu w lewym górnym rogu i przejdź do Preferencje > Konfiguracja Raspberry Pi. Oto opcje, które musimy skonfigurować
- W razie potrzeby rozwiń system plików.
- Zmień nazwę hosta na Pi01
- Zmień opcję rozruchu na CLI (interfejs wiersza poleceń), ponieważ tak naprawdę nie będziemy używać interfejsu pulpitu.
- Zegar na karcie „Interfejsy” i upewnij się, że SSH jest włączone.
- Kliknij zakładkę „Przetaktowanie” i wybierz „Turbo”.
- Zmień pamięć GPU na 16 MB.
- Kliknij kartę „Lokalizacja” i dostosuj układ klawiatury do swojego kraju.
- Zakończ konfigurację i zrestartuj swoje Pi.
Krok 4: Instalowanie MPICH




Nadal używając tylko jednego Pi jako głównego, musimy teraz zainstalować podstawowe oprogramowanie, które pozwoli nam wykorzystać moc przetwarzania wszystkich Pi w naszej sieci. To oprogramowanie nazywa się MPICH, co jest interfejsem przekazywania wiadomości. Oto, co musisz zrobić, aby go zainstalować:
aktualizacja sudo apt-get
mkdir mpich2
cd ~/mpich2
wget
tar xfz mpich-3.1.tar.gz
sudo mkdir /home/rpimpi/
sudo mkdir /home/rpimppi/mpi-install
mkdir /home/pi/mpi-build
cd /home/pi/mpi-build
sudo apt-get zainstaluj gfortran
sudo /home/pi/mpich2/mpich-3.1/configure -prefix=/home/rpimpi/mpi-install
sudo zrobić
sudo dokonać instalacji
nano.bashrc
PATH=$PATH:/home/rpimpi/mpi-install/bin
ponowne uruchomienie sudo
mpiexec -n 1 nazwa hosta
Te polecenia pobiorą i zainstalują MPICH, a także dodadzą go jako ścieżkę do pliku rozruchowego BASHRC. Ostatnie polecenie uruchamia test, aby sprawdzić, czy działa. Jeśli ostatnia komenda zwraca „Pi01”, to wszystko zrobiłeś pomyślnie.
Krok 5: Instalacja MPI4PY



W obecnej sytuacji MPICH może uruchamiać programy w językach C i Fortran. Ale ponieważ Raspberry Pi ma wstępnie zainstalowane środowisko kodowania Python, najłatwiej byłoby zainstalować interpreter Python na MPI. Oto polecenia, aby to zrobić:
sudo aptitude zainstaluj python-dev
wget
tar -zxf mpi4py-1.3.1
cd mpi4py-1.3.1
python setup.py build
python setup.py zainstalować
eksportuj PYTHONPATH=/home/pi/mpi4py-1.3.1
mpiexec -n 5 python demo/helloworld.py
To ostatnie polecenie powinno zwrócić pięć odpowiedzi. Każdy z nich jest innym procesem na Pi01, uruchamiającym program Pythona „Hello World”, który właśnie stworzyliśmy.
Krok 6: Kopiowanie obrazu

Teraz, gdy pomyślnie skonfigurowaliśmy nasze główne Pi, musimy skopiować obraz karty SD tego Pi do wszystkich innych Pi. Oto, jak możesz to zrobić w systemie Windows:
- Wyjmij główną kartę SD z Pi i włóż ją do komputera.
- Korzystając z Win32DiskImager, użyj przycisku „Odczytaj”, aby zapisać zawartość karty SD na komputerze.
- Wyjmij główną kartę SD i włóż kartę SD dla jednego z pozostałych Pi. Następnie użyj opcji Win32DiskImager „Write”, aby zapisać obraz, który zapisaliśmy na nowej karcie SD.
- Powtarzaj krok 3, aż obraz wzorcowy zostanie zapisany na wszystkich kartach SD.
Krok 7: Konfiguracja pozostałych Raspberry Pi



Teraz, gdy mamy przygotowane wszystkie karty SD, włóż kartę Master SD z powrotem do Master Pi, podłącz ją do routera i uruchom ponownie. Następnie dla pozostałych Raspberry Pi włóż karty SD do wszystkich z nich, podłącz je do tego samego routera, co twój Master Pi, a następnie uruchom je wszystkie. Żadna z drugorzędnych Pi nie musi mieć klawiatur, myszy ani monitorów.
Gdy wszystkie Pi są włączone, używając naszego Master Pi, powinniśmy być w stanie uzyskać adresy IP każdego Pi w sieci. Oto jak:
-
Pierwsza instalacja NMAP
aktualizacja sudo apt-get
sudo apt-get zainstaluj nmap
-
Następnie uzyskaj aktualny adres IP dla głównego Pi
ifconfig
-
Teraz możesz przeskanować podsieć routerów w poszukiwaniu innych adresów IP Pi
sudo nmap -sn 192.168.1.*
Skopiuj wszystkie adresy IP, które odnoszą się do innych Raspberry Pi w sieci. Będziemy wtedy mogli użyć tych adresów IP, aby połączyć się z każdym innym Pi za pomocą SSH. To, co musimy najpierw zrobić, to zmienić nazwę każdego z drugorzędnych Pi na unikalną nazwę sieci. W tej chwili wszystkie są ustawione na Pi01. Zakładając, że jeden z dodatkowych adresów IP Pi to 192.168.0.3, oto jak możesz się z nim połączyć i zmienić jego nazwę:
-
Nawiąż połączenie SSH
-
Uruchom raspi-config
sudo raspi-config
- W interfejsie przewiń w dół do opcji Zaawansowane, a następnie wybierz Nazwa hosta.
- Jako nazwę hosta zmień Pi01 na następny numer sekwencyjny, którym jest Pi02.
-
Następnie wyjdź z sesji SSH
Wyjście
Chcesz powtórzyć te kroki dla każdego z pozostałych Pi w sieci, zmieniając ich nazwy na Pi03, Pi04 itp.
Na swoim głównym Pi chcesz utworzyć nowy plik tekstowy o nazwie „plik maszynowy”
plik maszyny nano
W nim chcesz wpisać każdy z adresów IP Pi (w tym główny adres IP) w nowej linii, a następnie zapisać plik.
W tym momencie możemy uruchomić plik testowy za pomocą
mpiexec -f plik_maszynowy -n 4 nazwa hosta
ale wyświetli błąd, informując, że wystąpił „niepowodzenie weryfikacji klucza hosta”. Więc w następnym kroku naprawmy to.
Krok 8: Weryfikacja kluczy hosta



Aby to naprawić, aby komunikacja z każdym Pi nie powodowała niepowodzenia weryfikacji klucza hosta, musimy utworzyć i zamienić klucze dla każdego z naszych Raspberry Pi. Ta część może się nieco skomplikować, ale mam nadzieję, że zostaniesz ze mną.
-
Na Master Pi, w domyślnym folderze domowym, utwórz nowy klucz.
cd~
ssh-keygen
-
Przejdź do folderu ssh i skopiuj plik klucza do nowego pliku o nazwie „pi01”
cd.ssh
cp id_rsa.pub pi01
-
Następnie chcesz połączyć się przez SSH z Pi02 i powtórzyć te same kroki, aby utworzyć plik klucza Pi02
ssh-keygen
cd.ssh
cp id_rsa.pub pi02
-
Przed wyjściem z Pi02 musimy skopiować do niego plik klucza Pi01 i autoryzować go.
scp 192.168.1.2:/home/pi/.ssh/pi01.
kot pi01 >> autoryzowane_klucze
Wyjście
-
Po zakończeniu Pi02 powtórz wszystkie te kroki dla Pi03
ssh-keygen
cd.ssh
cp id_rsa.pub pi03
scp 192.168.1.2:/home/pi/.ssh/pi01.
kot pi01 >> autoryzowane_klucze
Wyjście
- Powtórz ostatni krok dla pozostałych Pi, które masz w swojej sieci.
-
Po wygenerowaniu kluczy dla każdego z Pi wróć do swojego Master Pi i skopiuj wszystkie klucze wygenerowane na każdym z Pi.
cp 192.168.1.3:/home/pi/.ssh/pi02
kot pi02 >> autoryzowane_klucze
cp 192.168.1.4:/home/pi/.ssh/pi03
kot pi03 >> autoryzowane_klucze
cp 192.168.1.5:/home/pi/.ssh/pi02
kot pi04 >> autoryzowane_klucze
- (powtórz dla tylu Pi w Twojej sieci)
Krok 9: Uruchamianie programu na superkomputerze



Teraz wszystko powinno być ustawione. Będąc nadal na swoim Master Pi, spróbuj ponownie uruchomić ten plik maszyny:
cd ~
mpiexec -f plik_maszynowy -n 4 nazwa hosta
Jeśli wszystko zostało zrobione poprawnie, powinien zwrócić adresy IP wszystkich Raspberry Pi. Teraz, gdy pomyślnie przetestowaliśmy nasz superkomputer, uruchommy na nim program Pythona:
-
Pobierz i rozpakuj mój testowy skrypt łamania haseł w Pythonie.
wget
tar -zxf python_test.tar.gz
-
Zmień skrót hasła na taki, który chcesz złamać.
nano python_test/md5_attack.py
-
Skopiuj plik Pythona do wszystkich swoich Pi.
scp -r python_test 192.168.1.3:/home/pi
scp -r python_test 192.168.1.4:/home/pi
scp -r python_test 192.168.1.5:/home/pi
- (powtórz dla wszystkich pozostałych Pi)
-
Uruchom skrypt Pythona.
mpiexec -f plik_maszynowy -n 5 python python_test/md5_attack.py
Skrypt będzie działał z wykorzystaniem mocy obliczeniowej wszystkich Pi w Twojej sieci! Przetestuj go za pomocą własnego skryptu Pythona!


III nagroda w konkursie Raspberry Pi 2016
Zalecana:
Jak zrobić bezprzewodowy telefon blaszany! (Arduino Walkie Talkie): 7 kroków (ze zdjęciami)

Jak zrobić bezprzewodowy telefon blaszany! (Arduino Walkie Talkie): Niedawno byłem w trakcie bardzo ważnej rozmowy telefonicznej, kiedy mój telefon bananowy przestał działać! Byłem tak sfrustrowany. To ostatni raz, kiedy przegapiłem połączenie z powodu tego głupiego telefonu! (Z perspektywy czasu mogłem być trochę zbyt zły w
Dowiedz się, jak zrobić przenośny monitor zasilany bateryjnie, który może również zasilać Raspberry Pi: 8 kroków (ze zdjęciami)

Dowiedz się, jak zrobić przenośny monitor zasilany bateryjnie, który może również zasilać Raspberry Pi: Czy kiedykolwiek chciałeś kodować pythona lub mieć wyjście wyświetlacza dla robota Raspberry Pi, w podróży lub potrzebujesz przenośnego dodatkowego wyświetlacza do laptopa czy aparat? W tym projekcie będziemy konstruować przenośny monitor zasilany bateryjnie i
JAK ZROBIĆ ARDUINO NANO/MINI - Jak nagrać bootloader: 5 kroków

JAK ZROBIĆ ARDUINO NANO/MINI | Jak nagrać bootloader: W tej instrukcji pokażę Ci, jak zrobić Arduino MINI od podstaw.Procedura napisana w tej instrukcji może być wykorzystana do wykonania dowolnych płyt arduino zgodnie z niestandardowymi wymaganiami projektu.Obejrzyj film, aby lepiej zrozumieć
Jak zrobić kalendarz dziadków & Notatnik (nawet jeśli nie wiesz, jak to zrobić): 8 kroków (ze zdjęciami)

Jak zrobić kalendarz dziadków & Notatnik (nawet jeśli nie wiesz jak to zrobić): To bardzo ekonomiczny (i bardzo ceniony!) prezent świąteczny dla dziadków. W tym roku zrobiłem 5 kalendarzy za mniej niż 7 USD każdy.Materiały:12 wspaniałych zdjęć Twojego dziecka, dzieci, siostrzenic, siostrzeńców, psów, kotów lub innych krewnych 12 różnych elementów
PRZECZYTAJ MNIE NAJPIERW: Jak skonfigurować superkomputer Ultimate Mac Mini: 6 kroków

PRZECZYTAJ MNIE NAJPIERW: Jak skonfigurować superkomputer Ultimate Mac Mini: Mac mini to w zasadzie laptop bez ekranu i bez klawiatury ani myszy. Pomyślałbyś sobie, kto do cholery użyje tej rzeczy? Jednak ten komputer zużywa mniej energii elektrycznej niż większość żarówek, działa doskonale, a