Turinys:

Kaip padaryti „Raspberry Pi“superkompiuterį!: 9 žingsniai (su nuotraukomis)
Kaip padaryti „Raspberry Pi“superkompiuterį!: 9 žingsniai (su nuotraukomis)

Video: Kaip padaryti „Raspberry Pi“superkompiuterį!: 9 žingsniai (su nuotraukomis)

Video: Kaip padaryti „Raspberry Pi“superkompiuterį!: 9 žingsniai (su nuotraukomis)
Video: The Choice is Ours (2016) Official Full Version 2024, Lapkritis
Anonim
Kaip pasidaryti „Raspberry Pi“superkompiuterį!
Kaip pasidaryti „Raspberry Pi“superkompiuterį!

Pats „Raspberry Pi“negali pasigirti įspūdingomis specifikacijomis. Tačiau esant pigiai pigiai, perkant kelis iš jų ir prijungus juos naudoti kartu, jie gali tapti nebrangiu kompiuteriu. Buvo pastatytos kelios įspūdingos platformos, jungiančios keliasdešimt Pi. Taigi šioje pamokoje panagrinėkime, kaip naudojama klasterinio skaičiavimo technologija, ir sukurkime savo „Bramble Pi“!

1 žingsnis: žiūrėkite vaizdo įrašo versiją

Image
Image

Aš taip pat sukūriau šio paties projekto dviejų dalių vaizdo versiją. Taigi, jei nesate skaitytojas, atsitraukite ir žiūrėkite vaizdo įrašus! Atminkite, kad vaizdo įrašo versijoje naudojama „Raspbian Wheezy“. Tačiau toliau pateiktos instrukcijos yra skirtos dabartiniam „Raspbian Distro“, kuris yra Jessie tuo metu, kai rašau tai.

2 žingsnis: ko jums reikės

Norėdami tęsti šį projektą, čia rasite dalis, kurias turėsite įsigyti

Štai ko jums reikės:

  1. 2 ar daugiau „Raspberry Pi“
  2. SD kortelės kiekvienam „Pi“
  3. Maitinimo kabeliai kiekvienam „Pi“
  4. Maitinamas USB šakotuvas (neprivaloma)
  5. Tinklo kabeliai
  6. Hub arba maršrutizatorius

IŠ VISŲ KAINŲ: ~ 100,00 USD

3 žingsnis: Raspbian diegimas ir konfigūravimas

Raspbian diegimas ir konfigūravimas
Raspbian diegimas ir konfigūravimas
Raspbian diegimas ir konfigūravimas
Raspbian diegimas ir konfigūravimas

Kai turėsite visas dalis, kitas žingsnis yra atsisiųsti ir sukonfigūruoti „Raspbian OS“vienoje iš „Raspberry Pi“. Tai bus jūsų šeimininkas Pi. Štai žingsniai:

  1. Atsisiųskite Raspbian vaizdą iš čia.
  2. Įrašykite „Raspbian“vaizdą į kiekvieną SD kortelę, kurią turite kiekvienai „Raspberry Pi“.

    1. Jei turite „Windows“, galite vykdyti šias instrukcijas.
    2. Jei turite „Mac“, galite vadovautis šiomis instrukcijomis.
  3. Kai vaizdas bus įrašytas į SD kortelę, įdėkite jį į kiekvieną „Raspberry Pi“ir paleiskite.
  4. Pirmą kartą paleidę turėtumėte pamatyti „Rasbperry Pi“darbalaukį. Spustelėkite meniu piktogramą viršutiniame kairiajame kampe ir eikite į Nuostatos> Raspberry Pi Configuration. Štai parinktys, kurias turėsime sukonfigūruoti

    1. Jei reikia, išplėskite failų sistemą.
    2. Pakeiskite pagrindinio kompiuterio pavadinimą į Pi01
    3. Pakeiskite įkrovos parinktį į CLI (komandinės eilutės sąsaja), nes mes tikrai nenaudosime darbalaukio sąsajos.
    4. Laikrodis skirtuke „Sąsajos“ir įsitikinkite, kad įjungtas SSH.
    5. Spustelėkite skirtuką „Overclock“ir pasirinkite „Turbo“.
    6. Pakeiskite GPU atmintį į 16 MB.
    7. Spustelėkite skirtuką „Lokalizavimas“ir nustatykite klaviatūros išdėstymą, kad jis atitiktų jūsų šalių klaviatūros išdėstymą.
    8. Užbaikite konfigūraciją ir iš naujo paleiskite „Pi“.

4 žingsnis: MPICH diegimas

MPICH diegimas
MPICH diegimas
MPICH diegimas
MPICH diegimas
MPICH diegimas
MPICH diegimas
MPICH diegimas
MPICH diegimas

Vis dar naudojant tik vieną Pi kaip pagrindinį, dabar turime įdiegti pagrindinę programinę įrangą, kuri leis mums naudoti visų mūsų tinklo Pi duomenų apdorojimo galią. Ši programinė įranga vadinama MPICH, kuri yra pranešimų perdavimo sąsaja. Štai ką reikia padaryti, kad ją įdiegtumėte:

sudo apt-get atnaujinimas

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 įdiegti gfortran

sudo /home/pi/mpich2/mpich-3.1/configure -prefix =/home/rpimpi/mpi-install

sudo padaryti

sudo make install

nano.bashrc

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

sudo perkraukite

mpiexec -n 1 pagrindinio kompiuterio pavadinimas

Šios komandos atsisiųs ir įdiegs MPICH, taip pat pridės jį kaip kelią į savo BASHRC įkrovos failą. Paskutinė komanda atlieka testą, kad pamatytų, ar jis veikia. Jei paskutinė komanda grąžina „Pi01“, tada viską padarėte sėkmingai.

5 veiksmas: MPI4PY diegimas

MPI4PY diegimas
MPI4PY diegimas
MPI4PY diegimas
MPI4PY diegimas
MPI4PY diegimas
MPI4PY diegimas

MPICH gali paleisti C ir Fortran programas. Bet kadangi „Raspberry Pi“turi iš anksto įdiegtą „Python“kodavimo aplinką, būtų paprasčiausia įdiegti „Python“į MPI vertėją. Štai komandos tai padaryti:

sudo aptitude įdiegti python-dev

wget

tar -zxf mpi4py -1.3.1

cd mpi4py-1.3.1

python setup.py build

įdiegti „python setup.py“

eksportuoti PYTHONPATH =/home/pi/mpi4py-1.3.1

„mpiexec -n 5 python“demonstracinė versija/helloworld.py

Paskutinė komanda turėtų grąžinti penkis atsakymus. Kiekvienas iš jų yra skirtingas „Pi01“procesas, kuriame vykdoma ką tik sukurta python programa „Hello World“.

6 veiksmas: vaizdo kopijavimas

Vaizdo kopijavimas
Vaizdo kopijavimas

Dabar, kai sėkmingai sukonfigūravome savo pagrindinį Pi, turime nukopijuoti to Pi SD kortelės vaizdą į visus kitus Pi. Štai kaip tai galite padaryti sistemoje „Windows“:

  1. Išimkite pagrindinę SD kortelę iš „Pi“ir įdėkite ją į kompiuterį.
  2. Naudodami „Win32DiskImager“, naudokite mygtuką „Skaityti“, kad išsaugotumėte SD kortelės turinį savo kompiuteryje.
  3. Išimkite pagrindinę SD kortelę ir įdėkite SD kortelę vienam iš kitų „Pi“. Tada naudokite „Win32DiskImager“parinktį „Rašyti“ir įrašykite vaizdą, kurį išsaugojome naujoje SD kortelėje.
  4. Kartokite 3 veiksmą, kol pagrindinis vaizdas bus įrašytas į visas SD korteles.

7 veiksmas: likusių „Raspberry Pi“konfigūravimas

Likusių „Raspberry Pi“konfigūravimas
Likusių „Raspberry Pi“konfigūravimas
Likusių „Raspberry Pi“konfigūravimas
Likusių „Raspberry Pi“konfigūravimas
Likusių „Raspberry Pi“konfigūravimas
Likusių „Raspberry Pi“konfigūravimas

Dabar, kai visos SD kortelės yra paruoštos, įdėkite pagrindinę SD kortelę atgal į „Master Pi“, prijunkite ją prie maršrutizatoriaus ir paleiskite atsarginę kopiją. Tada į visas likusias „Raspberry Pi“įdėkite SD korteles, prijunkite jas prie to paties maršrutizatoriaus, kaip ir „Master Pi“, ir paleiskite jas visas. Nė vienas iš antrinių „Pi“neturi turėti klaviatūrų, pelių ar monitorių.

Kai visi „Pi“įjungiami, naudodami „Master Pi“turėtume turėti galimybę gauti kiekvieno tinklo „Pi“IP adresus. Štai kaip:

  1. Pirmiausia įdiekite NMAP

    sudo apt-get atnaujinimas

    sudo apt-get install nmap

  2. Tada gaukite dabartinį pagrindinio „Pi“IP

    ifconfig

  3. Dabar galite nuskaityti maršrutizatorių potinklį, ar nėra kitų Pi IP adresų

    sudo nmap -sn 192.168.1.*

Nukopijuokite visus IP adresus, susijusius su kitais tinklo „Raspberry Pi“. Tada galėsime naudoti tuos IP prisijungti prie kiekvieno kito „Pi“naudodami SSH. Pirmiausia turime pervadinti kiekvieną antrinį „Pi“į unikalų tinklo pavadinimą. Šiuo metu jie visi nustatyti į Pi01. Darant prielaidą, kad vienas iš antrinių „Pi“IP adresų yra 192.168.0.3, štai kaip galite prie jo prisijungti ir pakeisti jo pavadinimą:

  1. Užmegzkite SSH ryšį

    ssh [email protected]

  2. Paleiskite raspi-config

    sudo raspi-config

  3. Sąsajoje slinkite žemyn iki parinkties Išplėstinė, tada pasirinkite Pagrindinio kompiuterio pavadinimas.
  4. Pagrindinio kompiuterio pavadinimui pakeiskite Pi01 į kitą eilės numerį, kuris yra Pi02.
  5. Tada išeikite iš SSH sesijos

    išeiti

Norite pakartoti šiuos veiksmus kiekvienam kitam tinklo Pi, pervadindami juos į Pi03, Pi04 ir kt.

Savo pagrindiniame Pi, norite sukurti naują teksto failą, pavadintą „machinefile“

nano mašinos failas

Jame norite įvesti kiekvieną „Pi“IP adresą (įskaitant pagrindinį IP adresą) naujoje eilutėje ir išsaugoti failą.

Šiuo metu mes galime paleisti bandomąjį failą naudodami

mpiexec -f machinefile -n 4 pagrindinio kompiuterio pavadinimas

bet bus klaida sakant, kad įvyko „pagrindinio kompiuterio rakto patvirtinimo klaida“. Taigi kitame žingsnyje ištaisykime tai.

8 veiksmas: pagrindinio kompiuterio raktų tikrinimas

Pagrindinio kompiuterio raktų tikrinimas
Pagrindinio kompiuterio raktų tikrinimas
Pagrindinio kompiuterio raktų tikrinimas
Pagrindinio kompiuterio raktų tikrinimas
Pagrindinio kompiuterio raktų tikrinimas
Pagrindinio kompiuterio raktų tikrinimas

Norėdami tai išspręsti, kad bendravimas su kiekvienu „Pi“nesukeltų pagrindinio kompiuterio patvirtinimo gedimo, turime sukurti ir pakeisti kiekvieno „Raspberry Pi“raktus. Ši dalis gali būti šiek tiek sudėtinga, bet tikiuosi, kad galite likti su manimi.

  1. „Master Pi“numatytame namų aplanke sukurkite naują raktą.

    cd ~

    ssh-keygen

  2. Eikite į ssh aplanką ir nukopijuokite rakto failą į naują failą pavadinimu „pi01“

    cd.ssh

    cp id_rsa.pub pi01

  3. Tada norite prisijungti per SSH prie „Pi02“ir pakartoti tuos pačius veiksmus, kad sukurtumėte „Pi02“rakto failą

    ssh [email protected]

    ssh-keygen

    cd.ssh

    cp id_rsa.pub pi02

  4. Prieš išeinant iš „Pi02“, turime nukopijuoti „Pi01“rakto failą į jį ir jį įgalioti.

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

    katė pi01 >> autorizuoti_raktai

    išeiti

  5. Baigę „Pi02“, pakartokite visus „Pi03“veiksmus

    ssh [email protected]

    ssh-keygen

    cd.ssh

    cp id_rsa.pub pi03

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

    katė pi01 >> autorizuoti_raktai

    išeiti

  6. Pakartokite paskutinį veiksmą likusiems „Pi“, kuriuos turite savo tinkle.
  7. Sukūrę raktus kiekvienam „Pi“, grįžkite į „Master Pi“ir nukopijuokite visus raktus, sukurtus kiekviename „Pi“.

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

    katė pi02 >> autorizuoti_raktai

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

    katė pi03 >> autorizuoti_raktai

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

    katė pi04 >> autorizuoti_raktai

  8. (pakartokite tiek, kiek jūsų tinkle yra „Pi“)

9 veiksmas: paleiskite programą savo superkompiuteriu

Programos paleidimas superkompiuteriu
Programos paleidimas superkompiuteriu
Programos paleidimas superkompiuteriu
Programos paleidimas superkompiuteriu
Programos paleidimas superkompiuteriu
Programos paleidimas superkompiuteriu

Dabar viskas turėtų būti nustatyta. Kol dar naudojate „Master Pi“, pabandykite dar kartą paleisti šį mašininį failą:

cd ~

mpiexec -f machinefile -n 4 pagrindinio kompiuterio pavadinimas

Jei viskas buvo padaryta teisingai, tai turėtų grąžinti visų jūsų „Raspberry Pi“IP adresus. Dabar, kai sėkmingai išbandėme savo superkompiuterį, paleiskite jame python programą:

  1. Atsisiųskite ir išpakuokite mano bandomąjį „Python“slaptažodžio krekingo scenarijų.

    wget

    tar -zxf python_test.tar.gz

  2. Redaguokite slaptažodžio maišą į vieną, kurią norite nulaužti.

    nano python_test/md5_attack.py

  3. Nukopijuokite „Python“failą į visus „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

  4. (pakartokite visiems likusiems Pi)
  5. Paleiskite „python“scenarijų.

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

Scenarijus bus paleistas naudojant visų jūsų tinklo „Pi“duomenų apdorojimo galią! Nesivaržykite tai išbandyti naudodami savo „python“scenarijų!

Raspberry Pi konkursas 2016 m
Raspberry Pi konkursas 2016 m
Raspberry Pi konkursas 2016 m
Raspberry Pi konkursas 2016 m

Trečiasis prizas „Raspberry Pi“konkurse 2016 m

Rekomenduojamas: