wiki:UsingBenito

Version 1 (modified by mikeryan, 13 years ago) (diff)

first cut at docs

Using Benito

Benito is a containerized virtualization system which currently runs on the DETER testbed.

Disclaimer

Note that this software is currently very very alpha. We have made every effort to make the system as stable as possible, but it has not been heavily used. Expect to run into bugs.

If and when you do encounter a bug you can either file a ticket or email the author directly at mikeryan@….

How it works

Currently Benito uses DETER as a substrate for experiments. This means that an experiment using Benito containers appears to the DETER testbed and web interface as a typical experiment. The NS file for the host experiment is annotated with a variety of Benito-related commands.

When you create an experiment using Benito, you will interact with it through facilities provided by DETER. The swap in/out process is controlled by the DETER web interface, and you will access your virtual nodes like any other node from users.isi.deterlab.net.

Getting Started

Prerequisites

Prepare your NS or TopDL file as you would for any other DETER experiment.

Before running your experiment you should determine the DETER PID and EID under which you'll run the experiment. The EID should not refer to an existing experiment.

You will need to specify a parameter called "packing". This parameter describes how many qemu virtual nodes will be embedded on each physical node. The host machines have four cores each, so for compute-bound tasks this value should not be higher than 4. For less CPU-intensive tasks, this number can in theory be as high as 10 or 20 (perhaps higher).

Creating the experiment

Once you have determined the parameters described above, you may start an experiment by logging in to users.isi.deterlab.net and running these commands:

$ cd /share/benito
$ ./qemu_experiment.py <PID> <EID> <ns-or-topdl-file> <packing>

Upon successful creation, you will be presented with a URL for accessing your experiment via the web interface.

It takes 1-2 minutes for DETER to create the experiment. The creation process has successfully completed once DETER reports "Status: swapped".

Swapping in

Swap in the DETER experiment like any other: click the "Swap Experiment In" link on the left side of the experiment page.

From DETER's perspective, the swap in process should complete in 3-5 minutes, at which point you will be notified "Experiment successfully swapped in".

After this, it takes another 3-5 minutes for Benito to set up the physical nodes and launch the virtual nodes. This process is complete when the "Startup Status" for each node is reported as 0 or 1.

If the startup status is 1, there was an error setting up the physical node as a virtual host. Please let me know if this happens and I can see what caused the problem. You can always try to swap in and out to see if the problem resolves itself.

Swapping out

Swap the experiment out like any other.

Modifying the experiment

We do not currently support any form of experiment modification. If you wish to modify your experiment, you must terminate the DETER experiment (not just swap out, but properly terminate) and then start a new benito experiment using the process outlined above.

What's Missing

The following is a list of missing features that will probably cause you some pain and suffering. Actually implementing these features is my highest priority task at the moment, so please bear with me for the time being.

  • Any way of getting a list of nodes and/or node status
  • Node start commands
  • Ability to choose a different OS than Ubuntu 10.10 (Maverick)
  • Ability to install software using apt on Ubuntu (and any other OS)