wiki:GEMINI_TopicsIssuesTasks

Version 37 (modified by hmussman@bbn.com, 12 years ago) (diff)

--

GEMINI v1.0 Design Topics

Notes and tasks from 3/22/12 GEMINI status call:

  • Additions and corrections after call on 3/27/12 with Martin:
  • Additions and corrections after team call on 3/29/12, and call on 3/30/12 with Jim:
  • Additions and changes after call with Martin and Jim on 4/4/12:
  • Addtions and changes after call with Jim and Charles on 4/17/12:
  • Additions and changes after call with Martin on 4/18/12:
  • Additions and changes after team call 4/19/12: (sections are rearranged)
  • Additions and changes after team call 4/26/12:
  • Additions and changes after team call 5/3/12:
  • 4/5/12 topics :
    2d) ABAC
    4d) Old UNIS vs new UNIS
    5j') Use of Gush

+ 4/12/12 topics suggested by Harry:

3g) review access to http on VM (Hussam+)
5i) who will help formulate final MDOD schema?
5j') report on Gush (Jeanne)
7h) review current status of baseline configuration to gather host metrics (Guilherme, and all)
8) agree on steps towards GEMINI tutorials at GEC14 (all)
9) agree on configuration to collect network measurements (all)
9l) review preliminary test plan for colelcting network measurements (Jeanne)

+ 4/19/12 topics suggested by Harry:

3g) review access to http on VM (Hussam+)
4d) Old UNIS vs new UNIS: understand transition plan (?)
5i) who will help formulate final MDOD schema? (Martin on4/18: Ezra and Omer)
5j') report on Gush (Jeanne) (delayed)
6d) provide a more complete view of GEMINI portal service (Jim, Charles on 4/18/12)
7h) review current status of baseline configuration to gather host metrics (Guilherme, and all)
8) agree on steps towards GEMINI tutorials at GEC14 (all)
9) agree on configuration to make active network measurements (all)
9l) review updated test plan for making active network measurements (Jeanne)

+ 4/26/12 topics suggested by Harry:

3g) review access to http on VM (Hussam+)
5j') report on Gush (Jeanne) (delayed)
6d) provide a more complete view of GEMINI portal service (Jim, Charles on 4/18/12)
7l) review updated test plan for making active network measurements (Jeanne)
8a) review current status of baseline configuration to gather host metrics (Guilherme, and all)
9) agree on steps towards GEMINI tutorials at GEC14 (all)
9a) agree on plan to coordinate configurations to make active network measurements and to collect basic host metrics in one slice (all)
9d) agree on schedule

+ 5/3/12 topics suggested by Harry:
5j') report on Gush (Jeanne) (delayed)
6d) provide a more complete view of GEMINI portal service (Jim, Charles on 4/18/12)
7l) review updated test plan for making active network measurements (Jeanne)
8a) review current status of baseline configuration to gather host metrics (Guilherme, and all)
9a) agree on plan to coordinate configurations to make active network measurements and to collect basic host metrics in one slice (all)

+ 5/9/12 design review topics suggested by Harry:
2d) need a drawing and technical review of using ABAC for AA (Guilherme)
6d) provide a more complete view of GEMINI portal service (Jim, Charles on 4/18/12)
7) review current status of baseline configuration to make active network measurements (Guilherme, and all)
7m) formulate tutorial for users at GEC14.
8a) review current status of baseline configuration to gather host metrics (Guilherme, and all)
8a) need to add libvert to InstaGENI rack; is this OK? Martin to provide description.
9j) Formulate tutorial for users at GEC14.
9a) agree on plan to coordinate configurations to make active network measurements and to collect basic host metrics in one slice (all)
9e) need to agree on schedule for GEC14 tools:

1) Authentication and authorization: multiple actor options:

a) tool (outside slice) to AggMgr srvc; AM API; XMl-RPC + ssl [protoGENI cert + GENI credential]

b) tool (outside slice) to host (Slice A); ssh, scp [private/public keys]

c) tool (outside slice) to I&M srvc (Slice A); http(s) [in LAMP, browser to GUI, https with protoGENI cert] [can private/public keys be used for access to a GUI?] [in OMF, signed messages using private/public keys; more details?]

d) I&M srvc (Slice A) to I&M srvc (Slice A); http(s) [in LAMP, service to service, https with LAMP cert, from LAMP CA] [in GIMI/OML, not using http; what is done there?]

e) I&M srvc (Slice A) to I&M srvc (Slice B); http(s) [in European perfSONAR, SOAP interface with security tokens] [can delegated GENI credentials be used?] [can credentials based on ABAC be used?]

f) I&M srvc (Slice A) to UNIS srvc; http(s) [in LAMP, service to UNIS, https with protoGENI cert]

g) tool (outside slice) to iRODS archive srvc; what is interface to iRODS? ftp(s)? can it be http(s)? how is authentication/authorization handled? [need info from Shu] Note; iRODS review call on 4/12, 9:30am.

h) option: I&M srvc (Slice A) to iRODS archive srvc; is there any way to move data from MC direct to iRODS? perhaps mount iRODS on node with MC? [need info from Shu]

2) Authentication and authorization: multiple methods:

a) [for ssh, ssl, etc.] private/public keys

a') [in OMF] signed messages using private/public keys

b) user certificates

c) GENI credentials (user and slice)

c') [in IMF, GENI credentials included with XML messages, for authorization? how? reuse?]

d) ABAC [Harry: GPO believes that ABAC may eventually be used for resource assignment, but not soon] [What code is available from ISI? Jim is checking with Teb Faber; waiting for a response]

ABAC references:
Deter web site: http://abac.deterlab.net/
Authorization storyboard from Jeff Chase: http://groups.geni.net/geni/wiki/AuthStoryBoard
Slides on credential store from Jeff Chase: http://groups.geni.net/geni/attachment/wiki/AuthStoryBoard/certstore.ppt
Slides on future of authorization in GENI from Tom Mitchell: http://groups.geni.net/geni/attachment/wiki/GEC13Agenda/Authorization/AuthFuture.pdf [note options without and with credential store]
Summary of GENI authorization discussion at GEC13 (and before): http://groups.geni.net/geni/wiki/GeniAuthorization

*4/5/12 notes from Jeanne:
Jim got code from Ted Faber. Looking through it. Looking at example code.
ABAC is not currently implemented (at ISI?) as a service. This needs to be done. Ted thinks this should be trivial. Looks like (via papers) ORCA has implemented as a server (ORCA Pod?) with RESTful interface.
Jim contacted Jeff Chase to get code. Making some progress, still some unknowns.
Martin: Thinks we perhaps can use UNIS for source of constraints or reference (URL) to constraints. Use libabac to prove the chain of assertions.
All agree that we should have a central location for rules.
Guilherme: Don’t want the rules to be exposed.
Is the proving done at the service or at the authenticating application?
Task: Harry suggests drawing up a proposal for using ABAC. Jim: Jim and Martin to discuss, learn more, and come up with a proposal.

5/2: Guilherme looked at ABAC code for AA

  • on 5/2: need a drawing and technical reivew at design review

3) Target protoGENI environments:

a) servers: relatively few; public IP available

b) VMs: OpenVZ; expect move to LXC; internal to an aggregate, private host name, private IP addresses, need more details

c) To date, all LAMP/periscope has been on servers

c') Task: try to run all LAMP nodes (or just measurement nodes) on VMs (Matt Jaffe)

d) To date, all INSTOOLS has been with MC on server, and MPs on VMs

e) Task: Try to run INSTOOLS MC in a VM; Nasir on 3/30: still runs, although might need some small code changes; but would need to open http port, perhaps with extension to rspec; need to discuss with protoGENI (Jonathan Deurig) about adding to mapping agent; Jim had discussed with Jonathan and Rob earlier, quite doable, but would have to restart mapping agent; perhaps could "piggyback" on opening ssh port?

f) Task: can ssh into public host name (or public IP) , with special 5+ digit port number (from manifest) from port map

g) Task: (see e) above) how to access http interface? tunnel through ssh? port map, like ssh? perhaps could "piggyback" on opening ssh port? setup a separate proxy?

  • See Port mapping proposal from Hussam
  • Jim on 4/12: Talked with Rob Ricci. He is willing to work on it, since many needs to proxy to VMs. (In INSTOOLS, used VNC)
  • On 4/12: protoGENI considering using OPS server to provide persistent proxy.
  • Jim on 4/19: Long term solution: Gary Wong at Utah is considering a proxy service per testbed, advertised in manifest.
  • Jim of 4/19: Short term solution: user can get to http port via ssh and port forwarding; Hussam has script.
  • On 4/26: short term solution: for 1st, put MC only on a server; concern: some servers have limited capacity.
  • On 4/26: long term solution: wait for Utah proxy service per testbed; when? perhaps soon?

h) Task: what about vnc tunnels? how were they done in INSTOOLS? which port on host? (who?)

i) Task: what happens when VMs are on one aggregate? can reach each other via private IP addresses

i') Task: what happens when VMs are on multiple aggregates? (who?)

4) UNIS service

Per call with Martin on 3/27/12:

a) Question: In LAMP, is there a local UNIS, or not??

(Martin on 3/27:) Not yet; needs to be, with push from local UNIS to global UNIS.

b) How does UNIS authenticate/authorize when receiving data?

(Martin on 3/27:) [in LAMP, service to UNIS, https with protoGENI cert]

c) Question: Use web interface on common node to configure services, tests; how does this push config to UNIS? What authentication/authorization steps are included?

d) Old UNIS vs new UNIS:

4/5/12 notes from Jeanne: What is the transition plan? Both can run in parallel until full functionality is available with new UNIS. Then turn down old UNIS.
Local vs. global UNIS hierarchy: Will new UNIS have local and global configuration? Yes, probably not by GEC14.

4/18/12 notes from Harry: Martin indicates that Old UNIS and New UNIS can run in parallel, and in sync, until Old UNIS is eventually turned down.

Guilherme on 4/19: Expect Old UNIS and New UNIS to contain smae information, but no 1:1 mapping
Guilherme on 4/19: Could write a wrapper for perfSONAR services to talk with New UNIS, but significant effort.

5) User workspace service

Current view: (Harry)

a) Persistent Linux environment, with file system, key/certificate/credential store, dedicated to the user; also rspec store, etc.

b) Place for tools, e.g., Gush and OMNI, and EC, and scripts; can easily call one another; not in slice; could deal with multiple slices

c) Place for "portals"; but what are they? (see below)

d) Task: Setup user workspace using server (or VM) in BBN Cambridge lab; begin to include tools, etc . (Jeanne)

  • On 3/30/12: Done on VM in BBN Cambridge lab, ubuntu 10.04, internal to BBN.
  • Next: external to BBN

e) Task: Consider VM to distribute user workspace (Matt); e.g, ubuntu on virtual box [similar to what has been done at GEC tutorials]

f) Task: What is required to secure keys/certificates/credentials? passphrase? other? [Per Tom Mitchell, OMNI does not require passphrase, but FLACK does currently require passpharase] [Per Jim protoGENI cert does require passphrase] [Vic to check with Steve Schwab; need to balance security and ability ot use scripts.]

g) Start with CNRI: Directory Archive (DA) service, which can push data to DOA service, using OI service

  • Then replace DOA with iRODS
  • Have iRODS at IU for NetKarma; Jim and Wesley talking with Ilia and Shu
  • Or, do we use IRODS client to push/pull date to/from IRODS?
  • on 5/2: now assuming IRODS client to push/pull date to/from IRODS

h) Include MDOD creator/editor (CNRI, GPO)

i) Task: Need help with final formulation of MDOD (Ezra and Omer from GEMINI) (Shu from GIMI)

j) Task: Define view of user workspace service (Jeanne, Matt, Harry, Jim, Martin, Niky)

[Jeanne to add security policy into view]

j') Use of GUSH:

  • *4/5/12 notes from Jeanne:
  • What does Gush provide vs. Flack? Why would user use Gush?
  • Working with VMs. According to Vic, Jeannie A. says Gush will work with anything that allows SSH.
  • Jeanne O. has experienced some issues with VMs in Gush. Investigate further.
  • Issues with hostnames? Need to investigate this further.
  • Harry: Suggest Jeanne talk with Luisa about Gush information. She has worked with it a lot.
  • Jim asks Martin: How does Gush integrate with UNIS?
  • Discussion of using UNIS to store/access information about the slices for the experiment rather than passing around rspecs.
  • How do we keep this UNIS information up-to-date?
  • Guilherme suggests things that are outside of slice introspection, user needs to push to UNIS.
  • What types of changes can we make to the slice in Gush/Omni/other that I&M and others need to discover from UNIS?
  • Task: Things to investigate regarding Gush (Jeanne will report next week):
  • 1. Tridentcom paper says gush has ability to add and remove nodes from a slice. How is this done? Under what circumstances does this work? [GENI AM API does not support updateSliver]
  • 2. How does Gush work with protogeni VMs?
  • 4/12: Jeanne reports: Certain commands (slice add, renew, update) apply only to PlanetLab.
  • Issue: Gush takes hostname and goes to physical node, not VMs; considering how to rectify.
  • In ORCA, this works. hostname in manifest is not the same as the hostname reported for the node.
  • 4/12: Jim asks: How would be run shell scripts on nodes? scp between nodes?
  • 4/26: Known issue: Gush does not find ssh port on VMs properly; can this be fixed soon? if not, cannot use Gush for GEC14
    • 4/26: Jeanne will consider using just ssh for tests, not Gush, to load code and manage processes
    • on 5/2: needed fix for Gush is delayed; therfore, will not use Gush for GEC14 testing; perhaps later, if can find support for Gush

6) Portal services

a) Option 1: "portal to UIs". [Is this close to Jim's proposal?]

b) Option 2: a more complete tool for managing I&M services, as is implied in the SOW, so that it can view, orchestrate, edit MDOD, manage archiving, etc. [Is this close to Max's proposal]

c) Task: understand options for authentication and authorization at a web interface. (who?)

d) Task: provide a more complete view of GEMINI portal service (Jim and Charles)

Task: Jim and Charles plan to provide in a week or two.
Task: Charles needs to find a name for the service

After discussion on 3/31/12 with Jim, Harry feels that this is very close to Option 1: "portal to UIs".
Jim expects User to have a capable browser, e.g., one that runs HTML-5
Jim expects portal to manage windowing to various GUIs.
Jim expect all interactions to be via browser, so there are window(s) to login to shell(s), etc.
Jim does not specify whether browser is looking at GUI in slice, or a tool; tools are not in a specified place. Harry feels that portal and other tools are in a "user workspace", in a persistent Linux environment, with file system, key/certificate/credential store, dedicated to the user; could also have rspec store, etc. ; then, all tools have ready access to required info, and can readily call one another.
Harry thinks of "persistent Linux environment" on infrastructure, e.g., a server under your desk or in the lab; not your laptop; Jim agrees, and has thought portal would be hosted on infrastructure at Kentucky
Harry feels that this is just a strucutre, that there is much more work to define tools, interfaces, etc.; Jim agrees, was concerned it was the final configuration.
Task: Harry will modify drawing to reflect discussion with Jim, and then two perspectives can be compared.

Done on 4/4; agree that portal can be in user workspace, or somewhere else.
See updated drawing.

Jim and Charles on 4/17: showed early demo; portal is very thin, and runs in a server; user logs into portal with browser, typically using HTML5 that runs in browser; portal includes plugins that interface to various parts of the system, parts of slice and/or tools; tools can run in user workspace; portal remembers parameters, but is NOT persistent; common denominator is a web GUI, even when interfacing to a CLI; expect user's identity to pull credentials from store ("ABAC" approach); expect various rspecs to be stored in UNIS.

Guiherme on 4/19: saw demo of portal

Jim and Charles on 4/17/12: next step is to further define portal, and write it up.

e) Task: Understand NICTA's iREEL portal service; is this a more complete tool for managing I&M services?

  • Get login, and survey (Jeanne)

  • Provide more info (NICTA, e.g., Christoph)

7) Configuration 1: make active network measurements

a) follows p15 Operator A slice, like LAMP project.

a') for GEC14, consider: use LAMP code with perhaps minor modifications

a'') Start: each node on a server, with an available public IP address single aggregate or multiple aggregates

a''') Second: all nodes on VMs, or all nodes on VMs except common node on server

b) One common node (e.g., node n+1) to: configure measurements, collect data, present data

c) Multiple measurement nodes (e.g., nodes 1, 2, ..., n)

d) Start: one slice, classic pS interface, with data pulled from measurement node, authorized with GENI credential or ?

e) Global old UNIS as shown; include local UNIS on common node?

f) Load software onto common node with image; as option, load package

g) Load software onto measurement node with image; as option, load package after app

g') Use Gush to manage processes, so that can easily switch between app and active network measurements; good for establishing continuity and available bandwidth at beginning of experiment.

h) Use web interface on common node to configure services, tests, like LAMP; how does this push config to UNIS?? How do we let only user do this with keys, etc.

i) Use web interface on common node to present/observe data, like LAMP How do we let only user do this with keys, etc.

j) Demo all of the perfSONAR network performance tools, tests, as was done in LAMP project

k) Extension: pull data from one slice to another, as shown in p15 from Operator A to Operator B; authorize using GENI credentials; how is this done?

l) Provide regression tests of various configurations, features, etc., driven by scripts (Jeanne)

m) Formulate tutorial for users at GEC14. What is content of the tutorial, i.e., what are the use cases? what is different between the test plan and the tutorial?

n) Coordinate tutorial content with GPO (Mark, Niky) when? starting in mid-May how?

8) Configuration 2: gather basic host metrics

a) follows p15 Experimenter C slice

a') Need baseline configuration ASAP

  • 4/12: (Guilherme) considering overall framework, working on interfaces, considering UNIS functions and schema.
  • 4/19: (Guilherme) Need baseline config for GEC14 tutorials ASAP
  • 4/26: (Guilherme) Need baseline config for GEC14 tutorials ASAP
  • on 5/2: all components underway; some documentation; some timelines

a'') Need MP to gather host metrics (Guilherme)

  • easy for raw servers; hard for VMs
  • considering BLiPP (Matt) to gather all utilization metrics; how to refactor BLipp?
    • plan to use libvirt to gather metrics from VMs and hypervisor node
    • on 4/26: * need to talk with InstaGENI to get libvert installed!
  • Could still use SNMP daemon from INSTOOLS to gather table info (Jim, Hussam)
  • Use netflow to gather flow metrics; need to be able to turn on/off since uses many resources
  • on 4/26: for 1st, do not include netflow, because of capacity issues
  • Could associate netflow with both hosts and switches.

a''') Need to define which host metrics to gather

  • 4/12: For those gathered by INSTOOLS, see list by Hussam
  • Talking to Dan about use cases for gathering host metrics.
  • 4/19: see list on github at: list
  • 4/19: start with utilization metrics
  • 4/19: later, add netflow metrics
  • 4/26: need up-to-date list
  • on 5/2: need to add libvert to InstaGENI rack; is this OK? Martin to porvide description.

b) MP pushes to Measurement Store (MS)

  • Use http? POST to port? what about authentication and authorization?
  • Use XSP, for streaming? Martin on4/26: working well.

c) Need to realize new MS

  • using on SQL for data
  • How many options?
  • One per Aggregate?
  • Can also be arranged for publish/subscribe; how?

d) Uses new UNIS

  • Uses RESTful interface, replaces older UNIS with SOAP interface
  • Allows drawing topology
  • Used to configure services?
  • Prototype underway (Ahmed)

e) Need to realize MAP service

  • Start with modified Periscope service
  • Later: include druple from INSTOOLS?
  • Uses new MS
  • Uses new UNIS

f) Later: Extend to gathering data from an application

g) Task: Prototype soon when? (Guilherme)

h) Backup option: Use what capabilities are in LAMP?

i) Provide regression tests of various configurations, features, etc., driven by scripts (Jeanne)

j) Formulate tutorial for users at GEC14. What is content of the tutorial, i.e., what are the use cases? what is different between the test plan and the tutorial?

k) Coordinate tutorial content with GPO (Mark, Niky) when? how?

9) Steps toward GEC14 tutorials

a) Need plan to coordinate configurations to provide make active network measurements and to collect basic host metrics in the same slice

  • 4/19: For GEC13, LAMP code and INSTOOLS code were both loaded; portal was pointed to both GUIs
  • 4/19: Plan to load both types of code
  • 4/26:: plan for host monitoring to be ON by default; need to specifically enable network measurements
  • 4/19: Perhaps UK could work on unified deployment plan. Note: Cannot use UpdateSlice.
  • 4/26: Harry suggests using perfSONAR config GUI to config host measurements

b) Long term strategy: unified set of tools

c) Start with protoGENI tutorial? LAMP tutorial? INSTOOLS tutorial?

d) Arrange user workspace (GPO, Jeanne)

e) Need to agree on schedule for GEC14 tools:

  • Design review week of 5/7? includes arch, configuration, use cases
  • Development complete (freeze) on 6/15
  • Testing and bug fixes: +2 weeks
  • Prepare and test turotrial: +1 week
  • also INSTOOLS to GENI summer camp, 5/29 - 6/2
  • also INSTOOLS to TridentCom 6/15

10) GEMINI project documentation

a) Code on IU github Good: all relevant code appears to be here, including Kentuck code

b) Jira Good: being used by IU to track project Concern: Kentucky effort not reflected here

c) GENI trac for GEMINI Include TopicsTasksIssues Include drawings

Attachments (3)

Download all attachments as: .zip