[[PageOutline]] = Interoperability of I&M Tools on GENI Racks = == 1) Goals == The primary goal of this effort is to get the GIMI and GEMINI tools working on both InstaGENI and ExoGENI racks by GEC17. [[BR]] To work toward this goal, we need to address items in the following areas: * Tools * Sliver creation (Flack/Flukes/Omni) * Presentation/Orchestration (GENI Desktop/Labwiki) * Archival (iRODS) * Resources * Images * Rspecs * Configuration * initialize/instrumentize * postboot scripts * Testing * What are the basic use cases? * Certificates * We should be able to use certificates issued by all four of these authorities for both sets of tools * Utah emulab, UKY emulab, PGENI, GENI Portal == 2) Mailing lists == These lists should be used for help on questions or issues with each of the racks. Subscribing to each of these lists will allow you to see the latest questions, answers, known issues and scheduled downtime related to each of the racks. * ExoGENI: geni-orca-users@googlegroups.com * InstaGENI: progoteni-users@googlegroups.com == 3) Known differences between racks == || || '''ExoGENI''' || '''InstaGENI''' || || '''Virtualization technology''' || KVM || openvz || || '''Images''' || requires separate filesystem/kernel/ramdisk images, highly recommended to add NEuca guest extensions, must run on KVM || Because VMs are openvz containers, must be same OS as hypervisor (Fedora) || || '''Data plane IPs''' || doesn't auto-assign IPs when not specified in request || auto-assigns IPs when not specified in request || || '''Login information''' || Not available in manifest until resources are active || Available as soon as resources are provisioned || || '''Hostnames''' || VMs or raw PCs do not have given hostnames configured || Hostnames set according to client-id in request || See the [wiki:GENIRacksHome/GENIRacksRspecs GENI Racks RSpecs] page for a summary of RSpec differences and observed behavior found in a walk-through of RSpec scenarios. == 3) GIMI on InstaGENI == === 3.1) Tools === * Sliver creation * Flack * Omni * Presentation/Orchestration * Labwiki * OMF/OML === 3.2) Resources === No known resource restrictions identified yet. === 3.3) Images === * Create custom VM image * Fedora * common Ubuntu image not expected until July * See [http://groups.geni.net/geni/wiki/IMInteroperability/GIMIInstaGENITestCase] === 3.4) Rspecs === * Convert current tutorial RDF to rspec * Should work if only nodes and links are specified * Changes required * images changed * sliver-types changed (different virtualization) * component managers removed * Test the rspec on InstaGENI using both Flack and omni * See [http://groups.geni.net/geni/wiki/IMInteroperability/GIMIInstaGENITestCase] === 3.5) Configuration === * Convert postboot functionality into execute service script === 3.6) Certificates === * Certificates not yet used for Labwiki === 3.7) Testing === ==== Browser Compatibility ==== || || '''Mac''' || '''Ubuntu 12.04''' || '''Windows 7''' || || '''Firefox''' || || || || || '''Chrome''' || || || || || '''IE''' || N/A || N/A || || || '''Safari''' || || || N/A || === 3.8) Issues === === 3.9) Demos === ==== 5/13/2013 ==== * Labwiki instance running on InstaGENI slice ==== 6/10/2013 ==== ==== 7/8/2013 ==== == 4) GEMINI on ExoGENI == === 4.1) Tools === * Sliver creation * Read https://wiki.exogeni.net/doku.php?id=public:experimenters:start * Flack * Omni * Presentation/Orchestration * GENI Desktop === 4.2) Resources === * Main concern is public IPs with access to certain ports for instrumentation * Ilia confirms that all nodes have public IPs assigned. He will check if there are any port restrictions. === 4.3) Images === * Create custom VM image * Ezra and Hussam will determine the initial target OS * Read https://geni-orca.renci.org/trac/wiki/neuca-images * Starting with CentOS 6.3 shown on this page === 4.4) Rspecs === * How does ExoGENI handle GEMINI extensions? * Outstanding issue: ORCA is not able to pass thru extensions that is does not know about to the manifest. This includes Flack and GEMINI extensions. * Let's discuss a more general 'measurement' extension for RSpecs usable by GIMI and GEMINI. We can add an NDL extension to support it in ORCA /ib * Convert current tutorial rspec to RDF * Test the RDF on ExoGENI using Flukes * Test the rspec on ExoGENI using omni * Test the rspec on ExoGENI using Flack when it is ready === 4.5) Configuration === * Test the initialize/instrumentize scripts work on ExoGENI nodes * Ahmed has tested converting ExoGENI manifest into UNIS schema * Hussam reported earlier that GENI Desktop relies on location tags in the manifest for lat/long in topology map * Ilia will look into possibly adding these to the ExoGENI rspec === 4.6) Certificates === * All four types of certificates should work for GENI Desktop login and instrumentize * Utah * UKY * GENI Portal * PGENI === 4.7) Testing === ==== Certificate Compatibility ==== || || Login || Instrumentize || || '''Utah Emulab''' || || || || '''UKY Emulab''' || || || || '''PGENI''' || || || || '''GENI Portal''' || || || ==== Browser Compatibility ==== || || '''Mac''' || '''Ubuntu 12.04''' || '''Windows 7''' || || '''Firefox''' || || || || || '''Chrome''' || || || || || '''IE''' || N/A || N/A || || || '''Safari''' || || || N/A || === 4.8) Issues === || '''Issue ID''' || ''' Description''' || '''Owner?''' || '''Ticket''' || '''Status''' || '''Blocking progress''' || || 1 || Slice expiry and Sliver expiry time dont match up. || || || || || || 2 || The expiration_time attribute in the exogeni manifest reports values in two different formats. || || || || || || 3 || SSH Keys: Only one ssh key is installed || ExoGENI || http://groups.geni.net/exogeni/ticket/109 || || || || 4 || url vs. name attribute for ExoGENI images || ExoGENI/InstaGENI || Ilia said he would make a change to converter to allow url. Discussions on instaGENI list propose to always using name attribute instead of url. || || || || 5 || Flack canvas does not turn green when ExoGENI slice is ready || ExoGENI || || Fixed in next deployment (week of 5/20) || || || 6 || EG does not assign IP address if not provided in the rspec || ExoGENI || || || || || 7 || Problems deleting ExoGENI slices in Flack || Flack || || || || || 8 || No way to map node logged into to node in manifest (IPs don't match, hostname doesn't match) || || || Hostnames can be set with templated post-boot scripts, neuca-user-data || || || 9 || No way to map interface to a link in the manifest || || || Ilia checking to see why mac address is not in the manifest rspec || || || 10 || No way to reboot an ExoGENI node (reboot from the command-line is unreliable) || ExoGENI || http://groups.geni.net/exogeni/ticket/180 || || || || 11 || Manifests from ExoSM vs. individual racks || || || || || || 12 || public key from certificate must be present in omni_config or Flack before creating your slice || || || || || Which of these are blocking progress for GEMINI interop? ==== Notes on Exogeni with GEMINI ==== 1. When creating a slice for Exogeni, make you provide the public SSH key generated from the private key used in your GENI cert. ssh-keygen -yf >>my_public_key This public key should be present in your omni_config or the FLACK version you use before you create the slice. GEMINI needs this on your allocated machines in order to instrumentize them 2. There is a logical problem when using ExoSM to allocated nodes in Exogeni. Consider the example scenario mentioned here. Note: For those who dont know , EXOSM has the capability to allocate nodes from an exogeni racks. The node reservation info is stored at the ExoSM and the local racks have no accountability for those nodes. Experimeneter creates an exogeni slice called "SLICE-A" using the EXOSM's AM Interface to allocate 3 nodes at the GPO Exogeni Rack. Experimeneter then uses the same exogeni slice "SLICE-A" and talks to the GPO Exogeni Rack's AM Interface to allocate 3 more nodes at the GPO Exogeni Rack. Techincally all 6 nodes are part of the same slice and from the same Exogeni rack. But any client tool like FLACK and omni will not give you a complete manifest of the 6 nodes when talking to the ExoSM or the local racks. Each AM interface will report a manifest with the 3 nodes it had allocated. This is a cause for confusion for the GeniDesktop parser and possibly UNIS. This a CF issue which some of the GPO folks have already begun discussing on the orca-users mailing list. Currently this case will not work properly and can lead to unpredictable results. === 4.9) Demos === ==== 5/14/2013 ==== ==== 6/11/2013 ==== ==== 7/9/2013 ==== == 5) Team == Jeanne Ohren (BBN) Luisa Nevers (BBN) Ezra Kissel (IU) Hussman Nasir (Kentucky) Ilia Baldine (RENCI) Cong Wang (UMass Amherst) Mike Zink (UMass Amherst) Divyashri Bhat (UMass Amherst) == 6) Planning and Status Meetings == ~~041113~~ ~~042513~~ ~~050913: 1pmEDT~~ ~~051313; 2-4pm EDT; GIMI demo session~~[[BR]] ~~051413; 2-4pm EDT; GEMINI demo session~~ 052313: 1pmEDT 061013; 2-4pm EDT; GIMI demo session; bulk of work done on v2 GIMI Portal[[BR]] 061113; 2-4pm EDT; GEMINI demo session; bulk of work done on v2 GIMI Portal 061313: 1pmEDT 062713: 1pmEDT 070813; 2-4pm EDT; GIMI demo session; v2 ready for testing[[BR]] 070913; 2-4pm EDT; GEMINI demo session; v2 ready for testing 071113: 1pmEDT 072113 - 072313 is GEC17 === !WebEx Information === * https://bbn.webex.com/bbn/j.php?ED=186205732&UID=1348357792&PW=NYjlkYzNiYmE1&RT=MiMxMQ%3D%3D * Call-in toll-free number (US/Canada): 1-877-668-4490 * Call-in toll number (US/Canada): 1-408-792-6300 * Access code:797 392 201 == 7) Key Task List == || '''ID''' || '''Description''' || '''Assignee''' || '''Due''' || '''Status''' || '''Demos''' || '''Notes''' || || 1 || Create basic Fedora image for ExoGENI || Ezra, Hussam, and Jeanne || || [[Color(green, Complete)]] || || Decided to use CentOS image || || 2 || Create custom GIMI image for InstaGENI || Divya and Cong || 5/9/2013 || [[Color(green, Complete)]] || || || || 3 || Convert current GIMI tutorial RDF to rspec || Jeanne || || [[Color(#FF6600, On Hold)]] |||| On hold, may not be necessary || || 4 || Test the GIMI rspec on InstaGENI using both Flack and omni || Jeanne and Luisa || || [[Color(#B0E0E6, In Progress)]] || || Divya documented test case at http://groups.geni.net/geni/wiki/IMInteroperability/GIMIInstaGENITestCase || || 5 || Convert postboot functionality into execute service script || Mike and Divya || 5/23/2013 || [[Color(#B0E0E6, In Progress)]] || || 2-node topology completed, working on 5-node topology || || 6 || Determine basic use cases for testing both sets of tools || Jeanne || || || || || || 7 || Test the GEMINI rspec on ExoGENI using omni || Ezra || 5/9/2013 || [[Color(#B0E0E6, In Progress)]] || || || || 8 || Test the GEMINI rspec on ExoGENI using Flack || Ezra, Hussam, Luisa || || [[Color(#B0E0E6, In Progress)]] || || || || 9 || Determine if initialize and instrumentize can get everything it needs from the ExoGENI manifest || Hussam || 5/9/2013 || [[Color(#B0E0E6, In Progress)]] || || || || 10 || Look into possible common measurement extensions for ExoGENI || Ilia, Ezra, Hussam, and Mike || 5/23/2013 || [[Color(#B0E0E6, In Progress)]] || || Discussed on 5/9. Ilia has idea for NDL model. Need to decide how to map rspec extensions to NDL || || 11 || Add support for GENI Portal certificates in GENI Desktop || Hussam || 5/23/2013 || [[Color(#B0E0E6, In Progress)]] || || Certificates work to sign-in. Working with Tom and Aaron on integrating with sign-on || || 12 || Look into adding location (lat/lon) tags to the ExoGENI manifest || Ilia || 5/23/2013 || [[Color(green, Complete)]] || || Available in next ExoGENI release: week of 5/20 || || 13 || Create custom GEMINI image for InstaGENI || || 6/27/2013 || || || || || 14 || Add UKY trusted root certificate to ExoGENI bundle || Jeanne/Ilia ||5/23/2013 || [[Color(green, Complete)]] || || Available in next ExoGENI release: week of 5/20 || || 15 || Add GENI Portal trusted root certificate to UNIS bundles || Ezra || || [[Color(green, Complete)]] || || || || 16 || Test the GIMI rspec on ExoGENI using Flack || Divya || || [[Color(#B0E0E6, In Progress)]] || || ||