Changes between Initial Version and Version 1 of UsingBenito


Ignore:
Timestamp:
Jun 27, 2011 11:14:07 AM (13 years ago)
Author:
mikeryan
Comment:

first cut at docs

Legend:

Unmodified
Added
Removed
Modified
  • UsingBenito

    v1 v1  
     1[[TOC]]
     2
     3= Using Benito =
     4
     5Benito is a containerized virtualization system which currently runs on the DETER testbed.
     6
     7== Disclaimer ==
     8
     9Note 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.
     10
     11If and when you do encounter a bug you can either [/newticket file a ticket] or email the author directly at mikeryan@ISI.EDU.
     12
     13== How it works ==
     14
     15Currently 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.
     16
     17When 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}}}.
     18
     19== Getting Started ==
     20
     21=== Prerequisites ===
     22
     23Prepare your NS or TopDL file as you would for any other DETER experiment.
     24
     25Before 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.
     26
     27You 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).
     28
     29=== Creating the experiment ===
     30
     31Once you have determined the parameters described above, you may start an experiment by logging in to {{{users.isi.deterlab.net}}} and running these commands:
     32
     33{{{
     34$ cd /share/benito
     35$ ./qemu_experiment.py <PID> <EID> <ns-or-topdl-file> <packing>
     36}}}
     37
     38Upon successful creation, you will be presented with a URL for accessing your experiment via the web interface.
     39
     40It takes 1-2 minutes for DETER to create the experiment. The creation process has successfully completed once DETER reports "Status: swapped".
     41
     42=== Swapping in ===
     43
     44Swap in the DETER experiment like any other: click the "Swap Experiment In" link on the left side of the experiment page.
     45
     46From DETER's perspective, the swap in process should complete in 3-5 minutes, at which point you will be notified "Experiment successfully swapped in".
     47
     48After 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.
     49
     50If 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.
     51
     52=== Swapping out ===
     53
     54Swap the experiment out like any other.
     55
     56=== Modifying the experiment ===
     57
     58We 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.
     59
     60== What's Missing ==
     61
     62The 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.
     63
     64 * Any way of getting a list of nodes and/or node status
     65 * Node start commands
     66 * Ability to choose a different OS than Ubuntu 10.10 (Maverick)
     67 * Ability to install software using apt on Ubuntu (and any other OS)