11
EGEE-II INFSO-RI- 031688 Enabling Grids for E-sciencE www.eu-egee.org EGEE and gLite are registered trademarks Service Discovery on UI and WMS Giuseppe Avellino <[email protected]> Abingdon, 9 November 2006

Service Discovery on UI and WMS

  • Upload
    casta

  • View
    64

  • Download
    4

Embed Size (px)

DESCRIPTION

Service Discovery on UI and WMS. Giuseppe Avellino Abingdon, 9 November 2006. Contents. Why Service Discovery (SD) Using Service Discovery Service Discovery on UI Service Discovery on WMS WMProxy Client SD Configuration WMProxy Server SD Configuration - PowerPoint PPT Presentation

Citation preview

Page 1: Service Discovery on UI and WMS

EGEE-II INFSO-RI-031688

Enabling Grids for E-sciencE

www.eu-egee.org

EGEE and gLite are registered trademarks

Service Discovery on UI and WMSGiuseppe Avellino <[email protected]>

Abingdon, 9 November 2006

Page 2: Service Discovery on UI and WMS

Abingdon, 9 November 2006 2

Enabling Grids for E-sciencE

EGEE-II INFSO-RI-031688

Contents

• Why Service Discovery (SD)• Using Service Discovery• Service Discovery on UI• Service Discovery on WMS• WMProxy Client SD Configuration • WMProxy Server SD Configuration• Conclusions

Page 3: Service Discovery on UI and WMS

Abingdon, 9 November 2006 3

Enabling Grids for E-sciencE

EGEE-II INFSO-RI-031688

Why Service Discovery

• Service Discovery is used for:

– UI (CLI Python): retrieval of the NS and LB services addresses to contact for submitting user requests

– UI (WMProxy client): retrieval of the WMProxy endpoints to contact for submitting user requests

– WMS (WMProxy): retrieval of the LB server addresses that can be used for storing job-related events (i.e. for building the job identifier)

• Service Discovery behavior is configurable in both UI and WMS

Page 4: Service Discovery on UI and WMS

Abingdon, 9 November 2006 4

Enabling Grids for E-sciencE

EGEE-II INFSO-RI-031688

Using Service Discovery

• UI and WMS use C++ Service Discovery API

• Service Discovery available data types are:– Service– ServiceDetails– ServiceData

• UI and WMS use the Service Discovery data type Service:– They only need to get the addresses used to contact the services – No check is done to see which VOs are supported by the server– No other information is required/used

• The query is made with the method listServices

• Used parameters are:– Service type: key value read from configuration file– Site name: NULL– List of VOs: NULL

Page 5: Service Discovery on UI and WMS

Abingdon, 9 November 2006 5

Enabling Grids for E-sciencE

EGEE-II INFSO-RI-031688

Using Service Discovery

• Tests were made with the RGMA and BDII plugins. We were able to get information only using the BDII plugin

• No tests have already been done with FILE

Environment variables were set to:

– GLITE_SD_PLUGIN = “bdii, rgma”– LCG_GFAL_INFOSYS = “gridit-bdii-01.cnaf.infn.it:2170”

– GLITE_SD_VO not set

• All the needed environment variables were exported to the WMProxy through the Apache directive PassEnv

Page 6: Service Discovery on UI and WMS

Abingdon, 9 November 2006 6

Enabling Grids for E-sciencE

EGEE-II INFSO-RI-031688

Service Discovery on UI

• Service Discovery is used only as a fallback solution

• This is: – to avoid Service Discovery overload, calling it each time a

request is performed– no specific information about Service Discovery stability and

avalaibility

• Any time a command is performed by user:– UI tries to contact the configuration file LB (or NS) services.– If all of them are not responding, a call to Service Discovery is

performed– UI tries to contact the found Service Discovery LB (or NS)

services.

Page 7: Service Discovery on UI and WMS

Abingdon, 9 November 2006 7

Enabling Grids for E-sciencE

EGEE-II INFSO-RI-031688

Service Discovery on WMS

• Service Discovery is used as an extra source of services addresses

• The call to the Service Discovery is performed only in the case last call was made a long time ago (information validity time)

• Any time a call for an operation reaches WMProxy:– WMProxy verifies the validity of the Service Discovery

information, if old, it performs a call to get updates– The LB service to use is randomically selected among a list

(weigths are used) made of: LB services provided by user via configuration file LB services found with the Service Discovery

Page 8: Service Discovery on UI and WMS

Abingdon, 9 November 2006 8

Enabling Grids for E-sciencE

EGEE-II INFSO-RI-031688

WMProxy Client SD Configuration

• WMProxy client defines three attributes inside the gLite configuration file for Service Discovery configuration:– EnableServiceDiscovery: boolean attribute for Service Discovery

enabling– LBServiceDiscoveryType: type key to discover LB services.

Template configuration file value is “org.glite.lb.server”– WMProxyServiceDiscoveryType: type key to discover WMProxy

servers. Template configuration file value is “org.glite.wms.WMProxy”e.g. WorkloadManagerProxy = [

EnableServiceDiscovery = true;

LBServiceDiscoveryType = "org.glite.lb.server";

WMProxyServiceDiscoveryType =

"org.glite.wms.WMProxy";]

Page 9: Service Discovery on UI and WMS

Abingdon, 9 November 2006 9

Enabling Grids for E-sciencE

EGEE-II INFSO-RI-031688

WMProxy Server SD Configuration

• WMProxy server defines three attributes inside the gLite configuration file for Service Discovery configuration:– EnableServiceDiscovery: boolean attribute for Service Discovery

enabling– LBServiceDiscoveryType: type key to discover LB Servers.

Template configuration file value is “org.glite.lb.server”– ServiceDiscoveryInfoValidity: time in seconds (n) indicating the

validity of the information provided by the Service Discovery. A call to Service Discovery for updated information is done every n secondse.g. WorkloadManagerProxy = [

EnableServiceDiscovery = true;

LBServiceDiscoveryType = "org.glite.lb.server";

ServiceDiscoveryInfoValidity = 3600; ]

Page 10: Service Discovery on UI and WMS

Abingdon, 9 November 2006 10

Enabling Grids for E-sciencE

EGEE-II INFSO-RI-031688

Conclusions

• Plugin selection only via environment variables.

In the case of the plugin BDII is used, an API method to set the BDII server to contact could be useful

• Differences between RGMA and BDII. e.g. key value to use

• Publication of new services such as WMProxy Web servers (endpoints):– How. It seems not so easy– Who should do it– Differences between RGMA and BDII

Page 11: Service Discovery on UI and WMS

Abingdon, 9 November 2006 11

Enabling Grids for E-sciencE

EGEE-II INFSO-RI-031688

Conclusions

• Other Service Discovery provided fields (more complex data types) could be used for future needs:– VO discrimination– Server/Service version discrimination– Server/Service type discrimination– To get Web services WSDL

• In the furture, Service Discovery could be used to search for other services:– Job Provenance– VO specific services in general

• "Configuration free SD": use of Service Discovery for bootstrapping; a dedicated service to get hosts/services configuration information