Changes between Version 3 and Version 4 of UsersGuide


Ignore:
Timestamp:
Oct 15, 2012 11:50:17 AM (12 years ago)
Author:
Ted Faber
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • UsersGuide

    v3 v4  
    5151The last parameter is the file containing the topology.  That can be an ns2 file, like [attachment:example1.tcl our example], or a [http://fedd.deterlab.net/wiki/TopDl topdl] description.  An ns2 description must end in {{{.tcl}}} or {{{.ns}}}.
    5252
     53With these default parameters {{{containerize.py}}} will put each node into an [http://openvz.org Openvz container] with about 10 containers per physical node.
     54
    5355Running the command above on users -- '''make sure you run it with a project you are a member of''' -- yields:
    5456
     
    6769[[Image(experiment-page.png)]]
    6870
     71This may surprise you.  In particular, you may be surprised to see that DETER thinks the experiment has only one node:
     72
     73[[Image(highlighted.png)]]
     74
     75The containers system has rewritten the description file and stored additional information in the experiment's per-experiment directory that will be used to create the 11 node experiment inside the single-node DETER experiment.  If you look at the ns file DETER has stored (the NS file tab on the experiment page), you will see this file:
     76
     77{{{
     78set ns [new Simulator]
     79source tb_compat.tcl
     80
     81tb-make-soft-vtype container0 {pc2133 bpc2133 MicroCloud}
     82set pnode(0000) [$ns node]
     83tb-set-node-os ${pnode(0000)} CentOS6-64-openvz
     84tb-set-hardware ${pnode(0000)} container0
     85tb-set-node-startcmd ${pnode(0000)} "sudo /share/containers/setup/hv/bootstrap /proj/DeterTest/exp/example1/containers/site.conf >& /tmp/container.log"
     86tb-set-node-failure-action ${pnode(0000)} "nonfatal"
     87
     88$ns rtproto Static
     89$ns run
     90}}}
     91
     92That looks nothing like the file we gave to {{{containerize.py}}}, but it does show us a little about what the containers system has done.  The single physical node ({{{pnode(0000)}}}) will run the {{{CentOS6-64-openvz}}} image and run on a few kinds of node.  On startup {{{pnode(0000)}}} will execute a command from the same {{{/share/containers}}} directory that {{{containerize.py}}} ran from using data in the per-experiment directory {{{/proj/DeterTest/exp/example1/containers/site.conf}}}.
     93
     94There is a separate {{{/proj/DeterTest/exp/example1/containers/}}} directory for each experiment.  The path element fater {{{/proj}}} is replaced with the project under which the experiment was created, {{{DeterTest}}} in this example, and the element after {{{exp}}} is the experiment name, {{{example1}}} in this case.  These directories are created for all DETER experiments.  The {{{containers}}} sub-directory holds information specific to a containerized experiment.
     95
     96There are a few useful bits of data in that per-experiment containers directory that we can look at.  To avoid the long pathname we will talk about files in {{{containers/}}}, the subdirectory.
     97
     98First, a copy of the topology that we gave to {{{containerize.py}}} is available in {{{/proj/DeterTest/exp/example1/containers/experiment.tcl}}}.  If the experiment is created from a topdl file, the filename will be {{{containers/experiment.tcl}}}.
     99
     100A simple vizualization of the experiment is in {{{containers/visualization.png}}}.  This is annotated with node and network names as well as interface IP addresses.  The topology depiction [attachment:visualization-small.png above] is an example.  A larger version is also attached.