GOCDB/Release4/Development/VSites

From EGIWiki
< GOCDB‎ | Release4‎ | Development
Revision as of 12:54, 2 February 2012 by Jcasson (talk | contribs) (VO Feed for ATP)
Jump to: navigation, search

<< Back to GOCDB/Documentation_Index
<< Back to GOCDB/Release4/Development

Virtual Sites

Introduction

Virtual sites are a mechanism to arbitrarily group existing service endpoints together. The service endpoints themselves will still belong to their parent (non-virtual/physical) sites. This feature has originally been requested at https://rt.egi.eu/rt/Ticket/Display.html?id=987.

Virtual Site Entity

A virtual site is a new GOCDB entity containing the following information:

  • Name
  • Description
  • Contact E-Mail
  • Monitored flag (Y/N)
  • Child service endpoints
  • Roles held over the virtual site

Cardinality

A single service endpoint may belong to many parent VSites and a VSite may have many child service endpoints. The existing cardinality between (non-virtual) sites and service endpoints remains: a service endpoint may only have one parent (non-virtual) site.

Vsites.png

PI Queries

Virtual sites will not appear in any existing PI queries. To expose virtual site information we will introduce two new PI queries:

get_virtual_sites

Parameters:

  • vsitename - Only return info for a specific virtual site
  • scope - Only return virtual sites that are (In)visible to EGI

Example Output: XML

get_virtual_sites_roles

Parameters:

  • dn - Limit results to user with given certificate DN

Example output: XML

Roles

When a user creates a virtual site they will be granted the role "Virtual Site Administrator" over the site. Other users will be able to request a "Virtual Site Administrator" role over the virtual site and the administrator will be able to accept or reject these requests as they see fit using the standard role management mechanism.

Security

Any user can create a virtual site. When adding service endpoints to the site we will show a message saying: "Before adding service endpoints to this virtual site please ensure you have permission from the affected service endpoint administrators". We recommend this is defined as a formal procedure for creating a virtual site. The premise is that a user creating a virtual site can easily be held accountable for their actions.

User Interface

The following changes will be made to support virtual sites in the user interface:

  • New link: "Add Virtual Site" added to the left hand menu bar
  • New link: "View Virtual Sites" added to the left hand menu bar
  • When viewing a virtual site the properties listed in "Virtual Site Entity" above will be shown
  • My Sites will show virtual sites administered by the current user

Limitations

  • A virtual site cannot have a child service endpoint that doesn't already have a parent site.
  • A role granted over a virtual site does NOT give any permission over child service endpoints.

VO Feed for ATP

In order for ATP to use virtual sites, GOCDB have been asked to produce a VO feed for the OPS VO Only. This feed should not be used by anyone except ATP and won't be supported outside of ATP's use.

A sample of the XML we will produce is available here.

Background information about VO feeds: https://twiki.cern.ch/twiki/bin/view/Main/ATPVOFeeds

Questions

  1. Will this design work for the other operational tools?
  2. With this implementation, can VSites be monitored?
  3. With this implementation, can VSites appear in the dashboard?
  4. Will this work for the ATP folks? Are we expected to provide a VO feed of VSites to ATP? If so what VO name(s) would we populate the feed with? (GOCDB doesn’t store VO information)
  5. Can all operational tools address the use cases detailed in https://wiki.egi.eu/wiki/Logical-site with our proposal?
  6. Do other tools need a mechanism to distinguish which virtual sites should have availability reports calculated (similar to the monitoring flag)?
  7. Do the other ops tools require any other flags to distinguish one type of virtual site from another?

Source of Use Cases

https://wiki.egi.eu/wiki/Logical-site