Cloudmesh Raspberry Cloud Clusters¶
This project can also be taken as an independent study or as part of the Cloud Engineering class.
If an online student (not living in Bloomington) like to do this project, they do have to purchase at minimum 3 Rasberry Pi’s. As well as a network hub.
Residential students will have access to 100+ Raspberry Pi’s to build a cluster. They can for the duration of the class obtain 10 Pi’s and 2 network hubs in a non-smoker environment.
This is an ideal project for those that like to build their own cloud cluster
Residential students will need to focus on building a multi-cluster environment.
This project may be a prerequisite to other Pi projects.
Goals¶
In this project, you will be further developing and using the cloudmesh
cm-burn
command to create SD cards with network and host information
to create a cluster from Raspberry Pi’s.
In fact, residential students will build multiple such clusters. We will install sshd and docker on the clusters. In the project, you can also experiment with deploying Kubernetes.
You will be testing the cm burn code and improve if improvements are needed. You will be documenting how to create the cluster and set up the network.
You will be showcasing the cluster(s) using ssh and container applications.
Requirements¶
Basic knowledge of python or a programming language as all programming is done in python. Python is easy to learn. Access to at least 3 Raspberry Pi’s. Minimal knowledge of networking is required, which however can be obtained during the project.
This project must report on a weekly basis.
Difficulty¶
easy: For a single cluster this project is easy as much of the work has been done. However, network specifications need to be explored.
moderate: For a multicluster environment some more work is needed and networking configurations have to be identified.
Deliverables¶
Update to the newest Raspbian
Working command to set up the cluster.
Manual on how to do the setup.
check-ins into GitHub by all team members. If only one team member checks in all other team members will not get credit.
Collaborate with all teams that do this project so we can get benchmarks for all clouds and compare the results not only within your team, but all teams.