Welcome‎ > ‎

Simple Raspberry Pi Clusters

A cluster is a group of computers connected together via a network. Clusters are used to run parallel and distributed programs, provide distributed services, and are the basis for cloud computing. Derek Dang and Alec Taggart have developed cluster software to make it extremely easy to configure and run a cluster of Raspberry Pi computers. Their software provides a platform to explore parallel and distributed concepts and implementations, especially in the context of a class. Believing their software and low-cost Raspberry Pi Zero computers is feasible for every student to have their own cluster for projects and coursework. We have ask Derek and Alec their methodology of creating and presenting their project.

What inspired you to create your Raspberry Pi Cluster Project?

The project was the brainchild of our professor and mentor Greg Benson who inspired us to bring it to life. The goal is to make it easy for students and instructors to own and experiment with personal clusters for learning how cloud computing, big data processing, and distributed systems work.

What tools have you used in your project?

One question we needed to answer during this project was “How can we quickly develop and generate Linux operating system images for testing?” To answer this question we tested a few different machines and ended up having a machine placed on the CS network so we could work remotely and generate full sized images whenever we needed to. Outside of hardware we made use of previously acquired knowledge of Raspberry Pi machines.

Have you developed new skills while working on this project?

Mainly we developed a deeper understanding of teamwork-based coding and the software development process. We also picked up some skills like complex Bash scripting and remote procedure calls. Leaving us with a deep understanding of Linux-based operating systems.

What has been one of the biggest surprises?

In concept this project isn’t very intimidating but in reality the biggest surprise has been how much time we have put into the project. Derek and I spent countless hours just trying to understand the codebase we were working with. Not to mention how many computers we went through trying to find a good working machine to produce our images on.

What do you hope the impact of your project will be?

Our hope for this project is to change the way students learn computer science concepts. We are developing a solution that can not only help students learn complex concepts but also put students on the same work platform eliminating cross platform confusion. We are hoping to see our clusters implemented in a class at USF in the next few years.

Who or what was a influence or mentor during your project?

Our main influence and mentor was our professor Greg Benson. Benson has consistently provided us with amazing projects in our classes.He has really showed Derek and I the importance of understanding how something works down to the ones and zeros.

What steps do you have to bring Raspberry Pi Cluster Zero to students?

We are currently working on porting all of our work over to the new Pi Zero clusters. From there we will be working on the best way to get the Pi Zeros (an even smaller computer compared to the Pi 3) to communicate without the need of a network switch. We will also be writing code examples to show how the clusters can be used to teach different topics along with sourcing custom made cases for the clusters.