Sommario:
- Passaggio 1: guarda la versione video
- Passaggio 2: cosa ti servirà
- Passaggio 3: installazione e configurazione di Raspbian
- Passaggio 4: installazione di MPICH
- Passaggio 5: installazione di MPI4PY
- Passaggio 6: copia dell'immagine
- Passaggio 7: configurazione dei restanti Raspberry Pi
- Passaggio 8: verifica delle chiavi host
- Passaggio 9: eseguire un programma sul tuo supercomputer
Video: Come Realizzare un SuperComputer Raspberry Pi!: 9 Passaggi (Illustrato)
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:04
Di per sé il Raspberry Pi non vanta specifiche impressionanti. Ma con il prezzo stracciato, l'acquisto di molti di questi e il loro collegamento per utilizzare la loro potenza di elaborazione combinata potrebbe potenzialmente creare un computer a basso costo decente. Sono stati costruiti diversi rig impressionanti che collegano dozzine di Pi insieme. Quindi, in questo tutorial, esploriamo come la tecnologia alla base del cluster computing e creiamo il nostro Bramble Pi!
Passaggio 1: guarda la versione video
Ho anche realizzato una versione video in due parti di questo identico progetto. Quindi, se non sei uno che legge, rilassati e guarda i video! Si prega di notare che la versione video utilizza Raspbian Wheezy. Tuttavia, le istruzioni di seguito sono per l'attuale Raspbian Distro, che è Jessie nel momento in cui scrivo questo.
Passaggio 2: cosa ti servirà
Per seguire questo progetto, ecco le parti che dovrai acquisire
Ecco di cosa avrai bisogno:
- 2 o più Raspberry Pi
- Schede SD per ogni Pi
- Cavi di alimentazione per ogni Pi
- Hub USB alimentato (opzionale)
- Cavi di rete
- Un hub o un router
COSTO TOTALE: ~$100,00
Passaggio 3: installazione e configurazione di Raspbian
Una volta che hai tutte le parti, il passaggio successivo è scaricare e configurare il sistema operativo Raspbian su uno dei Raspberry Pi. Questo sarà il tuo maestro Pi. Ecco i passaggi:
- Scarica l'immagine Raspbian da qui.
-
Masterizza l'immagine Raspbian su ogni scheda SD che hai per ogni Raspberry Pi.
- Se hai Windows, puoi seguire queste istruzioni.
- Se hai un Mac, puoi seguire queste istruzioni.
- Una volta che l'immagine è stata masterizzata sulla scheda SD, inseriscila in ciascuno dei Raspberry Pi e avviala.
-
Al primo avvio, dovresti vedere il desktop Rasbperry Pi. Fare clic sull'icona del menu nell'angolo in alto a sinistra e andare su Preferenze > Configurazione Raspberry Pi. Ecco le opzioni che dovremo configurare
- Espandi il file systemSe necessario.
- Cambia il nome host in Pi01
- Cambia l'opzione di avvio in CLI (Command Line Interface), poiché non utilizzeremo realmente l'interfaccia desktop.
- Orologio nella scheda "Interfacce" e assicurati che SSH sia abilitato.
- Fare clic sulla scheda "Overclock" e scegliere "Turbo".
- Cambia la memoria della GPU a 16mb.
- Fai clic sulla scheda "Localizzazione" e imposta il layout della tastiera in modo che corrisponda a quello dei tuoi paesi.
- Termina la configurazione e riavvia il tuo Pi.
Passaggio 4: installazione di MPICH
Utilizzando ancora solo un Pi come master, ora dobbiamo installare il software principale che ci consentirà di utilizzare la potenza di elaborazione di tutti i Pi sulla nostra rete. Quel software si chiama MPICH, che è un'interfaccia di passaggio dei messaggi. Ecco cosa devi fare per installarlo:
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 make
sudo make install
nano.bashrc
PATH=$PATH:/home/rpimpi/mpi-install/bin
sudo reboot
mpiexec -n 1 nome host
Questi comandi scaricheranno e installeranno MPICH, oltre ad aggiungerlo come percorso al file di avvio BASHRC. L'ultimo comando esegue un test per vedere se funziona. Se l'ultimo comando restituisce "Pi01", allora hai fatto tutto con successo.
Passaggio 5: installazione di MPI4PY
Così com'è, MPICH può eseguire programmi C e Fortran. Ma poiché il Raspberry Pi ha l'ambiente di codifica Python preinstallato, sarebbe più semplice installare un interprete da Python a MPI. Ecco i comandi per farlo:
sudo aptitude install python-dev
wget
tar -zxf mpi4py-1.3.1
cd mpi4py-1.3.1
python setup.py build
python setup.py installa
esporta PYTHONPATH=/home/pi/mpi4py-1.3.1
mpiexec -n 5 python demo/helloworld.py
L'ultimo comando dovrebbe restituire cinque risposte. Ognuno è un processo diverso su Pi01 che esegue il programma Python "Hello World" che abbiamo appena creato.
Passaggio 6: copia dell'immagine
Ora che abbiamo configurato con successo il nostro Pi principale, dobbiamo copiare l'immagine della scheda SD di Pi su tutti gli altri Pi. Ecco come puoi farlo su Windows:
- Estrai la scheda SD principale dal Pi e inseriscila nel tuo computer.
- Usando Win32DiskImager, usa il pulsante "Leggi" per salvare il contenuto della scheda SD sul tuo computer.
- Espelli la scheda SD principale e inserisci una scheda SD per uno degli altri Pi. Quindi utilizzare l'opzione "Scrivi" di Win32DiskImager per scrivere l'immagine che abbiamo salvato sulla nuova scheda SD.
- Ripeti il passaggio 3 finché non hai scritto l'immagine principale su tutte le schede SD.
Passaggio 7: configurazione dei restanti Raspberry Pi
Ora che abbiamo tutte le schede SD preparate, inserisci nuovamente la scheda SD principale nel Master Pi, collegala a un router e riavviala. Quindi per i restanti Raspberry Pi, inserisci le schede SD in tutti, collegale allo stesso router del tuo Master Pi, quindi avviale tutte. Nessuno dei Pi secondari deve avere tastiere, mouse o monitor.
Una volta accesi tutti i Pi, utilizzando il nostro Master Pi, dovremmo essere in grado di ottenere gli indirizzi IP di ciascun Pi sulla rete. Ecco come:
-
Prima installazione di NMAP
sudo apt-get update
sudo apt-get install nmap
-
Quindi ottieni l'IP corrente per il master Pi
ifconfig
-
Ora puoi scansionare la sottorete del tuo router per gli altri indirizzi IP Pi
sudo nmap -sn 192.168.1.*
Copia tutti gli indirizzi IP relativi agli altri Raspberry Pi sulla rete. Saremo quindi in grado di utilizzare quegli IP per connetterci a ciascuno degli altri Pi utilizzando SSH. Quello che dobbiamo fare prima è rinominare ciascuno dei Pi secondari con un nome di rete univoco. In questo momento sono tutti impostati su Pi01. Supponendo che uno degli indirizzi IP del Pi secondario sia 192.168.0.3, ecco come puoi connetterti ad esso e cambiarne il nome:
-
Stabilire una connessione SSH
-
Esegui raspi-config
sudo raspi-config
- Nell'interfaccia, scorri verso il basso fino all'opzione Avanzate, quindi scegli Nome host.
- Per il nome host, cambia Pi01 con il numero sequenziale successivo, che è Pi02.
-
Quindi esci dalla sessione SSH
Uscita
Vuoi ripetere questi passaggi per ciascuno degli altri Pi sulla rete rinominandoli in Pi03, Pi04, ecc.
Sul tuo master Pi, vuoi creare un nuovo file di testo chiamato "machinefile"
file macchina nano
E in esso, si desidera digitare ciascuno degli indirizzi IP di Pi (incluso l'indirizzo IP principale) su una nuova riga e quindi salvare il file.
A questo punto, potremmo eseguire un file di prova usando
mpiexec -f machinefile -n 4 hostname
ma verrà visualizzato un errore dicendo che si è verificato un "errore di verifica della chiave host". Quindi, nel passaggio successivo, risolviamo il problema.
Passaggio 8: verifica delle chiavi host
Per risolvere il problema in modo che la comunicazione con ciascun Pi non si traduca in un errore di verifica della chiave host, è necessario creare e scambiare le chiavi per ciascuno dei nostri Raspberry Pi. Questa parte potrebbe diventare leggermente complicata, ma spero che tu possa stare con me.
-
Sul Master Pi, nella cartella home predefinita, crea una nuova chiave.
cd~
ssh-keygen
-
Passa alla cartella ssh e copia il file chiave in un nuovo file chiamato "pi01"
cd.ssh
cp id_rsa.pub pi01
-
Successivamente si desidera connettersi tramite SSH a Pi02 e ripetere gli stessi passaggi per creare un file di chiavi Pi02
ssh-keygen
cd.ssh
cp id_rsa.pub pi02
-
Prima di uscire da Pi02, dobbiamo copiare il file di chiavi Pi01 su di esso e autorizzarlo.
scp 192.168.1.2:/home/pi/.ssh/pi01.
cat pi01 >> chiavi_autorizzate
Uscita
-
Con Pi02 fatto, ripeti tutti questi passaggi per Pi03
ssh-keygen
cd.ssh
cp id_rsa.pub pi03
scp 192.168.1.2:/home/pi/.ssh/pi01.
cat pi01 >> chiavi_autorizzate
Uscita
- Ripeti l'ultimo passaggio per i restanti Pi che hai sulla tua rete.
-
Dopo aver generato le chiavi per ciascuno dei Pi, torna al tuo Master Pi e copia tutte le chiavi generate su ciascuno dei Pi.
cp 192.168.1.3:/home/pi/.ssh/pi02
cat pi02 >> chiavi_autorizzate
cp 192.168.1.4:/home/pi/.ssh/pi03
cat pi03 >> chiavi_autorizzate
cp 192.168.1.5:/home/pi/.ssh/pi02
cat pi04 >> chiavi_autorizzate
- (ripeti per tutti i Pi presenti sulla tua rete)
Passaggio 9: eseguire un programma sul tuo supercomputer
Ora tutto dovrebbe essere impostato. Mentre sei ancora sul tuo Master Pi, prova a eseguire di nuovo questo file macchina:
cd ~
mpiexec -f machinefile -n 4 hostname
Se tutto è stato fatto correttamente, dovrebbe restituire gli indirizzi IP di tutti i tuoi Raspberry Pi. Ora che abbiamo testato con successo il nostro supercomputer, eseguiamo su di esso un programma Python:
-
Scarica e decomprimi il mio script di cracking della password Python di prova.
wget
tar -zxf python_test.tar.gz
-
Modifica l'hash della password con quello che desideri decifrare.
nano python_test/md5_attack.py
-
Copia il file Python su tutti i tuoi 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
- (ripeti per tutti i Pi rimanenti)
-
Esegui lo script Python.
mpiexec -f machinefile -n 5 python python_test/md5_attack.py
Lo script verrà eseguito utilizzando la potenza di elaborazione di tutti i Pi sulla tua rete! Sentiti libero di provarlo usando il tuo script Python!
Terzo Premio al Raspberry Pi Contest 2016
Consigliato:
Come Realizzare un Analizzatore di Spettro Audio LED: 7 Passaggi (Illustrato)
Come realizzare un analizzatore di spettro audio LED: L'analizzatore di spettro audio LED genera il bellissimo schema di illuminazione in base all'intensità della musica. Ci sono molti kit di spettro musicale LED fai-da-te disponibili sul mercato, ma qui faremo uno spettro audio LED Analizzatore che utilizza NeoPixe
Come Realizzare un Controllo di Tono LM358 per Amplificatore 2.1: 7 Passaggi (Illustrato)
Come realizzare un controllo di tono LM358 per l'amplificatore 2.1: Quindi, sul mio canale Youtube, molte persone chiedono come combinare due amplificatori in uno. Il primo amplificatore è utilizzato per gli altoparlanti satellite e il secondo amplificatore è utilizzato per gli altoparlanti subwoofer. Questa configurazione di installazione dell'amplificatore può essere chiamata Amp
Come Realizzare un Sensore di Vibrazione a Molla in Casa!: 5 Passaggi (Illustrato)
Come realizzare un sensore di vibrazioni primaverili in casa!: Stavo lavorando a un nuovo progetto che prevede un sensore di vibrazioni primaverili noto anche come "poverino" accelerometro/sensore di movimento! Questi interruttori a vibrazione a molla sono interruttori di attivazione indotti da vibrazioni non direzionali ad alta sensibilità. All'interno c'è un
Come Realizzare una Scheda Arduino Economica Attiny: 4 Passaggi (Illustrato)
Come realizzare una scheda Arduino economica Attiny: Beh, la maggior parte delle volte mi sento turbato quando ho bisogno di Arduino in alcuni progetti in cui ho bisogno di pochi pin I/OBene, grazie alla piattaforma Arduino-Tiny, il programma Arduino può essere masterizzato nella serie Avr-tiny come Attiny 85/45Arduino-Tiny è un set open source di ATtiny
Come Realizzare un'Insegna a LED Enorme: 4 Passaggi (Illustrato)
Come realizzare un enorme cartello luminoso a LED: in questo progetto ti mostrerò come costruire un enorme cartello con una scritta personalizzata che può illuminarsi grazie all'aiuto di LED RGB. Ma il segno può anche essere utilizzato come fonte di luce primaria nella tua stanza utilizzando strisce LED bianche calde. Prendiamo st