Changes between Initial Version and Version 1 of GIR2.1_ScalableMonitoring


Ignore:
Timestamp:
03/14/11 22:00:49 (13 years ago)
Author:
lnevers@bbn.com
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • GIR2.1_ScalableMonitoring

    v1 v1  
     1== Scalable Monitoring Evaluation ==
     2
     3A first version of the Scalable Monitoring Demo was made available on July 13,2010.  Software for sensor pod not available at the time.  Scalable Sensing Service (S3)information provided included:
     4
     5 * [http://illusion.hpl.hp.com/genis3monitor/scube Scalable Sending Service (S3)] page detailing project overview, ProtoGENI details, tools, papers, etc.
     6 * [http://illusion.hpl.hp.com/genis3monitor/Readme.htm README] page outlining the manual use of the tools.
     7 * [http://illusion.hpl.hp.com:8180/geni/demo.jsp SensorPod Demonstration] page which automates the manual procedure above,
     8
     9This initial version was deemed not complete and evaluation stopped.
     10
     11A second version of Scalable Monitoring Demo page was made available on July 27, 2010.  This version is the
     12the demo given at GEC8.  Pointers given for this version:
     13
     14 * [http://illusion.hpl.hp.com:8180/geni/demo.jsp SensorPod Demonstration] page.
     15 * [http://illusion.hpl.hp.com:8180/geni/demoHelp.html Basic "Help"] associated with the Scalable Monitoring Demo
     16
     17A third version of the Scalable Sensing Services code was made available on August 10, 2010. The software is
     18available at [http://illusion.hpl.hp.com/genis3monitor/scube Scalable Sensing Service] web page from the
     19'''References''' link, which point to a page including a link [http://illusion.hpl.hp.com/genis3monitor/scube.tar.gz download S3 Code].
     20This version still has all the issues with various pages not being available for review.  After several days of evaluation
     21this download version was placed on hold and no longer being evaluated.
     22
     23== Scalable Monitoring Findings ==
     24
     25=== July 13th version findings ===
     26
     271. Most of the link in the S3 web page point to an internal web server and are not available. This is to be addressed once outstanding legal approval takes place. 
     28
     292. Some link point to non-existing paths and some items that should be links are listed as text only.
     30
     31=== July 27th version findings ===
     32
     331. Step 10 in [http://illusion.hpl.hp.com:8180/geni/demoHelp.html Demo Help] page may take up to 10 minutes as S3 periodically fetches the data.  Need to add the ''Step 10'' delay to the "Help" pages.
     34
     352. The [http://illusion.hpl.hp.com/genis3monitor/scube Scalable Sending Service (S3)] page is still being revised and not available.
     36
     373. The [http://illusion.hpl.hp.com/genis3monitor/Readme.htm README] is still unchanged and requires clarifications.
     38
     39=== August 10th version findings ===
     40
     411. Extensive issues with Readme including:
     42    * Incorrect instruction for path, file names, command syntax, etc.
     43    * No context for operations.
     44    * No clear distinction between demo steps and user installed setup.
     45
     462. Significant amount of hard-coded values in package made it difficult to configure.
     47
     483. Large amount of files included in the release package that were not intended to be part of the package.
     49
     50After several exchanges about this source download, instructed to stop using the package and go back to demo page.
     51 
     52
     53== Scalable Monitoring How-to ==
     54
     55'''Scalable Monitoring Demo How-to (July 27th version)'''
     56
     571. Access to the [http://illusion.hpl.hp.com:8180/geni/demo.jsp Scalable Monitoring Demonstration] page, user is prompted to enter '''any''' user name to sign in, no registration is required:
     58
     59[[Image(2010-07-28_ScalableMonitoring-1.jpg)]]
     60
     612. After login, the user is presented with the following page:
     62
     63[[Image(2010-07-28_ScalableMonitoring-2.jpg)]]
     64
     653. At this point the user can create a sliver and choose the number of nodes by selecting "Setup->Create Sliver":
     66
     67[[Image(2010-07-28_ScalableMonitoring-3.jpg)]]
     68
     69The sliver creation will generate this type of output:
     70{{{
     71COMMAND = SLIVER
     72SLICENAME = ln_slice2_S3
     73NODES = 3
     74USER = lnevers
     75SERVER = illusion.hpl.hp.com
     76Executing command -- mkdir -p /var/lib/tomcat5.5/webapps/geni/lnevers/ln_slice2_S3
     77Executing command -- echo ln_slice2_S3 >> /var/lib/tomcat5.5/webapps/geni/lnevers/sliceList.txt
     78Executing command -- echo 3 >> /var/lib/tomcat5.5/webapps/geni/lnevers/ln_slice2_S3/Nodes.txt
     79Executing command -- echo ln_slice2_S3 > /var/lib/tomcat5.5/webapps/geni/lnevers/ln_slice2_S3/SliceNameFile.txt
     80Executing command -- /home/genis3monitor/testscripts/registerslice.py -n ln_slice2_S3
     81No such slice registered here:Got my SA credential
     82Creating new slice called ln_slice2_S3
     83New slice created
     84Executing command -- /home/genis3monitor/testscripts/createsliver.py -n ln_slice2_S3  /home/genis3monitor/testscripts/threenode.rspec
     85Got my SA credential
     86<?xml version="1.0" encoding="UTF-8"?>
     87<rspec xmlns="http://www.protogeni.net/resources/rspec/0.1"
     88       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     89       xsi:schemaLocation="http://www.protogeni.net/resources/rspec/0.1 http://www.protogeni.net/resources/rspec/0.1/request.xsd"
     90       type="request" >
     91<node virtual_id="node1"
     92        component_manager_uuid="urn:publicid:IDN+emulab.net+authority+cm"
     93       virtualization_type="emulab-vnode"
     94 
     95        tarfiles="/tmp  http://illusion.hpl.hp.com/csi.tar.gz"
     96        startup_command="/bin/sh /tmp/deploy_initialize.sh">
     97
     98        <disk_image
     99        name="urn:publicid:IDN+emulab.net+image+emulab-ops//RHL90-STD" />   
     100   <interface virtual_id="virt0"/>
     101   <interface virtual_id="virt1"/>
     102</node>
     103 
     104<node virtual_id="node2"
     105        component_manager_uuid="urn:publicid:IDN+emulab.net+authority+cm"
     106       virtualization_type="emulab-vnode"
     107 
     108        tarfiles="/tmp  http://illusion.hpl.hp.com/csi.tar.gz"
     109        startup_command="/bin/sh /tmp/deploy_initialize.sh">
     110
     111       <disk_image
     112        name="urn:publicid:IDN+emulab.net+image+emulab-ops//RHL90-STD" />
     113   <interface virtual_id="virt0"/>
     114   <interface virtual_id="virt1"/>
     115</node>
     116<node virtual_id="node3"
     117 
     118        component_manager_uuid="urn:publicid:IDN+emulab.net+authority+cm"
     119       virtualization_type="emulab-vnode"
     120 
     121        tarfiles="/tmp  http://illusion.hpl.hp.com/csi.tar.gz"
     122        startup_command="/bin/sh /tmp/deploy_initialize.sh">
     123
     124      <disk_image
     125          name="urn:publicid:IDN+emulab.net+image+emulab-ops//RHL90-STD" />
     126   <interface virtual_id="virt0"/>
     127   <interface virtual_id="virt1"/>
     128</node>
     129 
     130<link virtual_id="link0">
     131<interface_ref virtual_interface_id="virt0"
     132                 virtual_node_id="node1"/>
     133 
     134  <interface_ref virtual_interface_id="virt0"
     135                 virtual_node_id="node2"/>
     136 </link>
     137
     138<link virtual_id="link1">
     139<interface_ref virtual_interface_id="virt1"
     140                 virtual_node_id="node2"/>
     141  <interface_ref virtual_interface_id="virt0"
     142                 virtual_node_id="node3"/>
     143 </link>
     144
     145<link virtual_id="link2">
     146<interface_ref virtual_interface_id="virt1"
     147                 virtual_node_id="node3"/>
     148  <interface_ref virtual_interface_id="virt1"
     149                 virtual_node_id="node1"/>
     150 </link>
     151
     152</rspec>
     153
     154Asking for slice credential for ln_slice2_S3
     155Got the slice credential
     156Creating the Sliver ...
     157Created the sliver
     158<rspec xmlns="http://www.protogeni.net/resources/rspec/0.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.protogeni.net/resources/rspec/0.1 http://www.protogeni.net/resources/rspec/0.1/request.xsd" type="request" valid_until="2010-07-30T01:23:53">
     159
     160}}}
     161
     1624. The user can then "Allocate Machines":
     163
     164[[Image(2010-07-28_ScalableMonitoring-4.jpg)]]
     165
     166Which results in the following:
     167{{{
     168COMMAND = MACHINELIST
     169SLICENAME = ln_slice2_S3
     170USER = lnevers
     171SERVER = illusion.hpl.hp.com
     172Executing command -- ssh-keyscan -f /var/lib/tomcat5.5/webapps/geni/lnevers/ln_slice2_S3/MachineList.txt -t rsa >> /home/genis3monitor.ssh/known_hosts
     173# pc155.emulab.net SSH-1.99-OpenSSH_3.5p1
     174# pc104.emulab.net SSH-1.99-OpenSSH_3.5p1
     175# pc120.emulab.net SSH-1.99-OpenSSH_3.5p1
     176Executing command -- ssh-keyscan -f /var/lib/tomcat5.5/webapps/geni/lnevers/ln_slice2_S3/MachineList.txt  -t rsa > /var/www .ssh/known_hosts
     177# pc155.emulab.net SSH-1.99-OpenSSH_3.5p1
     178# pc104.emulab.net SSH-1.99-OpenSSH_3.5p1
     179# pc120.emulab.net SSH-1.99-OpenSSH_3.5p1
     180Executing command -- echo /var/lib/tomcat5.5/webapps/geni/lnevers/ln_slice2_S3   >> /var/lib/tomcat5.5/webapps/geni/MasterList.txt
     181Executing command -- sort -u -o /var/lib/tomcat5.5/webapps/geni/MasterList.txt /var/lib/tomcat5.5/webapps/geni/MasterList.txt
     182}}}
     183
     1845. User can view the "Sliver Status":
     185[[Image(2010-07-28_ScalableMonitoring-5.jpg)]]
     186
     187The following status is returned:
     188{{{
     189COMMAND = STATUS
     190SLICENAME = ln_slice2_S3
     191USER = lnevers
     192SERVER = illusion.hpl.hp.com
     193Executing command -- /home/genis3monitor/testscripts/sliverstatus.py  -n ln_slice2_S3 2>&1 |tee /var/lib/tomcat5.5/webapps/geni/lneversln_slice2_S3/status.txt
     194Got my SA credential. Looking for slice ...
     195Found the slice, asking for a credential ...
     196Got the slice credential, asking for a sliver credential ...
     197Got the sliver credential, asking for sliver status
     198{'status': 'ready', 'state': 'started', 'details': {'urn:publicid:IDN+emulab.net+sliver+15163': {'status': 'ready', 'state': 'started', 'component_urn': 'urn:publicid:IDN+emulab.net+node+pc155', 'error': ''}, 'urn:publicid:IDN+emulab.net+sliver+15164': {'status': 'ready', 'state': 'started', 'component_urn': 'urn:publicid:IDN+emulab.net+node+pc104', 'error': ''}, 'urn:publicid:IDN+emulab.net+sliver+15165': {'status': 'ready', 'state': 'started', 'component_urn': 'urn:publicid:IDN+emulab.net+node+pc120', 'error': ''}}}
     199}}}
     200
     2016. Measurements can now be run.  First example is Measurement Data->Periodic Measurement-> Configure Periodic Measurement:
     202[[Image(2010-07-28_ScalableMonitoring-6.jpg)]]
     203
     204Which shows the following results after submitting request:
     205{{{
     206COMMAND = FREQUENCYWRAPPER
     207TODOCMD = PING
     208SRC = pc155.emulab.net
     209DEST = pc120.emulab.net
     210FREQ = 20
     211COUNT = 30
     212INTERVAL = 10
     213SERVER = pc155.emulab.net
     214Known Command.. will operate on it
     215Assigned ID for this task: 0
     216}}}
     217
     2187. Measuraments must be deployed to the slice:
     219[[Image(2010-07-28_ScalableMonitoring-7.jpg)]]
     220
     221Submitting requirest reports the following in the status pane:
     222{{{
     223COMMAND = DEPLOYFW
     224USER = lnevers
     225SLICENAME = ln_slice2_S3
     226SERVER = illusion.hpl.hp.com
     227Executing command -- /usr/lib/cgi-bin/cronDeploy4Nodes.sh  /var/lib/tomcat5.5/webapps/geni/lnevers/ln_slice2_S3
     228www-data
     229Agent pid 15982
     230Identity added: /var/www/.ssh/id_rsa (/var/www/.ssh/id_rsa)
     2311/3:ssh mprakash@pc155.emulab.net /usr/bin/crontab  /home/genis3monitor/csi/CronTab
     2322/3:ssh mprakash@pc104.emulab.net /usr/bin/crontab  /home/genis3monitor/csi/CronTab
     2333/3:ssh mprakash@pc120.emulab.net /usr/bin/crontab  /home/genis3monitor/csi/CronTab
     234Agent pid 15982 killed
     235}}}
     236
     2378. Periodic measurement settings can be viewed from "Measurement Data->Periodic Measurements->Configuration->List".  Following
     238is the output of the listing for pc155:
     239{{{
     240COMMAND = FWMAINT
     241TODO = LIST
     242SERVER = pc155.emulab.net
     243ID              COMMAND                                  OUTPUT FILES DIRECTORY         FREQUENCY
     244---------------------------------------------------------------------------------------------------
     245Executing command -- cat /home/genis3monitor/csi/FreqTaskList
     2460 COMMAND=PING&SRC=pc155.emulab.net&DEST=pc120.emulab.net&COUNT=30 /home/genis3monitor/csi/local/measurements 1
     247}}}
     248
     2499. Measurements can be displayed with the "Display Data" page:
     250[[Image(2010-07-28_ScalableMonitoring-8.jpg)]]
     251
     252Requesting result from the source to the destination defined in the above steps reports the following:
     253[[Image(2010-07-28_ScalableMonitoring-9.jpg)]]
     254
     25510. User can also request individual Test Sensors.  Available options include:
     256   * Latency (ping) - determines delay between selected nodes
     257   * Path (traceroute) - determines routes between selected nodes
     258   * Pathchirp  - estimates available bandwidth between selected nodes
     259   * Pathrate - estimates capacity between selected nodes
     260   * Spruce - estimate available bandwidth between selected nodes
     261   * Tulip (loss) - Under development.
     262   * SRSprobe - Under development.
     263 
     264All available Test Sensor results are shown in the result pane.  Following is sample output from each of the Test Sensors:
     265
     266 * Latency Results:
     267{{{
     268COMMAND = PING
     269DEST = pc104.emulab.net
     270SERVER = pc158.emulab.net
     271Executing command -- ping -c 5 -i 1 pc104.emulab.net
     272PING pc104.emulab.net (155.98.36.104) 56(84) bytes of data.
     27364 bytes from pc104.emulab.net (155.98.36.104): icmp_seq=1 ttl=64 time=0.209 ms
     27464 bytes from pc104.emulab.net (155.98.36.104): icmp_seq=2 ttl=64 time=0.221 ms
     27564 bytes from pc104.emulab.net (155.98.36.104): icmp_seq=3 ttl=64 time=0.163 ms
     27664 bytes from pc104.emulab.net (155.98.36.104): icmp_seq=4 ttl=64 time=0.156 ms
     27764 bytes from pc104.emulab.net (155.98.36.104): icmp_seq=5 ttl=64 time=0.200 ms
     278--- pc104.emulab.net ping statistics ---
     2795 packets transmitted, 5 received, 0% packet loss, time 4041ms
     280rtt min/avg/max/mdev = 0.156/0.189/0.221/0.031 ms
     281}}}
     282 * Path Results:
     283{{{
     284COMMAND = TRACEROUTE
     285DEST = pc104.emulab.net
     286SRC = pc158.emulab.net
     287SERVER = pc158.emulab.net
     288Executing command -- /usr/sbin/traceroute pc104.emulab.net
     289traceroute to pc104.emulab.net (155.98.36.104), 30 hops max, 38 byte packets
     290 1  pc104.emulab.net (155.98.36.104)  0.260 ms  0.170 ms  0.158 ms
     291}}}
     292 * Pathchirp Results:
     293{{{
     294COMMAND = PATHCHIRP
     295DEST = pc104.emulab.net
     296SRC = pc158.emulab.net
     297SERVER = pc158.emulab.net
     298Trying to grab port number 8365
     299Succedded in grabbing port 8365
     300Executing command -- wget -O - -o /tmp/rand162634.146706299 "http://pc158.emulab.net:46000/cgi-bin/csi.cgi?COMMAND=PATHCHIRPSND&PORT=8365"
     301Executing command -- wget -O - -o /tmp/rand800032.298852788 "http://pc104.emulab.net:46000/cgi-bin/csi.cgi?COMMAND=PATHCHIRPRCV&DEST=pc158.emulab.net&PORT=8365"
     302COMMAND = PATHCHIRPRCV
     303DEST = pc158.emulab.net
     304PORT = 8365
     305SERVER = pc104.emulab.net
     306Executing command -- /home/genis3monitor/csi/common/pathchirp/pathchirp_rcv -S pc158.emulab.net -t 30 -U 8365
     307Waiting for remote host
     308
     309Updating probing range:low=10.000000,high=200.000000Mbps
     310
     311Updating probing range:low=28.571429,high=1400.000000Mbps
     3121280433107.148686 200.000000
     3131280433107.628694 200.000000
     3141280433108.137510 200.000000
     3151280433109.094366 198.947562
     3161280433109.166255 201.321000
     3171280433109.235515 200.268561
     3181280433109.306276 202.641999
     3191280433109.375514 201.589561
     3201280433109.446258 203.962999
     321
     322     <<<<hundreds of lines deleted>>>
     323
     3241280433130.316560 208.978436
     3251280433130.385818 205.552560
     326--13:51:33--  http://pc104.emulab.net:46000/cgi-bin/csi.cgi?COMMAND=PATHCHIRPRCV&DEST=pc158.emulab.net&PORT=8365
     327           => `-'
     328Resolving pc104.emulab.net... done.
     329Connecting to pc104.emulab.net[155.98.36.104]:46000... connected.
     330HTTP request sent, awaiting response... 200 OK
     331Length: unspecified [text/plain]
     332
     333    0K .........                                               799.81 B/s
     334
     33513:52:10 (799.81 B/s) - `-' saved [9489]
     336
     337COMMAND = PATHCHIRPSND
     338PORT = 8365
     339SERVER = pc158.emulab.net
     340Executing command -- /home/genis3monitor/csi/common/pathchirp/pathchirp_snd -U 8365
     341Waiting for receiver to setup connection
     342Connected to 155.98.36.104
     343Chirp Numer: 10
     344Chirp Numer: 20
     345Chirp Numer: 30
     346<<< 20 lines deleted>>>
     347Chirp Numer: 250
     348Chirp Numer: 260
     349Chirp Numer: 270
     350Chirp Numer: 280
     351Chirp Numer: 290
     352Chirp Numer: 300
     353Chirp Numer: 310
     354Chirp Numer: 320
     355
     356Finished sending chirps to client
     357
     358Done measuring
     359--13:51:23--  http://pc158.emulab.net:46000/cgi-bin/csi.cgi?COMMAND=PATHCHIRPSND&PORT=8365
     360           => `-'
     361Resolving pc158.emulab.net... done.
     362Connecting to pc158.emulab.net[155.98.36.158]:46000... connected.
     363HTTP request sent, awaiting response... 200 OK
     364Length: unspecified [text/plain]
     365
     366    0K                                                         780.27 KB/s
     367
     36813:52:10 (780.27 KB/s) - `-' saved [799]
     369}}}
     370 * Pathrate Results:
     371{{{
     372COMMAND = PATHRATE
     373DEST = pc104.emulab.net
     374SRC = pc158.emulab.net
     375QT = 1
     376SERVER = pc158.emulab.net
     377Trying to grab port number 48698
     378Succedded in grabbing port 48699
     379Executing command -- wget -O - -o /tmp/rand89503.6196607215 "http://pc158.emulab.net:46000/cgi-bin/csi.cgi?COMMAND=PATHRATESND& PORT=48699"
     380Executing command -- wget -O - -o /tmp/rand432959.733371721 "http://pc104.emulab.net:46000/cgi-bin/csi.cgi?COMMAND=PATHRATERCV&DEST=pc158.emulab.net&QT=1&PORT=48699"
     381COMMAND = PATHRATESND
     382PORT = 48699
     383SERVER = pc158.emulab.net
     384Executing command -- /home/genis3monitor/csi/common/pathrate/pathrate_snd -v -p 48699
     385
     386Waiting for receiver to establish control stream => OK
     387Receiver pc104.emulab.net starts measurements on Thu Jul 29 14:00:29 2010
     388Measurements are in progress. Please wait..
     389--> UDP port number: 48699
     390Time period between packet pairs/trains: 500 msec
     391--> Maximum packet size: 1488 bytes
     392--> Packet size: 1488 bytes
     393--> New train length: 2
     394--> New round number: 2
     395        Train-1:  => ACKed
     396
     397<<<<many similar lines deleted>>>
     398
     399DEST = pc158.emulab.net
     400QT = 1
     401PORT = 48699
     402SERVER = pc104.emulab.net
     403Executing command --  /home/genis3monitor/csi/common/pathrate/pathrate_rcv -v -s pc158.emulab.net -Q  -p 48699
     404        pathrate run from pc158.emulab.net to node3.slice2432.genislices.emulab.net on Thu Jul 29 14:00:29 2010
     405        --> Average round-trip time: 0.2ms
     406
     407--> Minimum acceptable packet pair dispersion: 12 usec
     408        Train length: 2 ->       10.4 Mbps
     409        Train length: 3 ->       20 Mbps
     410        Train length: 4 ->       93 Mbps
     411        Train length: 5 ->       42 Mbps
     412        Train length: 6 ->       50 Mbps
     413        Train length: 8 ->       126 Mbps
     414        Train length: 10 ->      89 Mbps
     415        Train length: 12 ->      70 Mbps
     416        Train length: 16 ->      119 Mbps
     417        Train length: 20 ->      87 Mbps
     418        Train length: 24 ->      82 Mbps
     419        Train length: 28 ->      108 Mbps
     420        Train length: 32 ->      91 Mbps
     421        Train length: 36 ->      87 Mbps
     422        Train length: 40 ->      105 Mbps
     423        Train length: 44 ->      92 Mbps
     424        Train length: 48 ->      89 Mbps
     425        --> Maximum train length: 48 packets
     426
     427--Preliminary measurements with increasing packet train lengths--
     428  Train length: 2 ->  1190 Mbps  1190 Mbps  1082 Mbps  1190 Mbps  1082 Mbps  1082 Mbps  1323 Mbps
     429  Train length: 3 ->  1134 Mbps  1190 Mbps  1190 Mbps  1134 Mbps  1082 Mbps  1082 Mbps  1134 Mbps
     430  Train length: 4 ->  1190 Mbps  1152 Mbps  1116 Mbps  1152 Mbps  1050 Mbps  1190 Mbps  1116 Mbps
     431  Train length: 5 ->  1107 Mbps  1161 Mbps  1134 Mbps  1190 Mbps  1190 Mbps  1134 Mbps  1134 Mbps
     432  Train length: 6 ->  55 Mbps  52 Mbps  52 Mbps  53 Mbps  52 Mbps  52 Mbps  54 Mbps
     433  Train length: 7 ->  61 Mbps  61 Mbps  61 Mbps  61 Mbps  61 Mbps  61 Mbps  62 Mbps
     434  Train length: 8 ->  69 Mbps  69 Mbps  72 Mbps  71 Mbps  69 Mbps  69 Mbps  69 Mbps
     435  Train length: 9 ->  77 Mbps  77 Mbps  78 Mbps  77 Mbps  77 Mbps  80 Mbps  77 Mbps
     436  Train length: 10 ->  137 Mbps  87 Mbps  138 Mbps  88 Mbps  137 Mbps  89 Mbps  137 Mbps
     437
     438        --> Capacity Resolution:  7.0 Mbps
     439 - Requested Quick Termination
     440
     441--> Coefficient of variation: 0.198
     442-------------------------------------------------
     443Final capacity estimate :  71 Mbps  to  78 Mbps 
     444-------------------------------------------------
     445--14:00:24--  http://pc104.emulab.net:46000/cgi-bin/csi.cgi?COMMAND=PATHRATERCV&DEST=pc158.emulab.net&QT=1&PORT=48699
     446           => `-'
     447Resolving pc104.emulab.net... done.
     448Connecting to pc104.emulab.net[155.98.36.104]:46000... connected.
     449HTTP request sent, awaiting response... 200 OK
     450Length: unspecified [text/plain]
     451
     452    0K ..                                                        2.02 MB/s
     453
     45414:01:09 (2.02 MB/s) - `-' saved [2118]
     455
     456d
     457--> Continue with next round of measurements
     458--> New train length: 8
     459--> New round number: 62
     460        Train-1:  => ACKed
     461--> New round number: 63
     462        Train-1:  => ACKed
     463
     464<<<many similar lines deleted>>>
     465
     466        Train-1:  => ACKed
     467--> Continue with next round of measurements
     468--> Continue with next round of measurements
     469Receiver terminates measurements on Thu Jul 29 14:01:09 2010
     470--14:00:13--  http://pc158.emulab.net:46000/cgi-bin/csi.cgi?COMMAND=PATHRATESND&PORT=48699
     471           => `-'
     472Resolving pc158.emulab.net... done.
     473Connecting to pc158.emulab.net[155.98.36.158]:46000... connected.
     474HTTP request sent, awaiting response... 200 OK
     475Length: unspecified [text/plain]
     476
     477    0K .....                                                   624.88 B/s
     478
     47914:01:10 (624.88 B/s) - `-' saved [5359]
     480
     481}}}
     482 * Spruce Results with CAP Value=10M
     483{{{
     484COMMAND = SPRUCE
     485DEST = pc120.emulab.net
     486CAP = 10M
     487SRC = pc158.emulab.net
     488SERVER = pc158.emulab.net
     489Trying to grab port number 48398
     490Succedded in grabbing port 48399
     491Executing command -- wget -O - "http://pc158.emulab.net:46000/cgi-bin/csi.cgi?COMMAND=SPRUCESND&PORT=48399&DEST=pc120.emulab.net&CAP=10M"
     492--14:04:08--  http://pc158.emulab.net:46000/cgi-bin/csi.cgi?COMMAND=SPRUCESND&PORT=48399&DEST=pc120.emulab.net&CAP=10M
     493           => `-'
     494Resolving pc158.emulab.net... done.
     495Connecting to pc158.emulab.net[155.98.36.158]:46000... connected.
     496HTTP request sent, awaiting response... Executing command -- wget -O - "http://pc120.emulab.net:46000/cgi-bin/csi.cgi?COMMAND=SPRUCERCV&PORT=48399&DEST=pc158.emulab.net"
     497--14:04:09--  http://pc120.emulab.net:46000/cgi-bin/csi.cgi?COMMAND=SPRUCERCV&PORT=48399&DEST=pc158.emulab.net
     498           => `-'
     499Resolving pc120.emulab.net... done.
     500Connecting to pc120.emulab.net[155.98.36.120]:46000... connected.
     501HTTP request sent, awaiting response... 200 OK
     502Length: unspecified [text/plain]
     503COMMAND = SPRUCESND
     504PORT = 48399
     505DEST = pc120.emulab.net
     506CAP = 10M
     507SERVER = pc158.emulab.net
     508Executing command -- /home/genis3monitor/csi/common/spruce/spruce_snd -p 48399 -h pc120.emulab.net -c 10M
     509preparation done
     510test started?
     511availalble bandwidth estimate: 150536127 Kbps
     512sender starting up
     513received port numbers 23877 23876
     514sender finished
     515
     516    0K                                                         336.91 KB/s
     517
     51814:04:30 (336.91 KB/s) - `-' saved [345]
     519
     520200 OK
     521Length: unspecified [text/plain]
     522COMMAND = SPRUCERCV
     523PORT = 48399
     524DEST = pc158.emulab.net
     525SERVER = pc120.emulab.net
     526Executing command -- /home/genis3monitor/csi/common/spruce/spruce_rcv -c 48399 -h pc158.emulab.net
     527
     528    0K                                                         177.73 KB/s
     529
     53014:04:30 (177.73 KB/s) - `-' saved [182]
     531
     532}}}
     533
     534
     535== Scalable Monitoring How-to (August 10th version) ==
     536
     537The scalable monitoring setup requires a Master node and at least 2 sliver nodes (aka sensor nodes) on which to collect measurements.
     538
     539'''Setting up Scalable Monitoring on Master Node'''
     540
     541Using the [http://illusion.hpl.hp.com/genis3monitor/scube-Readme.htm Readme] file is available at the S3 web site to set up the Master Node:
     542
     543{{{
     544S3 README
     545
     546Note: Machine where you create the slice/sliver and Database will be called as Master Node.
     547
     548Prerequisites
     549
     550   Step 1: The Master Node must be installed with java version 1.6.0_20 or above Versions.
     551
     552   Step 2: The Master Node must be installed with Apache Tomcat5.5.
     553
     554   Step 3: The following environment variables must be set in the .bashrc
     555
     556export JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.12
     557export DERBY_HOME=/opt/Apache/db-derby-10.6.1.0-bin
     558export DERBY_INSTALL=/opt/Apache/db-derby-10.6.1.0-bin
     559export PATH=$PATH:$JAVA_HOME/bin
     560
     561export CLASSPATH=$DERBY_INSTALL/lib/derby.jar:$DERBY_INSTALL/lib/derbytools.jar:$DERBY_INSTALL/lib/derbynet.jar:$DERBY_INSTALL/lib/derbyrun.jar:$DERBY_INSTALL/lib/derbyclient.jar:.$DERBY_INSTALL/lib/derbyrun.jar:$DERBY_INSTALL/lib/derbyclient.jar:.
     562
     563Note: The same steps also mentioned in the "Periodic Process" Readme
     564
     565Contents of scube.tar.gz
     566
     5671). cronDeploy4Nodes.sh
     5682). demo.tar
     5693). geniscripts.tar.gz
     5704). geni-scube-sensorpod.tar.gz
     5715). sliver.cgi
     572
     573Steps to follow to install the Scalable Sensing Services
     574
     575   Step 1: Copy the scube.tar.gz on to the Master Node (preferably on your home directory).
     576
     577   Step 2: Create the ssh-key (rsa)
     578Command: - ssh-keygen rsa
     579
     580   Step 3: Upload the ~/.ssh/id-rsa.pub on www.emulab.net
     581
     582   Step 4: Generate the ssl key for your account on www.emulab.net. Select an passphrase ( you have to remember that passphrase. eg. genis3slice )
     583
     584   Step 5: Download the ssl key and store it under ~/.ssl/encrypted.pem
     585
     586   Step 6: Store the ssl passphrase in ~/.ssl/password file
     587Eg. echo genis3slice > ~/.ssl/password
     588
     589   Step 7: Run the ssh agent
     590Command:- ssh-agent bash
     591
     592   Step 8: To set the private key to the ssh-agent
     593Command: - ssh-add ~/.ssh/id_rsa ( Provide the passphrase when it prompts, this should be same as the passphrase in the above steps) br>
     594   Step 9: Do "echo $SSH_AGENT_PID" to verify for the ssh agent running.
     595
     596   Step 10: Unzip and Untar the scube.tar.gz on your home directory.
     597
     598   Step 11: Copy the cronDeploy4Nodes.sh and sliver.cgi into /usr/lib/cgi-bin directory
     599
     600   Step 12: Untar the demo.tar under webapps directory of your apache-tomcat installations.
     601
     602   Step 13: Untar the geniscripts.tar.gz under your home directory. This will create a directory called testscripts.
     603
     604   Step 14: You need to update the createsliver.py, deleteslice.py, deletesliver.py, registerslice.py, sliverstatus.py, test-common.py and unregisterslice.py file for the testscripts path.
     605
     606   Step 15: Untar the geni-scube-sensorpod.tar.gz under your home directory. This will create a directory called scube.
     607
     608   Step 16: Go to ~/scube/csi/csi/common/cgi-bin and copy the csi.tar.gz files to /var/www directory
     609
     610   Step 17: Go to ~scube/config.txt file and add the SrcDir, ArchiveDir etc of your choice as mentioned in the config.txt file.
     611
     612   Step 18: Go to ~/scube/moveNode2MgmtNode.sh and update the script for SrcDir according to the previous steps.
     613
     614   Step 19: Follow the "Installation Instructions for Periodic Measurements" Readme from the http://illusion.hpl.hp.com/genis3monitor/scube for the compilations of SIMModule and to start and stop the SIMModule process in the background.
     615
     616   Step 20: Open the file /usr/lib/cgi-bin/sliver.cgi to update the followings
     617
     618$TESTDIR - to your testscripts path,
     619
     620$SCUBE - to scube directory,
     621
     622$hostHomeDir - to your home directory
     623
     624$user - to your user name,
     625
     626$tomcatPath - to your tomcat webapps directory
     627
     628}}}
     629
     630
     6311. Scalable Monitoring software requires Java DK 1.6.0_20 or above and Apache Tomcat5.5.  In this evaluation used a Fedora 8 system, where the following where installed:
     632{{{
     633 $ sudo yum install java-1.7.0-icedtea
     634 $ sudo yum install jpackage-utils
     635 $ sudo yum install tomcat*
     636}}}
     637Downloaded the binary distribution of [http://db.apache.org/derby/releases/release-10.6.1.0.cgi derby-db] and placed it on the master node.
     638
     6392. SSH key instruction for upload to Emulab had been previously executed, thus they were skipped for this evaluation.
     640
     6413. Downloaded the file [http://illusion.hpl.hp.com/genis3monitor/scube.tar.gz S3 code] and unpacked the file scube.tar.gz on the master node riva.gpolab.bbn.com. Copied files as instructed:
     642{{{
     643   $ sudo cp cronDeploy4Nodes.sh /usr/lib/cgi-bin/.
     644   $ sudo cp sliver.cgi /usr/lib/cgi-bin/.
     645   $ tar xvf demo.tar  # creates a geni directory
     646   $ sudo cp -r geni /var/lib/tomcat5/webapps/.
     647}}}
     648
     6494. Untared the geniscripts.tar.gz under your home directory. This will create a directory called testscripts.
     650   The files createsliver.py, deleteslice.py, deletesliver.py, registerslice.py, sliverstatus.py, test-common.py and unregisterslice.py files must be modified to define the installation directory of the tools.
     651
     6525 Untared the geni-scube-sensorpod.tar.gz, this creates a directory called scube.  Copy csi file:
     653{{{
     654 cd scube/csi/csi/common/cgi-bin;
     655 cp csi.tar.gz (or csi.cgi files to /var/www directory
     656}}}
     6576. Edit scube/config.txt file and add the SrcDir, ArchiveDir, and BadFileDir to point to the installation path:
     658{{{
     659  SrcDir  /home/lnevers/scube/spod/geni/SrcDir
     660  ArchiveDir      /home/lnevers/scube/spod/geni/ArchiveDir
     661  ArchiveSuffix   _backup
     662  BadFileDir      /home/lnevers/scube/spod/geni/BadFileDir
     663}}}
     664
     665= to verify =
     666Step 18: Go to ~/scube/moveNode2MgmtNode.sh and update the script for SrcDir according to the previous steps.
     667
     668Step 19: Follow the "Installation Instructions for Periodic Measurements" Readme from the http://illusion.hpl.hp.com/genis3monitor/scube for the compilations of SIMModule and to start and stop the SIMModule process in the background.
     669
     670Step 20: Open the file /usr/lib/cgi-bin/sliver.cgi to update the followings
     671
     672$TESTDIR - to your testscripts path,
     673$SCUBE - to scube directory,
     674$hostHomeDir - to your home directory
     675$user - to your user name,
     676$tomcatPath - to your tomcat webapps directory
     677
     678= end of to verify =
     679
     680
     681
     682
     683'''Setting up Scalable Monitoring on Sliver Nodes'''
     684
     6851. Register a slice:
     686{{{
     687 $ ./registerslice.py -n ln_scube_slice
     688 Got my SA credential
     689 No such slice registered here:Creating new slice called ln_scube_slice
     690 New slice created: urn:publicid:IDN+emulab.net+slice+ln_scube_slice
     691}}}
     692
     6932. Create the sliver nodes:
     694{{{
     695 $ ./createsliver.py -n ln_scube_slice ./twonode.xml
     696 Got my SA credential
     697 Asking for slice credential for ln_scube_slice
     698 Got the slice credential
     699 Creating the Sliver ...
     700 Created the sliver
     701 <rspec xmlns="http://protogeni.net/resources/rspec/0.1" valid_until="2010-08-25T20:03:13">
     702    <node virtual_id="geni1" virtualization_type="raw" exclusive="1" component_urn="urn:publicid:IDN+emulab.net+node+pc509" component_uuid="98b55439-27ea-11df-8633-001143e453fe" component_manager_urn="urn:publicid:IDN+emulab.net+authority+cm" component_manager_uuid="28a10955-aa00-11dd-ad1f-001143e453fe" sliver_uuid="98b55439-27ea-11df-8633-001143e453fe" hostname="pc509.emulab.net" sshdport="22" sliver_urn="urn:publicid:IDN+emulab.net+sliver+16135">
     703          <interface virtual_id="virt0" component_id="eth4"/>
     704    <services><login authentication="ssh-keys" hostname="pc509.emulab.net" port="22"/></services></node>
     705    <node virtual_id="geni2" virtualization_type="raw" exclusive="1" component_urn="urn:publicid:IDN+emulab.net+node+pc417" component_uuid="3bbd5e22-11ba-11df-8633-001143e453fe" component_manager_urn="urn:publicid:IDN+emulab.net+authority+cm" component_manager_uuid="28a10955-aa00-11dd-ad1f-001143e453fe" sliver_uuid="3bbd5e22-11ba-11df-8633-001143e453fe" hostname="pc417.emulab.net" sshdport="22" sliver_urn="urn:publicid:IDN+emulab.net+sliver+16136">
     706         <interface virtual_id="virt0" component_id="eth4"/>
     707    <services><login authentication="ssh-keys" hostname="pc417.emulab.net" port="22"/></services></node>
     708    <link virtual_id="link0" sliver_uuid="cddb6e9b-b052-11df-ad83-001143e453fe" sliver_urn="urn:publicid:IDN+emulab.net+sliver+16137" vlantag="929">
     709         <interface_ref virtual_interface_id="virt0" virtual_node_id="geni1" sliver_uuid="ce0c48cf-b052-11df-ad83-001143e453fe" component_urn="urn:publicid:IDN+emulab.net+interface+pc509:eth4" sliver_urn="urn:publicid:IDN+emulab.net+sliver+16138" MAC="00101856b088" IP="10.10.1.1"/>
     710         <interface_ref virtual_interface_id="virt0" virtual_node_id="geni2" sliver_uuid="ce66e11b-b052-11df-ad83-001143e453fe" component_urn="urn:publicid:IDN+emulab.net+interface+pc417:eth4" sliver_urn="urn:publicid:IDN+emulab.net+sliver+16139" MAC="001018569110" IP="10.10.1.2"/>
     711    </link>
     712 </rspec>
     713}}}
     714
     715Where the rspec twonode.xml contains:
     716{{{
     717 <rspec xmlns="http://protogeni.net/resources/rspec/0.1" >
     718    <node virtual_id="geni1" virtualization_type="emulab-vnode" exclusive="1">
     719          <interface virtual_id="virt0" />
     720    </node>
     721    <node virtual_id="geni2" virtualization_type="emulab-vnode" exclusive="1">
     722         <interface virtual_id="virt0"/>
     723    </node>
     724    <link virtual_id="link0">
     725         <interface_ref virtual_interface_id="virt0" virtual_node_id="geni1"/>
     726         <interface_ref virtual_interface_id="virt0" virtual_node_id="geni2"/>
     727    </link>
     728 </rspec>
     729}}}
     730
     7313. Verify that the sliver is ''Ready'':
     732{{{
     733 $ ./sliverstatus.py -n ln_scube_slice
     734 Got my SA credential. Looking for slice ...
     735 Found the slice, asking for a credential ...
     736 Got the slice credential, asking for a sliver credential ...
     737 Got the sliver credential, asking for sliver status
     738 {'status': 'ready', 'state': 'started', 'details': {'urn:publicid:IDN+emulab.net+sliver+16135': {'status': 'ready', 'state': 'started', 'component_urn': 'urn:publicid:IDN+emulab.net+node+pc509', 'error': ''}, 'urn:publicid:IDN+emulab.net+sliver+16136': {'status': 'ready', 'state': 'started', 'component_urn': 'urn:publicid:IDN+emulab.net+node+pc417', 'error': ''}}}
     739}}}
     740
     7414. Copy geni-scube-sensorpod.tar.gz to each of the nodes in the sliver:
     742{{{
     743 $ scp geni-scube-sensorpod.tar.gz pc417.emulab.net:.
     744 $ scp geni-scube-sensorpod.tar.gz pc509.emulab.net:.
     745}}}
     746
     7475. Login to each of the nodes in the sliver and unpack the geni-scube-sensorpod.tar.gz file.
     748{{{
     749   $ tar xvzf geni-scube-sensorpod.tar.gz
     750}}}
     7516. Download vxargs0.3.3.py from  http://vxargs.sourceforge.net and place it in the scube/spod directory.