Alert.png The wiki is deprecated and due to be decommissioned by the end of September 2022.
The content is being migrated to other supports, new updates will be ignored and lost.
If needed you can get in touch with EGI SDIS team using operations @ egi.eu.

Difference between revisions of "GOCDB/Release4/Development/MultipleGRIS"

From EGIWiki
Jump to navigation Jump to search
 
(38 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<< Back to [[GOCDB/Documentation_Index]] <br/>
[[Category:GOCDB]]
<< Back to [[GOCDB/Release4/Development]] <br/>
Moved to [[GOCDB/Release4/Development/MultipleEndpointsPerService]]
 
=Multiple Endpoints=
==Introduction==
As requested in ticket https://rt.egi.eu/rt/Ticket/Display.html?id=3347. The Top-BDII needs the URL of each service endpoint's GRIS in order to retrieve information about the endpoint. The GRIS URL for each endpoint is to be stored in GOCDB.
 
To achieve this we propose adding support for multiple <Endpoint> elements per service (the Endpoint element in turn wraps a <URL>). For example, one Endpoint could define the actual service URL, a second could define the GRIS URL, whilst a third could define an Endpoint URL for the admin portal of that service and so on.
 
Given that a Service would be able to define multiple endpoints, a mechanism is required to distinguish between those different endpoint types and their intended purpose. There are three possibilities (still to decide):
 
# Define a new <Classification> tag as a child of <Endpoint>. For example, the Endpoint could define the service's GRIS URL with a <Classification> value of "Resource Information Service").
# Define a new Endpoint 'Classification' attribute, e.g. <Endpoint classification="RIS">
# Define an Endpoint sub-type specialisation such as <GRIS_Endpoint> (the GLUE2 extensibility mechanism).
 
Adding multiple Endpoints per service is a more GLUE2 centric approach. Additional elements/attributes can be added to the GOCDB Endpoint if required. We may change the 'classification' element with a more suitable Glue2 alternative or use a sub-type or attribute (still to decide). For more GOCDB/GLUE2 comparisons see [[GOCDB/Release4/Development/GLUE2Compatibility]].
 
==Implementation==
When adding or editing a service we propose that a user can add multiple child Endpoint objects. 
 
The GOCDB-PI output will be extended to show multiple <Enpoint> elements (each nesting child <URL> and <Classification> elements). Using this mechanism the Top-BDII can retrieve a filtered list of endpoints that have a URL with the requied classification (e.g. "Resource Information Service").
 
 
==PI Examples==
Query String:
https://goc.egi.eu/gocdbpi/private/?method=get_service_endpoint&Classification=Resource%20Information%20Service
 
<?xml version="1.0" encoding="UTF-8"?>
<results>
  <SERVICE_ENDPOINT PRIMARY_KEY="50257G0">
      <PRIMARY_KEY>50257G0</PRIMARY_KEY>
      <HOSTNAME>dgiref-globus.fzk.de</HOSTNAME>
      <GOCDB_PORTAL_URL>https://goc.egi.eu/portal/index.php?Page_Type=View_Object&amp;object_id=77182&amp;grid_id=0</GOCDB_PORTAL_URL>
      <HOST_OS>SL5</HOST_OS>
      <BETA>N</BETA>
      <SERVICE_TYPE>GRAM5</SERVICE_TYPE>
      <CORE></CORE>
      <IN_PRODUCTION>Y</IN_PRODUCTION>
      <NODE_MONITORED>Y</NODE_MONITORED>
      <SITENAME>DGIREF</SITENAME>
      <COUNTRY_NAME>Germany</COUNTRY_NAME>
      <COUNTRY_CODE>DE</COUNTRY_CODE>
      <ROC_NAME>NGI_DE</ROC_NAME>
      <ENDPOINT>
        <URL>ldap://ce-cms.vinca.rs:2170/mds-vo-name=AEGIS10-VINCA-CMS,o=grid</URL>
        <CLASSIFICATION>Resource Information Service</CLASSIFICATION>
      </ENDPOINT> 
</SERVICE_ENDPOINT>

Latest revision as of 16:53, 23 October 2013