Innholdsfortegnelse:

Hvordan lage en Raspberry Pi SuperComputer !: 9 trinn (med bilder)
Hvordan lage en Raspberry Pi SuperComputer !: 9 trinn (med bilder)

Video: Hvordan lage en Raspberry Pi SuperComputer !: 9 trinn (med bilder)

Video: Hvordan lage en Raspberry Pi SuperComputer !: 9 trinn (med bilder)
Video: Моя работа наблюдать за лесом и здесь происходит что-то странное 2024, Juli
Anonim
Hvordan lage en Raspberry Pi SuperComputer!
Hvordan lage en Raspberry Pi SuperComputer!

I seg selv skryter ikke Raspberry Pi av imponerende spesifikasjoner. Men med den skitne prisen, kan du kjøpe en rimelig datamaskin hvis du kjøper flere av disse og kobler dem til bruk. Det har blitt bygget flere imponerende rigger som kobler sammen flere titalls Pi -er. Så i denne instruktive, la oss utforske hvordan teknologien bak cluster computing og lage vår egen Bramble Pi!

Trinn 1: Se videoversjonen

Image
Image

Jeg har også laget en todelt videoversjon av det samme prosjektet. Så hvis du ikke er en for å lese, kan du slappe av og se videoene! Vær oppmerksom på at videoversjonen bruker Raspbian Wheezy. Instruksjonene nedenfor er imidlertid for den nåværende Raspbian Distro, som er Jessie på det tidspunktet jeg skriver dette.

Trinn 2: Hva du trenger

For å følge med på dette prosjektet, her er delene du må skaffe

Her er hva du trenger:

  1. 2 eller flere Raspberry Pi
  2. SD -kort for hver Pi
  3. Strømkabler for hver Pi
  4. Drevet USB -hub (valgfritt)
  5. Nettverkskabler
  6. En hub eller en ruter

TOTAL KOSTNAD: ~ $ 100,00

Trinn 3: Installere og konfigurere Raspbian

Installere og konfigurere Raspbian
Installere og konfigurere Raspbian
Installere og konfigurere Raspbian
Installere og konfigurere Raspbian

Når du har alle delene, er neste trinn å laste ned og konfigurere Raspbian OS på en av Raspberry Pi. Dette blir din mester Pi. Her er trinnene:

  1. Last ned Raspbian -bildet herfra.
  2. Brenn Raspbian -bildet til hvert SD -kort du har for hver Raspberry Pi.

    1. Hvis du har Windows, kan du følge disse instruksjonene.
    2. Hvis du har en Mac, kan du følge disse instruksjonene.
  3. Når bildet er brent til SD -kortet ditt, legger du det i hver av Raspberry Pi og starter det opp.
  4. Ved første oppstart bør du se Rasbperry Pi Desktop. Klikk på menyikonet øverst til venstre og gå til Innstillinger> Raspberry Pi -konfigurasjon. Her er alternativene vi må konfigurere

    1. Utvid filsystemet Om nødvendig.
    2. Endre vertsnavnet til Pi01
    3. Endre oppstartsalternativet til CLI (Command Line Interface), siden vi egentlig ikke kommer til å bruke Desktop Interface.
    4. Klokk på kategorien "Grensesnitt" og kontroller at SSH er aktivert.
    5. Klikk på kategorien "Overklokke" og velg "Turbo".
    6. Endre GPU -minnet til 16 MB.
    7. Klikk på "Lokalisering" -fanen og angi tastaturoppsettet slik at det samsvarer med landene dine.
    8. Fullfør konfigurasjonen, og start Pi -en på nytt.

Trinn 4: Installere MPICH

Installerer MPICH
Installerer MPICH
Installerer MPICH
Installerer MPICH
Installerer MPICH
Installerer MPICH
Installerer MPICH
Installerer MPICH

Fremdeles bruker vi bare den ene Pi som master, må vi nå installere den primære programvaren som vil tillate oss å bruke prosessorkraften til alle Pi -ene på nettverket vårt. Denne programvaren kalles MPICH, som er et Message Passing Interface. Her er hva du trenger å gjøre for å installere det:

sudo apt-get oppdatering

mkdir mpich2

cd ~/mpich2

wget

tjære 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 lage

sudo gjør installering

nano.bashrc

PATH = $ PATH:/home/rpimpi/mpi-install/bin

sudo omstart

mpiexec -n 1 vertsnavn

Disse kommandoene vil laste ned og installere MPICH, samt legge den til som en bane til BASHRC -oppstartsfilen. Den siste kommandoen kjører en test for å se om den fungerer. Hvis den siste kommandoen returnerer "Pi01", gjorde du alt vellykket.

Trinn 5: Installere MPI4PY

Installerer MPI4PY
Installerer MPI4PY
Installerer MPI4PY
Installerer MPI4PY
Installere MPI4PY
Installere MPI4PY

Som det er, kan MPICH kjøre C- og Fortran -programmer. Men siden Raspberry Pi har Python-kodemiljøet forhåndsinstallert, ville det være enklest å installere en Python til MPI-tolk. Her er kommandoene for å gjøre det:

sudo aptitude installer python-dev

wget

tar -zxf mpi4py -1.3.1

cd mpi4py-1.3.1

python setup.py build

python setup.py installere

eksport PYTHONPATH =/home/pi/mpi4py-1.3.1

mpiexec -n 5 python demo/helloworld.py

Den siste kommandoen skal returnere fem svar. Hver og en er en annen prosess på Pi01 som kjører python -programmet "Hello World" som vi nettopp har laget.

Trinn 6: Kopiere bildet

Kopiere bildet
Kopiere bildet

Nå som vi har konfigurert vår master Pi, må vi kopiere Pi -SD -kortet til alle de andre Pi -ene. Slik kan du gjøre det på Windows:

  1. Ta hoved -SD -kortet ut av Pi og sett det inn i datamaskinen.
  2. Ved å bruke Win32DiskImager bruker du "Les" -knappen for å lagre innholdet på SD -kortet på datamaskinen.
  3. Løs ut hoved -SD -kortet og sett inn et SD -kort for en av de andre Pi -ene. Bruk deretter alternativet "Skriv" for Win32DiskImager til å skrive bildet vi lagret på det nye SD -kortet.
  4. Gjenta trinn 3 til du har hovedbildet skrevet til alle SD -kortene.

Trinn 7: Konfigurering av gjenværende Raspberry Pi

Konfigurering av gjenværende Raspberry Pi
Konfigurering av gjenværende Raspberry Pi
Konfigurering av gjenværende Raspberry Pi
Konfigurering av gjenværende Raspberry Pi
Konfigurering av gjenværende Raspberry Pi
Konfigurering av gjenværende Raspberry Pi

Nå som vi har alle SD -kortene forberedt, sett inn Master SD -kortet tilbake i Master Pi, koble det til en ruter og start det opp igjen. Sett deretter inn SD -kortene i de resterende Raspberry Pi -ene, koble dem til den samme ruteren som Master Pi, og start dem deretter opp. Ingen av de sekundære Pi -ene trenger å ha tastaturer, mus eller skjermer.

Når alle Pi -ene er slått på, ved hjelp av Master Pi, bør vi kunne få IP -adressene til hver Pi på nettverket. Dette er hvordan:

  1. Installer først NMAP

    sudo apt-get oppdatering

    sudo apt-get install nmap

  2. Få deretter gjeldende IP for master Pi

    ifconfig

  3. Nå kan du skanne ruternes delnett for de andre Pi IP -adressene

    sudo nmap -sn 192.168.1.*

Kopier ned alle IP -adressene som gjelder de andre Raspberry Pi -ene på nettverket. Vi vil da kunne bruke disse IP -ene til å koble til hver av de andre Pi -ene ved hjelp av SSH. Det vi først må gjøre er å gi hver av de sekundære Pi -ene nytt navn til et unikt nettverksnavn. Akkurat nå er de klare til Pi01. Forutsatt at en av de sekundære Pi -IP -adressene er 192.168.0.3, kan du koble til den og endre navnet på den:

  1. Etablere en SSH -tilkobling

    ssh [email protected]

  2. Kjør raspi-config

    sudo raspi-config

  3. I grensesnittet blar du ned til alternativet Avansert, og deretter velger du Vertsnavn.
  4. For vertsnavnet, endre Pi01 til det neste sekvensielle nummeret, som er Pi02.
  5. Gå deretter ut av SSH -økten

    exit

Du vil gjenta disse trinnene for hver av de andre Pi -ene på nettverket og gi dem nytt navn til Pi03, Pi04, etc.

På master Pi vil du lage en ny tekstfil som heter "maskinfil"

nano maskinfil

Og i den vil du skrive inn hver av Pi -IP -adressene (inkludert hoved -IP -adressen) på en ny linje og deretter lagre filen.

På dette tidspunktet kunne vi kjøre en testfil ved hjelp av

mpiexec -f machinefile -n 4 vertsnavn

men det vil komme feil ved å si at det var en "vertsnøkkelverifiseringsfeil". Så i neste trinn, la oss fikse det.

Trinn 8: Verifisering av vertsnøkler

Bekrefter vertsnøkler
Bekrefter vertsnøkler
Bekrefter vertsnøkler
Bekrefter vertsnøkler
Bekrefter vertsnøkler
Bekrefter vertsnøkler

For å fikse det slik at kommunikasjon med hver Pi ikke resulterer i feil i verifisering av vertsnøkkel, må vi opprette og bytte nøkler for hver av våre Raspberry Pi. Denne delen kan bli litt komplisert, men forhåpentligvis kan du bli hos meg.

  1. På Master Pi, i standard hjemmemappe, opprett en ny nøkkel.

    cd ~

    ssh-keygen

  2. Naviger til ssh -mappen og kopier nøkkelfilen til en ny fil kalt "pi01"

    cd.ssh

    cp id_rsa.pub pi01

  3. Deretter vil du koble via SSH til Pi02 og gjenta de samme trinnene for å lage en Pi02 nøkkelfil

    ssh [email protected]

    ssh-keygen

    cd.ssh

    cp id_rsa.pub pi02

  4. Før vi forlater Pi02, må vi kopiere Pi01 -nøkkelfilen til den og godkjenne den.

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

    cat pi01 >> autoriserte_nøkler

    exit

  5. Når Pi02 er ferdig, gjentar du alle disse trinnene for Pi03

    ssh [email protected]

    ssh-keygen

    cd.ssh

    cp id_rsa.pub pi03

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

    cat pi01 >> autoriserte_nøkler

    exit

  6. Gjenta det siste trinnet for de resterende Pi -ene du har på nettverket ditt.
  7. Etter å ha generert nøkler for hver av Pi -ene, går du tilbake til Master Pi og kopierer over alle nøklene som er generert på hver av Pi -ene.

    cp 192.168.1.3:/home/pi/.ssh/pi02

    cat pi02 >> autoriserte_nøkler

    cp 192.168.1.4:/home/pi/.ssh/pi03

    cat pi03 >> autoriserte_nøkler

    cp 192.168.1.5:/home/pi/.ssh/pi02

    cat pi04 >> autoriserte_nøkler

  8. (gjenta for så mange Pi -er på nettverket ditt)

Trinn 9: Kjøre et program på superdatamaskinen

Kjører et program på superdatamaskinen din
Kjører et program på superdatamaskinen din
Kjører et program på superdatamaskinen din
Kjører et program på superdatamaskinen din
Kjører et program på superdatamaskinen din
Kjører et program på superdatamaskinen din

Nå skal alt settes opp. Mens du fortsatt er på Master Pi, kan du prøve å kjøre denne maskinfilen igjen:

cd ~

mpiexec -f machinefile -n 4 vertsnavn

Hvis alt ble gjort riktig, skulle det returnere IP -adressene til alle Raspberry Pi -ene. Nå som vi har testet superdatamaskinen vår, kan vi kjøre et python -program på den:

  1. Last ned og pakk ut test -Python -passordsprekkeskriptet mitt.

    wget

    tar -zxf python_test.tar.gz

  2. Rediger passord -hashen til en du vil knekke.

    nano python_test/md5_attack.py

  3. Kopier Python -filen til alle Pi -ene.

    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. (gjenta for alle gjenværende Pi)
  5. Kjør python -skriptet.

    mpiexec -f maskinfil -n 5 python python_test/md5_attack.py

Skriptet vil kjøre med prosessorkraften til alle Pi -ene på nettverket ditt! Test den gjerne med ditt eget python -skript!

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

Tredjepris i Raspberry Pi -konkurransen 2016

Anbefalt: