Πίνακας περιεχομένων:

Πώς να φτιάξετε ένα Raspberry Pi SuperComputer!: 9 βήματα (με εικόνες)
Πώς να φτιάξετε ένα Raspberry Pi SuperComputer!: 9 βήματα (με εικόνες)

Βίντεο: Πώς να φτιάξετε ένα Raspberry Pi SuperComputer!: 9 βήματα (με εικόνες)

Βίντεο: Πώς να φτιάξετε ένα Raspberry Pi SuperComputer!: 9 βήματα (με εικόνες)
Βίντεο: Marlin Firmware 2.0.x Explained 2024, Ιούλιος
Anonim
Πώς να φτιάξετε έναν σούπερ υπολογιστή Raspberry Pi!
Πώς να φτιάξετε έναν σούπερ υπολογιστή Raspberry Pi!

Από μόνο του το Raspberry Pi δεν διαθέτει εντυπωσιακές προδιαγραφές. Αλλά με τη βρώμικη φθηνή τιμή, αγοράζοντας αρκετά από αυτά και συνδέοντάς τα με τη συνδυασμένη ισχύ επεξεργασίας θα μπορούσε δυνητικά να γίνει ένας αξιοπρεπής υπολογιστής χαμηλού κόστους. Έχουν κατασκευαστεί αρκετές εντυπωσιακές εξέδρες που συνδέουν δεκάδες Pi's μαζί. Έτσι σε αυτό το διδακτικό, ας εξερευνήσουμε πώς η τεχνολογία πίσω από τον υπολογισμό συμπλέγματος και φτιάχνουμε το δικό μας Bramble Pi!

Βήμα 1: Παρακολουθήστε την έκδοση βίντεο

Image
Image

Έκανα επίσης μια έκδοση βίντεο δύο μερών αυτού του ακριβώς ίδιου έργου. Οπότε, αν δεν είστε για διάβασμα, γυρίστε πίσω και δείτε τα βίντεο! Λάβετε υπόψη ότι η έκδοση βίντεο χρησιμοποιεί Raspbian Wheezy. Ωστόσο, οι παρακάτω οδηγίες είναι για το τρέχον Raspbian Distro, το οποίο είναι η Jessie τη στιγμή που το γράφω αυτό.

Βήμα 2: Τι θα χρειαστείτε

Για να ακολουθήσετε αυτό το έργο, εδώ είναι τα μέρη που θα χρειαστεί να αποκτήσετε

Ιδού τι θα χρειαστείτε:

  1. 2 ή περισσότερα Raspberry Pi
  2. Κάρτες SD για κάθε Pi
  3. Καλώδια τροφοδοσίας για κάθε Pi
  4. Τροφοδοτημένο USB Hub (προαιρετικό)
  5. Καλώδια δικτύωσης
  6. Ένας κόμβος ή ένας δρομολογητής

ΣΥΝΟΛΙΚΟ ΚΟΣΤΟΣ: 100,00 ~

Βήμα 3: Εγκατάσταση και διαμόρφωση του Raspbian

Εγκατάσταση και διαμόρφωση του Raspbian
Εγκατάσταση και διαμόρφωση του Raspbian
Εγκατάσταση και διαμόρφωση του Raspbian
Εγκατάσταση και διαμόρφωση του Raspbian

Μόλις έχετε όλα τα μέρη, το επόμενο βήμα είναι να κάνετε λήψη και διαμόρφωση του Raspbian OS σε ένα από τα Raspberry Pi. Αυτός θα είναι ο κύριος σου Πι. Εδώ είναι τα βήματα:

  1. Κατεβάστε την εικόνα Raspbian από εδώ.
  2. Γράψτε την εικόνα Raspbian σε κάθε κάρτα SD που έχετε για κάθε Raspberry Pi.

    1. Εάν έχετε Windows, μπορείτε να ακολουθήσετε αυτές τις οδηγίες.
    2. Εάν έχετε Mac, μπορείτε να ακολουθήσετε αυτές τις οδηγίες.
  3. Μόλις η εικόνα εγγραφεί στην κάρτα SD σας, τοποθετήστε την σε κάθε ένα από τα Raspberry Pi και εκκινήστε την.
  4. Κατά την πρώτη εκκίνηση, θα πρέπει να δείτε την επιφάνεια εργασίας Rasbperry Pi. Κάντε κλικ στο εικονίδιο του μενού στην επάνω αριστερή γωνία και μεταβείτε στις Προτιμήσεις> Διαμόρφωση Raspberry Pi. Εδώ είναι οι επιλογές που θα χρειαστεί να διαμορφώσουμε

    1. Αναπτύξτε το Σύστημα αρχείωνΑν χρειαστεί.
    2. Αλλάξτε το όνομα κεντρικού υπολογιστή σε Pi01
    3. Αλλάξτε την επιλογή εκκίνησης σε CLI (Διεπαφή γραμμής εντολών), δεδομένου ότι δεν θα χρησιμοποιήσουμε πραγματικά τη διεπαφή επιφάνειας εργασίας.
    4. Ρολόι στην καρτέλα "Διεπαφές" και βεβαιωθείτε ότι το SSH είναι ενεργοποιημένο.
    5. Κάντε κλικ στην καρτέλα "Overclock" και επιλέξτε "Turbo".
    6. Αλλάξτε τη μνήμη GPU σε 16mb.
    7. Κάντε κλικ στην καρτέλα "Τοπικοποίηση" και ορίστε τη διάταξη του πληκτρολογίου σας ώστε να ταιριάζει με αυτήν των χωρών σας.
    8. Ολοκληρώστε τη διαμόρφωση και επανεκκινήστε το Pi σας.

Βήμα 4: Εγκατάσταση του MPICH

Εγκατάσταση του MPICH
Εγκατάσταση του MPICH
Εγκατάσταση του MPICH
Εγκατάσταση του MPICH
Εγκατάσταση του MPICH
Εγκατάσταση του MPICH
Εγκατάσταση του MPICH
Εγκατάσταση του MPICH

Χρησιμοποιώντας μόνο το ένα Pi ως κύριο, πρέπει τώρα να εγκαταστήσουμε το κύριο λογισμικό που θα μας επιτρέψει να χρησιμοποιήσουμε την επεξεργαστική ισχύ όλων των Pi στο δίκτυό μας. Αυτό το λογισμικό ονομάζεται MPICH, το οποίο είναι μια διεπαφή μετάδοσης μηνυμάτων. Δείτε τι πρέπει να κάνετε για να το εγκαταστήσετε:

sudo apt-get ενημέρωση

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 επανεκκίνηση

mpiexec -n 1 όνομα κεντρικού υπολογιστή

Αυτές οι εντολές θα κατεβάσουν και θα εγκαταστήσουν το MPICH, καθώς και θα το προσθέσουν ως διαδρομή στο αρχείο εκκίνησης BASHRC. Η τελευταία εντολή εκτελεί μια δοκιμή για να διαπιστωθεί εάν λειτουργεί. Εάν η τελευταία εντολή επιστρέψει "Pi01", τότε τα κάνατε όλα με επιτυχία.

Βήμα 5: Εγκατάσταση του MPI4PY

Εγκατάσταση MPI4PY
Εγκατάσταση MPI4PY
Εγκατάσταση MPI4PY
Εγκατάσταση MPI4PY
Εγκατάσταση MPI4PY
Εγκατάσταση MPI4PY

Όπως είναι, το MPICH μπορεί να εκτελέσει προγράμματα C και Fortran. Αλλά επειδή το Raspberry Pi έχει προεγκατεστημένο το περιβάλλον κωδικοποίησης Python, θα ήταν ευκολότερο να εγκαταστήσετε έναν διερμηνέα Python σε MPI. Ακολουθούν οι εντολές για να το κάνετε:

sudo aptitude install python-dev

wget

tar -zxf mpi4py -1.3.1

cd mpi4py-1.3.1

python setup.py build

python setup.py install

εξαγωγή PYTHONPATH =/home/pi/mpi4py-1.3.1

mpiexec -n 5 python demo/helloworld.py

Αυτή η τελευταία εντολή πρέπει να επιστρέψει πέντε απαντήσεις. Κάθε μία είναι μια διαφορετική διαδικασία στο Pi01 που τρέχει το πρόγραμμα python "Hello World" που μόλις φτιάξαμε.

Βήμα 6: Αντιγραφή της εικόνας

Αντιγραφή της Εικόνας
Αντιγραφή της Εικόνας

Τώρα που διαμορφώσαμε επιτυχώς το κύριο Pi μας, πρέπει να αντιγράψουμε την εικόνα της κάρτας SD του Pi σε όλα τα άλλα Pi. Δείτε πώς μπορείτε να το κάνετε αυτό στα Windows:

  1. Βγάλτε την κύρια κάρτα SD από το Pi και τοποθετήστε την στον υπολογιστή σας.
  2. Χρησιμοποιώντας το Win32DiskImager, χρησιμοποιήστε το κουμπί "Ανάγνωση" για να αποθηκεύσετε τα περιεχόμενα της κάρτας SD στον υπολογιστή σας.
  3. Εξαγάγετε την κύρια κάρτα SD και τοποθετήστε μια κάρτα SD για μία από τις άλλες Pi. Στη συνέχεια, χρησιμοποιήστε την επιλογή "Γράψτε" Win32DiskImager για να γράψετε την εικόνα που αποθηκεύσαμε στη νέα κάρτα SD.
  4. Επαναλάβετε το βήμα 3 μέχρι να γράψετε την κύρια εικόνα σε όλες τις κάρτες SD.

Βήμα 7: Διαμόρφωση των υπολειπόμενων Raspberry Pi's

Διαμόρφωση των υπολειπόμενων Raspberry Pi's
Διαμόρφωση των υπολειπόμενων Raspberry Pi's
Διαμόρφωση των υπολειπόμενων Raspberry Pi's
Διαμόρφωση των υπολειπόμενων Raspberry Pi's
Διαμόρφωση των υπολειπόμενων Raspberry Pi's
Διαμόρφωση των υπολειπόμενων Raspberry Pi's

Τώρα που έχουμε προετοιμάσει όλες τις κάρτες SD, τοποθετήστε ξανά την κάρτα Master SD στο Master Pi, συνδέστε την σε δρομολογητή και εκκινήστε την αντίγραφο ασφαλείας. Στη συνέχεια, για τα υπόλοιπα Raspberry Pi, τοποθετήστε κάρτες SD σε όλες, συνδέστε τις στον ίδιο δρομολογητή με το Master Pi και, στη συνέχεια, εκκινήστε τις όλες. Κανένα από τα δευτερεύοντα Pi δεν χρειάζεται να έχει πληκτρολόγια, ποντίκια ή οθόνες.

Μόλις ενεργοποιηθούν όλα τα Pi, χρησιμοποιώντας το Master Pi, θα πρέπει να είμαστε σε θέση να λάβουμε τις διευθύνσεις IP κάθε Pi στο δίκτυο. Να πώς:

  1. Πρώτα εγκαταστήστε το NMAP

    sudo apt-get ενημέρωση

    sudo apt-get install nmap

  2. Στη συνέχεια, λάβετε την τρέχουσα IP για το κύριο Pi

    ifconfig

  3. Τώρα μπορείτε να σαρώσετε το υποδίκτυο των δρομολογητών σας για τις άλλες διευθύνσεις IP Pi

    sudo nmap -sn 192.168.1.*

Αντιγράψτε όλες τις διευθύνσεις IP που σχετίζονται με τις άλλες Raspberry Pi στο δίκτυο. Στη συνέχεια, θα μπορούμε να χρησιμοποιήσουμε αυτά τα IP για να συνδεθούμε σε κάθε ένα από τα άλλα Pi χρησιμοποιώντας SSH. Αυτό που πρέπει να κάνουμε πρώτα είναι να μετονομάσουμε καθένα από τα δευτερεύοντα Pi σε ένα μοναδικό όνομα δικτύου. Αυτή τη στιγμή είναι όλα ρυθμισμένα στο Pi01. Αν υποθέσουμε ότι μία από τις διευθύνσεις IP του δευτερεύοντος Pi είναι 192.168.0.3, δείτε πώς μπορείτε να συνδεθείτε σε αυτό και να αλλάξετε το όνομά του:

  1. Δημιουργήστε μια σύνδεση SSH

    ssh [email protected]

  2. Εκτελέστε το raspi-config

    sudo raspi-config

  3. Στη διεπαφή, μετακινηθείτε προς τα κάτω στην επιλογή Για προχωρημένους και, στη συνέχεια, επιλέξτε Όνομα κεντρικού υπολογιστή.
  4. Για το όνομα κεντρικού υπολογιστή, αλλάξτε Pi01 στον επόμενο διαδοχικό αριθμό, που είναι Pi02.
  5. Στη συνέχεια, βγείτε από τη συνεδρία SSH

    έξοδος

Θέλετε να επαναλάβετε αυτά τα βήματα για καθένα από τα άλλα Pi στο δίκτυο μετονομάζοντάς τα σε Pi03, Pi04 κ.λπ.

Στο master Pi σας, θέλετε να δημιουργήσετε ένα νέο αρχείο κειμένου που ονομάζεται "machinefile"

νανο μηχανικο αρχειο

Και σε αυτό, θέλετε να πληκτρολογήσετε κάθε διεύθυνση IP του Pi (συμπεριλαμβανομένης της κύριας διεύθυνσης IP) σε μια νέα γραμμή και, στη συνέχεια, να αποθηκεύσετε το αρχείο.

Σε αυτό το σημείο, θα μπορούσαμε να εκτελέσουμε ένα δοκιμαστικό αρχείο χρησιμοποιώντας

mpiexec -f machinefile -n 4 όνομα κεντρικού υπολογιστή

αλλά θα σφάλσει λέγοντας ότι υπήρξε "αποτυχία επαλήθευσης κλειδιού κεντρικού υπολογιστή". Στο επόμενο βήμα, ας το διορθώσουμε.

Βήμα 8: Επαλήθευση κλειδιών κεντρικού υπολογιστή

Επαλήθευση κλειδιών κεντρικού υπολογιστή
Επαλήθευση κλειδιών κεντρικού υπολογιστή
Επαλήθευση κλειδιών κεντρικού υπολογιστή
Επαλήθευση κλειδιών κεντρικού υπολογιστή
Επαλήθευση κλειδιών κεντρικού υπολογιστή
Επαλήθευση κλειδιών κεντρικού υπολογιστή

Για να το διορθώσουμε έτσι ώστε η επικοινωνία με κάθε Pi να μην έχει ως αποτέλεσμα την αποτυχία επαλήθευσης κλειδιού κεντρικού υπολογιστή, πρέπει να δημιουργήσουμε και να ανταλλάξουμε κλειδιά για καθένα από τα Raspberry Pi. Αυτό το μέρος μπορεί να γίνει ελαφρώς περίπλοκο, αλλά ελπίζουμε ότι μπορείτε να μείνετε μαζί μου.

  1. Στο Master Pi, στον προεπιλεγμένο αρχικό φάκελο, δημιουργήστε ένα νέο κλειδί.

    cd

    ssh-keygen

  2. Μεταβείτε στο φάκελο ssh και αντιγράψτε το αρχείο κλειδιού σε ένα νέο αρχείο που ονομάζεται "pi01"

    cd.ssh

    cp id_rsa.pub pi01

  3. Στη συνέχεια, θέλετε να συνδεθείτε μέσω SSH στο Pi02 και επαναλάβετε τα ίδια βήματα για να δημιουργήσετε ένα κλειδί Pi02

    ssh [email protected]

    ssh-keygen

    cd.ssh

    cp id_rsa.pub pi02

  4. Πριν βγούμε από το Pi02, πρέπει να αντιγράψουμε το κλειδί Pi01 σε αυτό και να το εξουσιοδοτήσουμε.

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

    cat pi01 >> εξουσιοδοτημένα κλειδιά

    έξοδος

  5. Με το Pi02 ολοκληρωμένο, επαναλάβετε όλα αυτά τα βήματα για το Pi03

    ssh [email protected]

    ssh-keygen

    cd.ssh

    cp id_rsa.pub pi03

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

    cat pi01 >> εξουσιοδοτημένα κλειδιά

    έξοδος

  6. Επαναλάβετε το τελευταίο βήμα για τα υπόλοιπα Pi που έχετε στο δίκτυό σας.
  7. Αφού δημιουργήσετε κλειδιά για καθένα από τα Pi, βγείτε πίσω στο Master Pi και αντιγράψτε όλα τα κλειδιά που δημιουργήθηκαν σε καθένα από τα Pi.

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

    cat pi02 >> εξουσιοδοτημένα κλειδιά

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

    cat pi03 >> εξουσιοδοτημένα_κλειδιά

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

    cat pi04 >> εξουσιοδοτημένα_κλειδιά

  8. (επαναλάβετε για όσα Pi υπάρχουν στο δίκτυό σας)

Βήμα 9: Εκτέλεση προγράμματος στον υπερυπολογιστή σας

Εκτέλεση προγράμματος στον υπερυπολογιστή σας
Εκτέλεση προγράμματος στον υπερυπολογιστή σας
Εκτέλεση προγράμματος στον υπερυπολογιστή σας
Εκτέλεση προγράμματος στον υπερυπολογιστή σας
Εκτέλεση προγράμματος στον υπερυπολογιστή σας
Εκτέλεση προγράμματος στον υπερυπολογιστή σας

Τώρα όλα πρέπει να ρυθμιστούν. Ενώ εξακολουθείτε να χρησιμοποιείτε το Master Pi, δοκιμάστε να εκτελέσετε ξανά αυτό το αρχείο μηχανής:

cd

mpiexec -f machinefile -n 4 όνομα κεντρικού υπολογιστή

Εάν όλα έγιναν σωστά, θα πρέπει να επιστρέψει τις διευθύνσεις IP όλων των Raspberry Pi's. Τώρα που δοκιμάσαμε με επιτυχία τον υπερυπολογιστή μας, ας τρέξουμε ένα πρόγραμμα python σε αυτό:

  1. Λήψη και αποσυμπίεση του δοκιμαστικού σεναρίου Python cracking password.

    wget

    tar -zxf python_test.tar.gz

  2. Επεξεργαστείτε τον κωδικό πρόσβασης κωδικού πρόσβασης σε έναν που θέλετε να σπάσετε.

    nano python_test/md5_attack.py

  3. Αντιγράψτε το αρχείο Python σε όλα τα 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. (επαναλάβετε για όλα τα υπόλοιπα Pi)
  5. Εκτελέστε το σενάριο python.

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

Το σενάριο θα εκτελεστεί χρησιμοποιώντας την επεξεργαστική ισχύ όλων των Pi του δικτύου σας! Μη διστάσετε να το δοκιμάσετε χρησιμοποιώντας το δικό σας σενάριο python!

Διαγωνισμός Raspberry Pi 2016
Διαγωνισμός Raspberry Pi 2016
Διαγωνισμός Raspberry Pi 2016
Διαγωνισμός Raspberry Pi 2016

Τρίτο βραβείο στο Raspberry Pi Contest 2016

Συνιστάται: