Inhoudsopgave:
- Stap 1: Bekijk de videoversie
- Stap 2: Wat heb je nodig?
- Stap 3: Raspbian installeren en configureren
- Stap 4: MPICH. installeren
- Stap 5: MPI4PY installeren
- Stap 6: De afbeelding kopiëren
- Stap 7: De overige Raspberry Pi's configureren
- Stap 8: Hostsleutels verifiëren
- Stap 9: Een programma uitvoeren op uw supercomputer
Video: Hoe maak je een Raspberry Pi SuperComputer! 9 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:19
Op zichzelf heeft de Raspberry Pi geen indrukwekkende specificaties. Maar met de spotgoedkope prijs, zou het kopen van een aantal hiervan en het aansluiten ervan om ze te gebruiken gecombineerde verwerkingskracht mogelijk een fatsoenlijke goedkope computer kunnen maken. Er zijn verschillende indrukwekkende rigs gebouwd die tientallen Pi's met elkaar verbinden. Dus laten we in deze instructable eens kijken hoe de technologie achter clustercomputing en onze eigen Bramble Pi maken!
Stap 1: Bekijk de videoversie
Ik heb ook een tweedelige videoversie gemaakt van exact hetzelfde project. Dus als je niet iemand bent die leest, leun dan achterover en bekijk de video's! Houd er rekening mee dat de videoversie Raspbian Wheezy gebruikt. De onderstaande instructies zijn echter voor de huidige Raspbian Distro, dat is Jessie op het moment dat ik dit schrijf.
Stap 2: Wat heb je nodig?
Om dit project te volgen, zijn hier de onderdelen die u moet aanschaffen:
Dit is wat je nodig hebt:
- 2 of meer Raspberry Pi's
- SD-kaarten voor elke Pi
- Stroomkabels voor elke Pi
- Aangedreven USB-hub (optioneel)
- Netwerkkabels
- Een hub of een router
TOTALE KOSTEN: ~ $ 100,00
Stap 3: Raspbian installeren en configureren
Zodra je alle onderdelen hebt, is de volgende stap het downloaden en configureren van Raspbian OS op een van de Raspberry Pi's. Dit wordt je meester Pi. Dit zijn de stappen:
- Download hier de Raspbian-afbeelding.
-
Brand de Raspbian-afbeelding op elke SD-kaart die je hebt voor elke Raspberry Pi.
- Als je Windows hebt, kun je deze instructies volgen.
- Als je een Mac hebt, kun je deze instructies volgen.
- Zodra de afbeelding op uw SD-kaart is gebrand, plaatst u deze in elk van de Raspberry Pi en start u deze op.
-
Bij de eerste keer opstarten zou je de Rasbberry Pi Desktop moeten zien. Klik op het menupictogram in de linkerbovenhoek en ga naar Voorkeuren > Raspberry Pi-configuratie. Dit zijn de opties die we moeten configureren:
- Vouw indien nodig het bestandssysteem uit.
- Verander de hostnaam in Pi01
- Verander de opstartoptie in CLI (Command Line Interface), aangezien we de Desktop Interface niet echt zullen gebruiken.
- Klok op het tabblad "Interfaces" en zorg ervoor dat SSH is ingeschakeld.
- Klik op het tabblad "Overklokken" en kies "Turbo".
- Wijzig het GPU-geheugen in 16 MB.
- Klik op het tabblad "Lokalisatie" en stel uw toetsenbordindeling in op die van uw landen.
- Voltooi de configuratie en start je Pi opnieuw op.
Stap 4: MPICH. installeren
We gebruiken nog steeds alleen die ene Pi als master, maar we moeten nu de primaire software installeren waarmee we de verwerkingskracht van alle Pi's op ons netwerk kunnen gebruiken. Die software heet MPICH, wat een Message Passing Interface is. Dit is wat u moet doen om het te installeren:
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 maken
sudo make install
nano.bashrc
PATH=$PATH:/home/rpimpi/mpi-install/bin
sudo reboot
mpiexec -n 1 hostnaam
Deze commando's zullen MPICH downloaden en installeren, en het ook toevoegen als een pad naar je BASHRC-opstartbestand. Het laatste commando voert een test uit om te zien of het werkt. Als de laatste opdracht "Pi01" retourneert, hebt u alles met succes gedaan.
Stap 5: MPI4PY installeren
Zoals het is, kan MPICH C- en Fortran-programma's uitvoeren. Maar aangezien de Raspberry Pi de Python-coderingsomgeving vooraf heeft geïnstalleerd, zou het het gemakkelijkst zijn om een Python-naar-MPI-interpreter te installeren. Hier zijn de opdrachten om dat te doen:
sudo aptitude installeer python-dev
wget
tar -zxf mpi4py-1.3.1
cd mpi4py-1.3.1
python setup.py bouwen
python setup.py installeren
export PYTHONPATH=/home/pi/mpi4py-1.3.1
mpiexec -n 5 python demo/helloworld.py
Die laatste opdracht zou vijf reacties moeten opleveren. Elk is een ander proces op Pi01 met het python-programma "Hello World" dat we zojuist hebben gemaakt.
Stap 6: De afbeelding kopiëren
Nu we onze master Pi met succes hebben geconfigureerd, moeten we de SD-kaartafbeelding van die Pi naar alle andere Pi's kopiëren. Hier leest u hoe u dat kunt doen in Windows:
- Haal de master SD-kaart uit de Pi en plaats deze in uw computer.
- Gebruik Win32DiskImager en gebruik de knop "Lezen" om de inhoud van de SD-kaart op uw computer op te slaan.
- Werp de master SD-kaart uit en plaats een SD-kaart voor een van de andere Pi's. Gebruik vervolgens de Win32DiskImager "Write"-optie om de afbeelding die we hebben opgeslagen naar de nieuwe SD-kaart te schrijven.
- Herhaal stap 3 totdat u de hoofdafbeelding naar alle SD-kaarten hebt geschreven.
Stap 7: De overige Raspberry Pi's configureren
Nu we alle SD-kaarten hebben voorbereid, plaatst u de Master SD-kaart terug in de Master Pi, sluit u deze aan op een router en start u hem weer op. Steek dan voor de resterende Raspberry Pi's SD-kaarten in ze allemaal, verbind ze met dezelfde router als je Master Pi en start ze vervolgens allemaal op. Geen van de secundaire Pi's hoeft toetsenborden, muizen of monitoren te hebben.
Zodra alle Pi's zijn ingeschakeld, met behulp van onze Master Pi, zouden we de IP-adressen van elke Pi op het netwerk moeten kunnen krijgen. Hier is hoe:
-
Installeer eerst NMAP
sudo apt-get update
sudo apt-get install nmap
-
Haal dan het huidige IP-adres op voor de master Pi
ifconfig
-
Nu kunt u het subnet van uw router scannen op de andere Pi IP-adressen
sudo nmap -sn 192.168.1.*
Kopieer alle IP-adressen die betrekking hebben op de andere Raspberry Pi's op het netwerk. We kunnen dan die IP's gebruiken om verbinding te maken met elk van de andere Pi's via SSH. Wat we eerst moeten doen, is elk van de secundaire Pi's hernoemen naar een unieke netwerknaam. Op dit moment zijn ze allemaal ingesteld op Pi01. Ervan uitgaande dat een van de IP-adressen van de secundaire Pi 192.168.0.3 is, kun je er als volgt verbinding mee maken en de naam wijzigen:
-
Breng een SSH-verbinding tot stand
-
Voer raspi-config uit
sudo raspi-config
- Blader in de interface omlaag naar de optie Geavanceerd en kies vervolgens Hostnaam.
- Wijzig voor de hostnaam Pi01 in het volgende volgnummer, namelijk Pi02.
-
Sluit vervolgens de SSH-sessie af
Uitgang
U wilt die stappen herhalen voor elk van de andere Pi's op het netwerk en ze hernoemen naar Pi03, Pi04, enz.
Op je master Pi wil je een nieuw tekstbestand maken met de naam "machinefile"
nano machinebestand
En daarin wil je elk van de IP-adressen van de Pi (inclusief het hoofd-IP-adres) op een nieuwe regel typen en vervolgens het bestand opslaan.
Op dit punt kunnen we een testbestand uitvoeren met
mpiexec -f machinefile -n 4 hostnaam
maar het geeft een foutmelding dat er een "hostsleutelverificatiefout" is opgetreden. Laten we dat in de volgende stap oplossen.
Stap 8: Hostsleutels verifiëren
Om dit op te lossen, zodat communicatie met elke Pi niet resulteert in een mislukte verificatie van de hostsleutel, moeten we sleutels maken en verwisselen voor elk van onze Raspberry Pi's. Dit deel kan een beetje ingewikkeld worden, maar hopelijk kun je bij me blijven.
-
Maak op de Master Pi, in de standaard thuismap, een nieuwe sleutel.
cd~
ssh-keygen
-
Navigeer naar de ssh-map en kopieer het sleutelbestand naar een nieuw bestand met de naam "pi01"
cd.ssh
cp id_rsa.pub pi01
-
Vervolgens wil je via SSH verbinding maken met Pi02 en dezelfde stappen herhalen om een Pi02-sleutelbestand te maken
ssh-keygen
cd.ssh
cp id_rsa.pub pi02
-
Voordat we Pi02 verlaten, moeten we het Pi01-sleutelbestand ernaar kopiëren en autoriseren.
scp 192.168.1.2:/home/pi/.ssh/pi01.
cat pi01 >> geautoriseerde_sleutels
Uitgang
-
Als Pi02 klaar is, herhaalt u al die stappen voor Pi03
ssh-keygen
cd.ssh
cp id_rsa.pub pi03
scp 192.168.1.2:/home/pi/.ssh/pi01.
cat pi01 >> geautoriseerde_sleutels
Uitgang
- Herhaal de laatste stap voor de overige Pi's die je op je netwerk hebt staan.
-
Na het genereren van sleutels voor elk van de Pi's, ga je terug naar je Master Pi en kopieer je alle sleutels die op elk van de Pi's zijn gegenereerd.
cp 192.168.1.3:/home/pi/.ssh/pi02
cat pi02 >> geautoriseerde_sleutels
cp 192.168.1.4:/home/pi/.ssh/pi03
cat pi03 >> geautoriseerde_sleutels
cp 192.168.1.5:/home/pi/.ssh/pi02
cat pi04 >> geautoriseerde_sleutels
- (herhalen voor zoveel Pi's op je netwerk)
Stap 9: Een programma uitvoeren op uw supercomputer
Nu moet alles worden ingesteld. Probeer, terwijl je nog op je Master Pi staat, dit machinebestand opnieuw uit te voeren:
cd ~
mpiexec -f machinefile -n 4 hostnaam
Als alles correct is gedaan, zou het de IP-adressen van al je Raspberry Pi's moeten retourneren. Nu we onze supercomputer met succes hebben getest, laten we er een python-programma op uitvoeren:
-
Download en pak mijn test Python-wachtwoordkrakende script uit.
wget
tar -zxf python_test.tar.gz
-
Bewerk de wachtwoord-hash naar een die u wilt kraken.
nano python_test/md5_attack.py
-
Kopieer het Python-bestand naar al je 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
- (herhaal voor alle resterende Pi's)
-
Voer het python-script uit.
mpiexec -f machinefile -n 5 python python_test/md5_attack.py
Het script wordt uitgevoerd met behulp van de verwerkingskracht van alle Pi's op uw netwerk! Voel je vrij om het uit te testen met je eigen python-script!
Derde prijs in de Raspberry Pi-wedstrijd 2016
Aanbevolen:
Hoe maak je een stopwatch met Arduino 8 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
Hoe maak je een stopwatch met behulp van Arduino: dit is een zeer eenvoudige Arduino 16 * 2 lcd-scherm stopwatch ……….. Als je deze Instructable leuk vindt, abonneer je dan op mijn kanaal https://www.youtube.com /ZenoModiff
Maak een op afstand bestuurbare camera vanaf een mobiele telefoon! 5 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
Maak een op afstand bestuurbare camera vanaf een mobiele telefoon! Wilt u weten wat uw kat doet terwijl ze aan het werk is? Stuur een sms naar je nieuw gemaakte bewakingsmobiel en ontvang foto's en video's seconden later. Klinkt als een droom? Niet meer! In deze video wordt uitgelegd hoe het werkt:
Een computer demonteren met eenvoudige stappen en afbeeldingen: 13 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
Een computer demonteren met eenvoudige stappen en afbeeldingen: dit is een instructie over het demonteren van een pc. De meeste basiscomponenten zijn modulair en gemakkelijk te verwijderen. Wel is het belangrijk dat je er goed over georganiseerd bent. Dit zal helpen voorkomen dat u onderdelen kwijtraakt, en ook bij het maken van de hermontage e
Maak een reclamebord van een kapotte lcd-tv: 16 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
Maak een reclamebord van een kapotte lcd-tv.: van een kapot tv-scherm. Ik kwam op het idee om er een advertentie van te maken
Hoe maak je een lijnvolger met Arduino 8 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
Hoe maak je een lijnvolger met Arduino: Als je aan de slag gaat met robotica, bevat een van de eerste projecten die beginners maken een lijnvolger. Het is een speciale speelgoedauto met eigenschap om langs een lijn te rijden die normaal gesproken zwart van kleur is en contrasteert met de achtergrond. Let's get star