Code Monkey home page Code Monkey logo

project-jamie's Introduction

Hello. This is Project Jamie.

==========================================================================

DESCRIPTION

This distribution of Linux allows people to quickly convert a
heterogeneous collection of machines into a cluster computer.
Since this distro is also a Live CD, there is no software to
install on the cluster nodes.

The latest version is called "Indiana Linux Fest Build" (version 0.8)
(since this was the most recent conference where this work was
demonstrated.)

Note: This distro is preconfigured with SSH keys so that any
copy of the distro can immediately reach any other copy of
this distro without the need for a password. This is an open
security door, which means you should run your cluster behind
a firewall. You have been warned.

March 29, 2011

===================================
For the rushed:
===================================

- sudo apt-get install live-helper qemu cdrecord
- make
- (Stick a CD into the computer.)
- cdrecord -v -eject livecd/binary.iso # Repeat this step multiple times.
- Boot each computer in your new cluster using the Project Jamie Live CD.
- Run the command "configurejamie master" on the desired master node. Note the IP address.
- Run the command "configurejamie worker IP_ADDRESS" on each of the worker nodes.

===================================
How to build and execute the project:
===================================

Step 0: Preparing to build the project.

Required elements for this project:
(i.e. Better get these programs before you begin)

 - Debian Live Magic
 - cdrecord (For burning the ISO to a CD)
 - qemu (For running the ISO in a virtual machine.)
 - An Internet Connection
 - About 5-30 minutes depending on your Internet connection.

To get everything in one step:

$ sudo apt-get install live-helper qemu cdrecord

Step 1: Build the project.

Our build script is a Makefile. To execute it, run this command:

$ make

Step 2: Burn the iso and boot the Live CD --OR-- Launch the distro as a virtual machine.

To burn the ISO:

$ cdrecord -v -eject livecd/binary.iso

To launch the ISO as a virtual machine:

$ sudo sh runNodeInQEMU.sh 46

(Here, the 46 represents the last two digits of the MAC address. Each MAC address must be different.)

Step 3: Configure the cluster.

For each computer (or virtual machine), pick one to be the master node. Run this command on that machine:

$ configurejamie master

This should report on the screen the IP address. Write this down. On each of the workers, run this command:

$ configurejamie worker IP_ADDRESS_OF_MASTER

You now have a cluster computer.

===================================
CONTRIBUTORS
===================================

James Church (@jcchurch on twitter)
John Stitt (@jmstitt on twitter)
Alex Conrey (@alexconrey on twitter)


==========================================================================

LICENSE

#   Project Jamie is free software: you can redistribute it and/or modify
#   it under the terms of the GNU General Public License as published by
#   the Free Software Foundation, either version 3 of the License, or
#   (at your option) any later version.

#   Project Jamie is distributed in the hope that it will be useful,
#   but WITHOUT ANY WARRANTY; without even the implied warranty of
#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#   GNU General Public License for more details.

#   You should have received a copy of the GNU General Public License
#   along with Project Jamie.  If not, see <http://www.gnu.org/licenses/>.

All code specific to Project Jamie is licensed under the GPL, and 
you are free to do with it whatever you'd like under the terms of
that license.  Code that is included but was not made by the Project
Jamie team for the purposes of the project is licensed by its creators
under the licenses that they have chosen.

project-jamie's People

Contributors

ajwak95 avatar jcchurch avatar sp0rus avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

sp0rus

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.