wiki:GIR3.2_DiCloud

Version 3 (modified by lnevers@bbn.com, 8 years ago) (diff)

--

DiCloud Evaluation

The DiCloud project delivered an integration milestone with GUSH supporting access to ORCA resources. Instructions were fom the GUSH Orca Example page which walks through a scenario that uses ORCA, !ProtoGENI and PlanetLab resources.

Evaluation Time Frame: October 19, 2011

DiCloud Findings

Initially ran into problems accessing the ORCA aggregates.

DiCloud How-to

Defined the omni_config setting to access the aggregates:

[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

[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

[lnevers]
urn = urn:publicid:IDN+emulab.net+user+lnevers
keys=~/.ssh/id_rsa.pub

Defined the directory.xml for each of the PlanetLab, !ProtoGENI and ORCA resource managers:

<?xml version="1.0" encoding="UTF-8"?>
<gush>
    <resource_manager type="geni-plc">
      <port_map slice="bbn_gusheval" port="61414"/>
    </resource_manager>
  <resource_manager type="geni-orca">
     <port_map slice="gush-orca-ln" port="11400"/>
    </resource_manager>
  <resource_manager type="geni-pg">
     <port_map slice="lnevers3" port="61600"/>
    </resource_manager>
</gush>

Created a slice for the experiment:

$ helper-scripts/handle-geni.py -n -f pg -a https://www.emulab.net/protogeni/xmlrpc/am createslice gush-orca-gir  
INFO:omni:Loading config file omni_config
INFO:omni:Using control framework pg
Created slice with Name gush-orca-gir, URN urn:publicid:IDN+emulab.net+slice+gush-orca-gir

Defined an ORCA rspec file named orca.rpec:

<?xml version="1.0" encoding="UTF-8"?>
<rspec type="request" xsi:schemaLocation="http://www.protogeni.net/resources/rspec/2
                                          http://www.protogeni.net/resources/rspec/2/request.xsd"
     xmlns:flack="http://www.protogeni.net/resources/rspec/ext/flack/1"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xmlns="http://www.protogeni.net/resources/rspec/2">
 <node client_id="geni1">
  <sliver_type name="raw-pc">
    <disk_image name="http://geni-images.renci.org/images/gush/gush-deb5-i386.xml" version="25f53b64cfe44dd1604447f04b
7b533bb67dea1e" />
  </sliver_type>
  <services>
    <execute shell="sh" command="sudo hostname `cat /var/emulab/boot/realname`.`cat /var/emulab/boot/mydomain`"/>
  </services>
  <interface client_id="geni1:0">
     <ip address="172.16.1.1" netmask="255.255.0.0" />
  </interface>
 </node>
 <node client_id="geni2">
  <sliver_type name="raw-pc">
    <disk_image name="http://geni-images.renci.org/images/gush/gush-deb5-i386.xml" version="25f53b64cfe44dd1604447f04b
7b533bb67dea1e" />
  </sliver_type>
  <services>
    <execute shell="sh" command="sudo hostname `cat /var/emulab/boot/realname`.`cat /var/emulab/boot/mydomain`"/>
  </services>
  <interface client_id="geni2:0" >
    <ip address="172.16.1.2" netmask="255.255.0.0" />
  </interface>
 </node>
 <link client_id="center">
   <interface_ref client_id="geni1:0" />
   <interface_ref client_id="geni2:0" />
 </link>
</rspec>

Created a sliver with the GUSH handle-geni.py script:

$ helper-scripts/handle-geni.py -n -f pg -a https://geni.renci.org:11443/orca/xmlrpc createsliver gush-orca-gir orca.rpec 
INFO:omni:Loading config file omni_config
INFO:omni:Using control framework pg
Asked https://geni.renci.org:11443/orca/xmlrpc to reserve resources. Result: Error encountered converting RSpec to NDL: org.apache.xmlrpc.XmlRpcException: Failed to read server's response: Connection refused