[[TOC(Documentation/C*, depth=3)]] = How to get started = First, you will need an ORBIT account. Please check the [wiki:Documentation/BUsagePolicy usage policy] if you are eligible. Typically, in order to get an account, one would have to [http://www.orbit-lab.org/userManagement/register register for a user account] and get it approved by the PI in charge of the project/institution they wish to be part of. If the particular institution is not available on the user account registration page, the appropriate PI can [http://www.orbit-lab.org/userManagement/orgReg register for an institutional account]. '''IMPORTANT:''' Once you have an account, [wiki:Documentation/bAccountManagement/DSSHConf configure your ssh client] to use key based authentication. == Six Steps == A typical experiment requires the following six steps: [[CollapsibleStart(1. Create a resource reservation)]] The user needs a set of nodes/resources from a domain to run the experiment on. [[Include(Documentation/Short/CreateRes)]] ''For the rest of this tutorial we will assume that the reservation was made for the sb1 domain.'' [[CollapsibleEnd]] [[CollapsibleStart(2. Login into reserved domain)]] After you receive the reservation confirmation email, you can access the reserved domain by SSH'ing to the corresponding domain console. [[Include(Documentation/Short/Login)]] [[CollapsibleEnd]] [[CollapsibleStart(3. Load an image onto the nodes)]] Prior to executing the "Hello World" experiment, users need to install a system image on the hard disks of the nodes. For this tutorial we will use '''baseline.ndz'''. This image is built on top of '''Ubuntu 14.04''', and is pre-configured with the proper modules and start up scripts to take advantage of the rest of the Orbit [wiki:/Software software] / [wiki:/Hardware hardware]. The imaging process will turn the nodes off after completing imaging. [[Include(Documentation/Short/LoadImage)]] [[CollapsibleEnd]] [[CollapsibleStart(4. Turn the nodes on)]] At this point the nodes' disks are imaged with the ''baseline'' image and need to be turned back on before proceeding. Use the `omf tell` command to turn the nodes on and give them a couple of minutes to boot, then check their status with `omf stat`. [[Include(Documentation/Short/TellOn)]] [[CollapsibleEnd]] [[CollapsibleStart(5. Execute the experiment)]] `omf exec test:exp:tutorial:hello-world-wireless -- --res1 node1-1.sb1.orbit-lab.org --res2 node1-2.sb1.orbit-lab.org` [[Include(Software/cOMF/aExec)]] Execute "Hello World" experiment. This is a simple wireless experiment that establishes the !WiFi link between two nodes and transfers data for 60 seconds. Be sure to specify the fully qualified domain names (FQDNs) of the two nodes involved. For the output below, it is assumed that the domain is: '''sb1.orbit-lab.org''' and the two nodes are '''node1-1.sb1.orbit-lab.org''' and '''node1-2.sb1.orbit-lab.org'''. {{{ username@console.sb1:~$ omf exec test:exp:tutorial:hello-world-wireless -- --res1 node1-1.sb1.orbit-lab.org --res2 node1-2.sb1.orbit-lab.org INFO NodeHandler: OMF Experiment Controller 5.4 (git c005675) INFO NodeHandler: Slice ID: default_slice (default) INFO NodeHandler: Experiment ID: default_slice-2013-01-29t01.03.19-05.00 INFO NodeHandler: Message authentication is disabled INFO Experiment: load system:exp:stdlib INFO property.resetDelay: resetDelay = 230 (Fixnum) INFO property.resetTries: resetTries = 1 (Fixnum) INFO Experiment: load system:exp:eventlib INFO Experiment: load test:exp:tutorial:hello-world-wireless INFO property.duration: duration = 60 (Fixnum) INFO property.graph: graph = false (FalseClass) INFO Topology: Loading topology 'system:topo:imaged'. INFO Topology: Loading topology '/tmp/pxe_slice-2013-01-26t22.21.22-05.00-topo-success'. INFO ALL_UP_AND_INSTALLED: Event triggered. Starting the associated tasks. INFO exp: This is my first OMF experiment INFO exp: Request from Experiment Script: Wait for 15s.... INFO node1-1.sb1.orbit-lab.org: Device 'net/w0' reported Not-Associated INFO node1-2.sb1.orbit-lab.org: Device 'net/w0' reported Not-Associated INFO node1-1.sb1.orbit-lab.org: Device 'net/w0' reported 12:B2:78:8E:8D:4F INFO node1-2.sb1.orbit-lab.org: Device 'net/w0' reported 12:B2:78:8E:8D:4F INFO exp: All my Applications are started now... INFO exp: Request from Experiment Script: Wait for 60s.... INFO exp: All my Applications are stopped now. INFO EXPERIMENT_DONE: Event triggered. Starting the associated tasks. INFO NodeHandler: INFO NodeHandler: Shutting down experiment, please wait... INFO NodeHandler: INFO run: Experiment default_slice-2013-01-29t01.03.19-05.00 finished after 1:23 username@console.sb1:~$ }}} [[CollapsibleEnd]] [[CollapsibleStart(6. View experiment results)]] You can view the results by pointing a web browser to url of this form: {{{ http://console.sb1.orbit-lab.org:5054/result/dumpDatabase?expID=EXPERIMENT_ID. }}} The EXPERIMENT_ID is an auto-generated string that is reported during the run of the experiment. In this case it was {{{ INFO NodeHandler: Experiment ID: default_slice-2013-01-29t01.03.19-05.00 }}} It should look something like:[[BR]] [[Image(Result.png,500px)]][[BR]] More information on result analysis can be found [wiki:/Tutorials/a0Basic/Tutorial3 here] [[CollapsibleEnd]] [[CollapsibleStart(7. (optionally) Save the node image)]] If you modified the baseline image and/or added software to it, you may want to save it into the repository '''before the end of your time slot'''. [[Include(Documentation/Short/SaveImage)]] [[CollapsibleEnd]] == Where to go from here == If you are still unsure what Orbit is, please read the [wiki:FAQ FAQ] and check other [wiki:Tutorials tutorials].