Talaan ng mga Nilalaman:

Paano Gumawa ng isang Raspberry Pi SuperComputer !: 9 Mga Hakbang (na may Mga Larawan)
Paano Gumawa ng isang Raspberry Pi SuperComputer !: 9 Mga Hakbang (na may Mga Larawan)

Video: Paano Gumawa ng isang Raspberry Pi SuperComputer !: 9 Mga Hakbang (na may Mga Larawan)

Video: Paano Gumawa ng isang Raspberry Pi SuperComputer !: 9 Mga Hakbang (na may Mga Larawan)
Video: 10-ть самоделок для мастерской простыми инструментами. 2024, Hulyo
Anonim
Paano Gumawa ng isang Raspberry Pi SuperComputer!
Paano Gumawa ng isang Raspberry Pi SuperComputer!

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

Image
Image

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:

  1. 2 o higit pang mga Raspberry Pi's
  2. Mga SD card para sa bawat Pi
  3. Mga Power Cables para sa bawat Pi
  4. Pinapagana ang USB Hub (opsyonal)
  5. Mga Kable sa Networking
  6. Isang Hub o isang Router

TOTAL na Gastos: ~ $ 100.00

Hakbang 3: Pag-install at Pag-configure ng Raspbian

Pag-install at Pag-configure ng Raspbian
Pag-install at Pag-configure ng Raspbian
Pag-install at Pag-configure ng Raspbian
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:

  1. I-download ang Raspbian Image mula rito.
  2. Sunugin ang Raspbian na imahe sa bawat SD Card na mayroon ka para sa bawat Raspberry Pi.

    1. Kung mayroon kang Windows, maaari mong sundin ang mga tagubiling ito.
    2. Kung mayroon kang isang Mac, maaari mong sundin ang mga tagubiling ito.
  3. Kapag ang imahe ay nasunog sa iyong SD Card, ilagay ito sa bawat isa sa Raspberry Pi at i-boot ito.
  4. 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

    1. Palawakin ang File SystemKung kinakailangan.
    2. Palitan ang hostname sa Pi01
    3. Baguhin ang pagpipilian ng boot sa CLI (Command Line Interface), dahil hindi talaga namin gagamitin ang Desktop Interface.
    4. Clock sa tab na "Mga Interface" at tiyaking pinagana ang SSH.
    5. Mag-click sa tab na "Overclock" at piliin ang "Turbo".
    6. Palitan ang memorya ng GPU sa 16mb.
    7. Mag-click sa tab na "Lokalisasyon" at itakda ang iyong layout ng keyboard upang tumugma sa iyong mga bansa.
    8. Tapusin ang pagsasaayos, at i-reboot ang iyong Pi.

Hakbang 4: Pag-install ng MPICH

Pag-install ng MPICH
Pag-install ng MPICH
Pag-install ng MPICH
Pag-install ng MPICH
Pag-install ng MPICH
Pag-install ng MPICH
Pag-install ng MPICH
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

Pag-install ng MPI4PY
Pag-install ng MPI4PY
Pag-install ng MPI4PY
Pag-install ng MPI4PY
Pag-install ng MPI4PY
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

Pagkopya ng Larawan
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:

  1. Kunin ang master SD Card mula sa Pi at ipasok ito sa iyong computer.
  2. Gamit ang Win32DiskImager, gamitin ang pindutang "Basahin" upang mai-save ang mga nilalaman ng SD card sa iyong computer.
  3. 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.
  4. 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

Ang pag-configure ng Natitirang Raspberry Pi's
Ang pag-configure ng Natitirang Raspberry Pi's
Ang pag-configure ng Natitirang Raspberry Pi's
Ang pag-configure ng Natitirang Raspberry Pi's
Pag-configure ng Natitirang Raspberry Pi's
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:

  1. Unang I-install ang NMAP

    sudo apt-get update

    sudo apt-get install nmap

  2. Pagkatapos makuha ang kasalukuyang IP para sa master Pi

    ifconfig

  3. 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:

  1. Magtaguyod ng isang koneksyon sa SSH

    ssh [email protected]

  2. Patakbuhin ang raspi-config

    sudo raspi-config

  3. Sa interface, mag-scroll pababa sa advanced na pagpipilian, at pagkatapos ay piliin ang Hostname.
  4. Para sa hostname, baguhin ang Pi01 sa susunod na sunud-sunod na numero, na kung saan ay Pi02.
  5. 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

Pag-verify ng Mga Host Key
Pag-verify ng Mga Host Key
Pag-verify ng Mga Host Key
Pag-verify ng Mga Host Key
Pag-verify ng Mga Host Key
Pag-verify ng Mga Host Key

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.

  1. Sa Master Pi, sa default na home folder, lumikha ng isang bagong key.

    cd ~

    ssh-keygen

  2. 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

  3. Susunod na nais mong kumonekta sa pamamagitan ng SSH sa Pi02 at ulitin ang mga parehong hakbang upang lumikha ng isang Pi02 keyfile

    ssh [email protected]

    ssh-keygen

    cd.ssh

    cp id_rsa.pub pi02

  4. 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

  5. Sa Pi02 tapos na, ulitin ang lahat ng mga hakbang na iyon para sa Pi03

    ssh [email protected]

    ssh-keygen

    cd.ssh

    cp id_rsa.pub pi03

    scp 192.168.1.2:/home/pi/.ssh/pi01.

    cat pi01 >> awtorisadong_keys

    labasan

  6. Ulitin ang huling hakbang para sa natitirang Pi na mayroon ka sa iyong network.
  7. 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

  8. (ulitin para sa maraming Pi ay nasa iyong network)

Hakbang 9: Pagpapatakbo ng isang Programa sa Iyong Supercomputer

Pagpapatakbo ng isang Programa sa Iyong Supercomputer
Pagpapatakbo ng isang Programa sa Iyong Supercomputer
Pagpapatakbo ng isang Programa sa Iyong Supercomputer
Pagpapatakbo ng isang Programa sa Iyong Supercomputer
Pagpapatakbo ng isang Programa sa Iyong Supercomputer
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:

  1. I-download at i-unzip ang aking pagsubok na script ng pag-crack ng password ng Python.

    wget

    tar -zxf python_test.tar.gz

  2. I-edit ang password hash sa isa na nais mong i-crack.

    nano python_test / md5_attack.py

  3. 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

  4. (ulitin para sa lahat ng natitirang Pi's)
  5. 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!

Raspberry Pi Contest 2016
Raspberry Pi Contest 2016
Raspberry Pi Contest 2016
Raspberry Pi Contest 2016

Ikatlong Gantimpala sa Raspberry Pi Contest 2016

Inirerekumendang: