Skip to content
andyk edited this page Jan 15, 2011 · 18 revisions

The RAD Lab Demo

The Demo project allows you to run a scala console with access to some special objects and methods that allow you to launch an EC2 cluster (via deploylib) and run a variety of RAD Lab systems software such as a Mesos master and slaves.

Using the "demo" project (e.g. the demo console)

The file SCADS_HOME/demo/src/main/scala/DemoSetup.scala contains the objects/methods that are constitute the demo project. Each component that needs to be run (e.g. Mesos, meta scheduler, Scads director, Webapp director, Rain, Spark) should eventually be runnable via method such as startScadr. In order to run the demo console (and get access to these commands), do the following:

  1. Clone the SCADS git repository
  2. Download and install SBT
  3. Build a "demo" console, use the following commands:
    1. sbt (run this from inside the root SCADS directory, opens an sbt console which puts you at a ">" prompt)
    2. project demo
    3. make-packaged-classpath
  4. Open the demo console by:
    1. exiting sbt (or opening a new shell window and cd-ing to SCADS root directory again)
    2. from the SCADS root directory, run bin/mvnconsole
  5. Now you should be able to interact with any demo clusters being run by other RAD Labians or set up your own. See the next section for an overview of the commands you can use in the demo console (all the demo project includes deploylib so you have all of deploylib at your disposal in this terminal, plus some).

Deploylib commands

These commands should only be run by one person, who is the "Cluster Owner" whose EC2 credentials are used to launch the cluster (and thus others can't access the cluster via EC2 tools or with deploylibs functions which rely on those EC2 credentials)

  • MesosEC2.startMaster - start a new EC2 instance that is running a Mesos master as well as the Service Scheduler meta scheduler.
  • MesosEC2.updateDeploylib - pushes the newest deploylib jars to the slaves from S3.
  • Mesos.startSlaves(NUM_SLAVES) - start NUM_SLAVE new EC2 instances that are running Mesos slaves

Demo commands

  • startScadr - run the Scadr WebApp as a Mesos web framework.
  • setupMaster

Notes on demo integration

Clone this wiki locally