= GUSH Evaluation = GENI User Shell (GUSH) provides an execution management system that allows users to describe an experiment that the GUSH tool uses to locate, and prepare resources. The GUSH software can be checked out from the GUSH SVN Repository using username guest and password is provided out of band. This GUSH evaluation started with the existing check out of the tools and updated to Software revision 159. Nebula testing required an update to revision 160. Evaluation Time Frame: September 21, 2011 through the end of October 2011. = Gush Findings = Attempts to get sliver details for rspec 0.2 version failed, this was addressed by making changes to the gush parsing, waiting on feature check into repository. Attempts to start the Nebula client failed with a java exception, which turned out to be missing files that were added in svn version 160. = Gush How-to = Using and existing GUSH install at revision 142 updated to the latest revision 159: {{{ $ cd gush/trunk; svn update $ make clean (cd api && make clean) make[1]: Entering directory `/home/lnevers/gush/trunk/api' rm -f *.o libgushapi.a api-test make[1]: Leaving directory `/home/lnevers/gush/trunk/api' rm -f gush client gush-source.tar gush-bin.tar *.o \ terminal_parser.c terminal_parser.h terminal_lexer.c terminal_lexer.log $ make all <<< lots of output deleted>> }}} '''Gush configuration''' The configuration for each aggregate is manual and there is some naming inconsistencies which can cause problems. Following is a table which maps the directory.xml setting to the omni settings for each supported aggregate: User can now start the GUSH application by selecting ''Gush=>Start Gush'' || Aggregate Name ||(directory.xml) resource_manager type ||(omni_config) aggregate type ||( handle-geni.py) framework (-f)||( handle-geni.py) AGGREGATE_URL (-a)|| || || || !PlanetLab || "geni-plc" ||sfa || plc || !http://www.planet-lab.org:12346 || || Emulab || "geni-pg" || pg || pg || !https://www.emulab.net/protogeni/xmlrpc/am || Coordinating these across configurations and commands is important to get gush working. First evaluated !PlanetLab features. Using the following configuration files: ''directory.xml:'' {{{ }}} ''omni_config:'' {{{ [omni] users = lnevers [plc] type=sfa authority=plc.bbn user=plc.bbn.lnevers cert=~/.gcf/plc.bbn.lnevers.gid key=~/.gcf/lnevers.pkey registry=http://www.planet-lab.org:12345 slicemgr=http://www.planet-lab.org:12347 [lnevers] urn = urn:publicid:IDN+emulab.net+user+lnevers keys=~/.ssh/id_rsa.pub }}} Started the gush tool: {{{ $ ./gush -P 15555 gush> Gush has learned about the slice bbn_gusheval. Updated information on the slice bbn_gusheval is available. connect slice bbn_gusheval Found 4 hosts Initiated connections to 4 of 4 hosts. bbn_gusheval@plnode-03.gpolab.bbn.com:61414 has joined the mesh. bbn_gusheval@mtuplanetlab2.cs.mtu.edu:61414 has joined the mesh. bbn_gusheval@plnode-04.gpolab.bbn.com:61414 has joined the mesh. bbn_gusheval@miranda.planetlab.cs.umd.edu:61414 has joined the mesh. gush> info mesh Mesh: bbn_gusheval@plnode-03.gpolab.bbn.com:61414: connected; (fds=6,6 last_heard=1318877196) bbn_gusheval@plnode-04.gpolab.bbn.com:61414: connected; (fds=7,7 last_heard=1318877201) bbn_gusheval@mtuplanetlab2.cs.mtu.edu:61414: connected; (fds=9,9 last_heard=1318877197) bbn_gusheval@miranda.planetlab.cs.umd.edu:61414: connected; (fds=12,12 last_heard=1318877222) Summary: 4 mesh members; 0 nodes connecting. }}} Second, evaluate the ProtoGENI feature and using this omn_config: {{{ }}} and this directory.xml: {{{ [omni] users = lnevers [lnevers] urn = urn:publicid:IDN+emulab.net+user+lnevers keys=~/.ssh/id_rsa.pub [pg] type=pg ch = https://www.emulab.net:443/protogeni/xmlrpc/ch sa = https://www.emulab.net:443/protogeni/xmlrpc/sa cert = ~/.ssl/protogeni/encrypted-cleartext.pem key = ~/.ssl/protogeni/encrypted-cleartext.pem }}} was able to connect to each of the hosts in the slice: {{{ $ ./gush -P 15555 gush> Gush has learned about the slice lnevers02. Updated information on the slice lnevers02 is available. gush> connect lnevers@pc151.emulab.net Connecting to host lnevers@pc151.emulab.net:61600. gush> connect lnevers@pc96.emulab.net Connecting to host lnevers@pc96.emulab.net:61600. gush> info mesh Mesh: lnevers@pc151.emulab.net:61600: bootstrapping; (fds=-1,-1 last_heard=0) lnevers@pc96.emulab.net:61600: bootstrapping; (fds=-1,-1 last_heard=0) Summary: 0 mesh members; 2 nodes connecting. }}} Attempts to start the Nebula client initially failed with a java exception, which was due to missing file, an updated to revision 160 resolved this issue. The Nebula client is invoked as follows: {{{ $ cd nebula $ sh ./run }}} [[Image(nebula-1.jpg)]] User must define the location of the gush software by choosing ''Edit=>Preferences'', the preferences dialog also allows setting the location of the SSH private key: [[Image(nebula-2.jpg)]] [[Image(nebula-3.jpg)]] -------------- {{{ #!html Email us with any questions and feedback on this page! }}}