Talaan ng mga Nilalaman:
- Hakbang 1: Panoorin ang Bersyon ng Video
- Hakbang 2: Ano ang Kakailanganin Mo
- Hakbang 3: Pag-install at Pag-configure ng Raspbian
- Hakbang 4: Pag-install ng MPICH
- Hakbang 5: Pag-install ng MPI4PY
- Hakbang 6: Pagkopya ng Larawan
- Hakbang 7: Pag-configure ng Natitirang Raspberry Pi's
- Hakbang 8: Pag-verify sa Mga Susi ng Host
- Hakbang 9: Pagpapatakbo ng isang Programa sa Iyong Supercomputer
2025 May -akda: John Day | [email protected]. Huling binago: 2025-01-13 06:58
Sa pamamagitan nito mismo ang Raspberry Pi ay hindi nagmamalaki ng kahanga-hangang mga panoorin. Ngunit sa dumi na murang presyo, ang pagbili ng ilan sa mga ito at pagkonekta sa kanila upang magamit ang kanilang pinagsamang lakas sa pagpoproseso ay maaaring potensyal na makagawa ng isang disenteng mababang gastos sa computer. Mayroong maraming mga kamangha-manghang mga rigs na binuo ng pagkonekta sa dosenang mga Pi ni sama-sama. Kaya sa itinuturo na ito, tuklasin natin kung paano ang teknolohiya sa likod ng computing ng cluster at gumawa ng aming sariling Bramble Pi!
Hakbang 1: Panoorin ang Bersyon ng Video
Gumawa rin ako ng isang bahagi ng bersyon ng video ng eksaktong eksaktong proyekto na ito. Kaya't kung hindi ka isa para sa pagbabasa, bumalik at panoorin ang mga vids! Mangyaring tandaan na ang bersyon ng video ay gumagamit ng Raspbian Wheezy. Gayunpaman, ang mga tagubilin sa ibaba ay para sa kasalukuyang Raspbian Distro, na si Jessie sa oras na sinusulat ko ito.
Hakbang 2: Ano ang Kakailanganin Mo
Upang sundin kasama ang proyektong ito, narito ang mga bahagi na kakailanganin mong makuha
Narito ang kakailanganin mo:
- 2 o higit pang mga Raspberry Pi's
- Mga SD card para sa bawat Pi
- Mga Power Cables para sa bawat Pi
- Pinapagana ang USB Hub (opsyonal)
- Mga Kable sa Networking
- Isang Hub o isang Router
TOTAL na Gastos: ~ $ 100.00
Hakbang 3: Pag-install at Pag-configure ng Raspbian
Kapag mayroon ka ng lahat ng mga bahagi, ang susunod na hakbang ay upang i-download at i-configure ang Raspbian OS sa isa sa mga Raspberry Pi's. Ito ang iyong magiging master Pi. Narito ang mga hakbang:
- I-download ang Raspbian Image mula rito.
-
Sunugin ang Raspbian na imahe sa bawat SD Card na mayroon ka para sa bawat Raspberry Pi.
- Kung mayroon kang Windows, maaari mong sundin ang mga tagubiling ito.
- Kung mayroon kang isang Mac, maaari mong sundin ang mga tagubiling ito.
- Kapag ang imahe ay nasunog sa iyong SD Card, ilagay ito sa bawat isa sa Raspberry Pi at i-boot ito.
-
Sa unang boot, dapat mong makita ang Rasbperry Pi Desktop. Mag-click sa menu icon sa itaas na kaliwang sulok at pumunta sa Mga Kagustuhan> Pag-configure ng Raspberry Pi. Narito ang mga pagpipilian na kakailanganin naming i-configure
- Palawakin ang File SystemKung kinakailangan.
- Palitan ang hostname sa Pi01
- Baguhin ang pagpipilian ng boot sa CLI (Command Line Interface), dahil hindi talaga namin gagamitin ang Desktop Interface.
- Clock sa tab na "Mga Interface" at tiyaking pinagana ang SSH.
- Mag-click sa tab na "Overclock" at piliin ang "Turbo".
- Palitan ang memorya ng GPU sa 16mb.
- Mag-click sa tab na "Lokalisasyon" at itakda ang iyong layout ng keyboard upang tumugma sa iyong mga bansa.
- Tapusin ang pagsasaayos, at i-reboot ang iyong Pi.
Hakbang 4: Pag-install ng MPICH
Gumagamit pa rin lamang ng isang Pi bilang master, kailangan namin ngayong i-install ang pangunahing software na magpapahintulot sa amin na gamitin ang lakas ng pagproseso ng lahat ng mga Pi sa aming network. Ang software na iyon ay tinawag na MPICH, na isang Message Passing Interface. Narito kung ano ang kailangan mong gawin upang mai-install ito:
sudo apt-get update
mkdir mpich2
cd ~ / mpich2
wget
tar xfz mpich-3.1.tar.gz
sudo mkdir / home / rpimpi /
sudo mkdir / home / rpimpi / mpi-install
mkdir / home / pi / mpi-build
cd / home / pi / mpi-build
sudo apt-get install gfortran
sudo /home/pi/mpich2/mpich-3.1/configure -prefix = / home / rpimpi / mpi-install
sudo gumawa
sudo gumawa ng pag-install
nano.bashrc
PATH = $ PATH: / home / rpimpi / mpi-install / bin
sudo reboot
mpiexec -n 1 hostname
Ang mga utos na ito ay mag-download at mag-install ng MPICH, pati na rin idagdag ito bilang isang landas sa iyong BASHRC boot file. Ang huling utos ay nagpapatakbo ng isang pagsubok upang makita kung ito ay gumagana. Kung ang huling utos ay nagbabalik ng "Pi01", pagkatapos ay nagawa mong matagumpay ang lahat.
Hakbang 5: Pag-install ng MPI4PY
Tulad nito, ang MPICH ay maaaring magpatakbo ng mga programa ng C at Fortran. Ngunit dahil ang Raspberry Pi ay may paunang naka-install na kapaligiran sa pag-coding ng Python, magiging pinakamadaling mag-install ng isang Python sa MPI interpreter. Narito ang mga utos na gawin iyon:
sudo aptitude i-install ang python-dev
wget
tar -zxf mpi4py-1.3.1
cd mpi4py-1.3.1
python setup.py build
python setup.py install
i-export ang PYTHONPATH = / home / pi / mpi4py-1.3.1
mpiexec -n 5 python demo / helloworld.py
Ang huling utos na iyon ay dapat bumalik sa limang mga tugon. Ang bawat isa ay magkakaibang proseso sa Pi01 na nagpapatakbo ng python program na "Hello World" na aming ginawa.
Hakbang 6: Pagkopya ng Larawan
Ngayon na matagumpay naming na-configure ang aming master Pi, kailangan naming kopyahin ang imahe ng SD card ng Pi na iyon sa lahat ng iba pang Pi. Narito kung paano mo magagawa iyon sa Windows:
- Kunin ang master SD Card mula sa Pi at ipasok ito sa iyong computer.
- Gamit ang Win32DiskImager, gamitin ang pindutang "Basahin" upang mai-save ang mga nilalaman ng SD card sa iyong computer.
- Patalsikin ang master SD Card at ipasok ang isang SD card para sa isa sa iba pang Pi's. Pagkatapos gamitin ang pagpipiliang "Sumulat" ng Win32DiskImager upang isulat ang imaheng nai-save namin sa bagong SD Card.
- Ulitin ang hakbang 3 hanggang sa masulat ang master image sa lahat ng mga SD card.
Hakbang 7: Pag-configure ng Natitirang Raspberry Pi's
Ngayon na nakahanda na nating lahat ang mga SD Card, ipasok ang Master SD Card pabalik sa Master Pi, ikonekta ito sa isang router at i-boot ito muli. Pagkatapos para sa natitirang Raspberry Pi's, ipasok ang mga SD Card sa kanilang lahat, ikonekta ang mga ito sa parehong router tulad ng iyong Master Pi, at pagkatapos ay i-boot ang lahat. Wala sa pangalawang Pi ang kailangang magkaroon ng mga keyboard, daga, o monitor.
Kapag ang lahat ng Pi ay pinapagana, gamit ang aming Master Pi, dapat naming makuha ang mga IP address ng bawat Pi sa network. Narito kung paano:
-
Unang I-install ang NMAP
sudo apt-get update
sudo apt-get install nmap
-
Pagkatapos makuha ang kasalukuyang IP para sa master Pi
ifconfig
-
Ngayon ay maaari mong i-scan ang iyong mga router subnet para sa iba pang mga Pi IP address
sudo nmap -sn 192.168.1. *
Kopyahin ang lahat ng mga IP address na nauugnay sa iba pang mga Raspberry Pi sa network. Magagamit namin pagkatapos ang mga IP na iyon upang kumonekta sa bawat isa sa iba pang Pi gamit ang SSH. Ang kailangan muna nating gawin ay palitan ang pangalan ng bawat pangalawang Pi sa isang natatanging pangalan ng network. Sa ngayon nakatakda silang lahat sa Pi01. Ipagpalagay na ang isa sa mga pangalawang Pi address ng IP ay 192.168.0.3, narito kung paano ka makakonekta dito at baguhin ang pangalan nito:
-
Magtaguyod ng isang koneksyon sa SSH
-
Patakbuhin ang raspi-config
sudo raspi-config
- Sa interface, mag-scroll pababa sa advanced na pagpipilian, at pagkatapos ay piliin ang Hostname.
- Para sa hostname, baguhin ang Pi01 sa susunod na sunud-sunod na numero, na kung saan ay Pi02.
-
Pagkatapos ay lumabas sa sesyon ng SSH
labasan
Nais mong ulitin ang mga hakbang na iyon para sa bawat isa sa iba pang Pi sa network na pinalitan ang pangalan ng mga ito sa Pi03, Pi04, atbp.
Sa iyong master Pi, nais mong lumikha ng isang bagong textfile na tinatawag na "machinefile"
nano machinefile
At sa loob nito, nais mong i-type ang bawat isa sa mga IP address ng Pi (kasama ang Master IP address) sa isang bagong linya at pagkatapos ay i-save ang file.
Sa puntong ito, maaari kaming magpatakbo ng isang pagsubok na file gamit ang
mpiexec -f machinefile -n 4 hostname
ngunit ide-error nito ang pagsasabing mayroong isang "host key verification failed". Kaya sa susunod na hakbang, ayusin natin iyan.
Hakbang 8: Pag-verify sa Mga Susi ng Host
Upang ayusin ito upang ang pakikipag-usap sa bawat Pi ay hindi magreresulta sa isang pagkabigo sa key key ng pag-verify, kailangan naming lumikha at magpalit ng mga key para sa bawat isa sa aming Raspberry Pi's. Ang bahaging ito ay maaaring maging kumplikado, ngunit sana ay maaari kang manatili sa akin.
-
Sa Master Pi, sa default na home folder, lumikha ng isang bagong key.
cd ~
ssh-keygen
-
Mag-navigate sa ssh folder at kopyahin ang key file sa isang bagong file na tinatawag na "pi01"
cd.ssh
cp id_rsa.pub pi01
-
Susunod na nais mong kumonekta sa pamamagitan ng SSH sa Pi02 at ulitin ang mga parehong hakbang upang lumikha ng isang Pi02 keyfile
ssh-keygen
cd.ssh
cp id_rsa.pub pi02
-
Bago lumabas sa Pi02, kailangan naming kopyahin ang key key ng Pi01 dito at pahintulutan ito.
scp 192.168.1.2:/home/pi/.ssh/pi01.
cat pi01 >> awtorisadong_keys
labasan
-
Sa Pi02 tapos na, ulitin ang lahat ng mga hakbang na iyon para sa Pi03
ssh-keygen
cd.ssh
cp id_rsa.pub pi03
scp 192.168.1.2:/home/pi/.ssh/pi01.
cat pi01 >> awtorisadong_keys
labasan
- Ulitin ang huling hakbang para sa natitirang Pi na mayroon ka sa iyong network.
-
Matapos makabuo ng mga susi para sa bawat Pi, lumabas pabalik sa iyong Master Pi at kopyahin ang lahat ng mga key na nabuo sa bawat Pi.
cp 192.168.1.3:/home/pi/.ssh/pi02
cat pi02 >> pinahintulutan_keys
cp 192.168.1.4:/home/pi/.ssh/pi03
cat pi03 >> awtorisadong_keys
cp 192.168.1.5:/home/pi/.ssh/pi02
cat pi04 >> awtorisadong_keys
- (ulitin para sa maraming Pi ay nasa iyong network)
Hakbang 9: Pagpapatakbo ng isang Programa sa Iyong Supercomputer
Ngayon dapat na i-set up ang lahat. Habang nasa iyong Master Pi pa, subukang patakbuhin muli ang machinefile na ito:
cd ~
mpiexec -f machinefile -n 4 hostname
Kung nagawa ang lahat nang tama, dapat itong ibalik ang mga IP address ng lahat ng iyong Raspberry Pi's. Ngayon na matagumpay naming nasubukan ang aming supercomputer, pinapayagan itong magpatakbo ng isang programa ng sawa dito:
-
I-download at i-unzip ang aking pagsubok na script ng pag-crack ng password ng Python.
wget
tar -zxf python_test.tar.gz
-
I-edit ang password hash sa isa na nais mong i-crack.
nano python_test / md5_attack.py
-
Kopyahin ang Python file sa lahat ng iyong Pi's.
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
- (ulitin para sa lahat ng natitirang Pi's)
-
Patakbuhin ang script ng sawa.
mpiexec -f machinefile -n 5 python python_test / md5_attack.py
Tatakbo ang script gamit ang pagpoproseso ng lakas ng lahat ng mga Pi's sa iyong network! Huwag mag-atubiling subukan ito gamit ang iyong sariling script ng sawa!
Ikatlong Gantimpala sa Raspberry Pi Contest 2016