Presentation is loading. Please wait.

Presentation is loading. Please wait.

EMI Service Registry (EMIR) JRA1, Infrastructure

Similar presentations


Presentation on theme: "EMI Service Registry (EMIR) JRA1, Infrastructure"— Presentation transcript:

1 EMI Service Registry (EMIR) JRA1, Infrastructure
10/14/11 EMI Service Registry (EMIR) JRA1, Infrastructure Shiraz Memon (FZJ), Ivan Marton (NIIF), Gabor Szigeti (NIIF)

2 Outline Motivation Goals EMIR Highlights Architecture
10/14/11 Outline Motivation Goals EMIR Highlights Architecture Information Model REST API Security EMI Integration Scenario Performance Analysis Implementation Remarks Status report Oct 14, 2011 EMI Registry 2

3 Motivation No common Index Service
10/14/11 Motivation No common Index Service Site/Top level BDII ARC ISIS UNICORE Registry No common “service” to store the service information Various Service record formats Service publish and discovery interfaces Oct 14, 2011 EMI Registry 3

4 Goals Common Index Service to Publish and Discover the Services
10/14/11 Goals Common Index Service to Publish and Discover the Services Unified Information Model Support for federations (Natural to existing Infrastructures) Inter-Federation Lookups Multi-Federation service discovery Common Security Model Scalable and Performance DCI lookup Multi DCI lookups Oct 14, 2011 EMI Registry 4 4

5 Unified Index Service: EMI Service Registry (EMIR)
10/14/11 Unified Index Service: EMI Service Registry (EMIR) Discover all the EMI Services (ARC, gLite, UNICORE, dCache) Hierarchies and Federations Common Access Point to Service Discovery (even at each hierarchical level) REST-ful Interface to Publish and Discover the Services Service Information: GLUE 2.0 Based Service Entity Bulding hier. Registries Informa. model Oct 14, 2011 EMI Registry 5 5

6 10/14/11 System Architecture Oct 14, 2011 EMI Registry 6

7 10/14/11 Oct 14, 2011 EMI Registry 7 7

8 Service Information Model
10/14/11 Service Information Model Oct 14, 2011 EMI Registry 8

9 GLUE 2.0: Information Model
10/14/11 GLUE 2.0: Information Model Service General Information Meta-data (Last-update, Publisher/Owner, Lifetime) Endpoint Access Information Location Physical Location Geo-Coordinates Contact Additional Attributes (can be added on the fly) TTL for every Service Entry Oct 14, 2011 EMI Registry 9

10 JSON Rendering Developed within EMI
10/14/11 JSON Rendering Developed within EMI Used for Publishing and Discovering the Services [ { "Service_Name": “EMI Execution Service", "Service_CreationTime": {"$date": " T11:47:24Z"}, "Service_Type": “eu.emi.es", "Service_Capability": [“activity submission", “activity creation"], "Service_QualityLevel": "production", "Service_Endpoint_URL": " "Service_Endpoint_Technology": “SOAP over HTTP", "Service_Endpoint_InterfaceName": “ActivityManagement", "Service_Endpoint_InterfaceVersion": ["1.0“ ], "Service_Endpoint_WSDL": " ?wsdl", "Service_Endpoint_HealthState": "ok", "Service_Endpoint_HealthStateInfo": “it is OK, I can see it", "Service_Endpoint_ServingState": "production", "Service_Endpoint_StartTime": {"$date": " T11:47:24Z"}, "Service_Endpoint_DowntimeAnnounce": {"$date": " T11:47:24Z"}, "Service_Endpoint_DowntimeStart": {"$date": " T11:47:24Z"}, "Service_Endpoint_DowntimeEnd": {"$date": " T11:47:24Z"}, "Service_Endpoint_QualityLevel": "production", "Service_ExpireOn": {"$date": " T11:47:24Z"}, "Service_UpdateOn": {"$date": " T11:47:24Z"}, "Service_OwnerDN": “CN=Shiraz Memon,O=FZJ,OU=JSC” } ] Oct 14, 2011 EMI Registry 10 10

11 Querying the XML documents (1/2)
10/14/11 Querying the XML documents (1/2) < ! Document Start > <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ns2:QueryResult count="1" xmlns:ns2=" xmlns=" <Service BaseType="Entity" CreationTime=" T13:47: :00" Validity="12313"> <Name>ComputingService</Name> <Extensions/> <Type>job-management</Type> <QualityLevel>production</QualityLevel> <Location> <Address>A Street 1</Address> <Country>Germany</Country> <PostCode>53119</PostCode> <Latitude>53.3</Latitude> <Longitude>4.0</Longitude> </Location> <Contact> <Detail> <Type>sysadmin</Type> </Contact> <Type>developer</Type> Add alternative word Oct 14, 2011 EMI Registry 11 11

12 Querying the XML documents (2/2)
10/14/11 Querying the XML documents (2/2) <Endpoint BaseType="Entity" CreationTime=" T13:47: :00"> <Name>ComputingService</Name> <URL> <Capability>Activity Management</Capability> <Capability>Activity Submission</Capability> <Technology>technology</Technology> <InterfaceName></InterfaceName> <InterfaceVersion>1.0</InterfaceVersion> <HealthState>ok</HealthState> <HealthStateInfo>Its OK</HealthStateInfo> <ServingState>production</ServingState> <StartTime> T13:47: :00</StartTime> <DowntimeAnnounce> T13:47: :00</DowntimeAnnounce> <DowntimeStart> T13:47: :00</DowntimeStart> <DowntimeEnd> T13:47: :00</DowntimeEnd> </Endpoint> </Service> </ns2:QueryResult> < ! Document End > Oct 14, 2011 EMI Registry 12

13 Database Technology MongoDB: NOSQL database
10/14/11 Database Technology MongoDB: NOSQL database Supports Native JSON format Dynamic Indexing Replication Horizontal scalability with sharding (Similar to Google’s BigTable) Available for most of the major OSs Change title to mongodb Oct 14, 2011 EMI Registry 13 13

14 REST-ful API: Publishing & Querying
10/14/11 REST-ful API: Publishing & Querying Oct 14, 2011 EMI Registry 14

15 Service Registration /serviceadmin Register
10/14/11 Service Registration /serviceadmin Register -> HTTP POST - /serviceadmin - Body: JSON <- OK Read -> HTTP GET – /serviceadmin?Service_Endpoint_URL=service_url <- JSON document Update (full replace) -> HTTP PUT - /serviceadmin Delete -> HTTP DELETE - /serviceadmin?Service_Endpoint_URL=service_url Oct 14, 2011 EMI Registry 15

16 Service Querying Showing all the services
10/14/11 Service Querying Showing all the services /services /query -> HTTP GET <- OK, JSON Returns the 100 services, skipping the first 20 /query?limit=100&skip=20 Returns 100 services skipping the first 20 records with specific name /query?limit=100&skip=20&ServiceName=ComputingService Returns 100 services skipping the first 20 records, filtered by “name”, as GLUE 2.0 XML document /query.xml?limit=100&skip=20&ServiceName=ComputingService <- OK, XML Add enumeration Oct 14, 2011 EMI Registry 16 16

17 Interacting with EMIR Register/Update Query
10/14/11 Interacting with EMIR Register/Update curl -v -H "Content-Type: application/json" -X POST (PUT) / Query curl -v -X GET curl -v -X GET Delete curl -v -X DELETE _URL=1 Header Method Data Registry URL Oct 14, 2011 EMI Registry 17 17

18 10/14/11 Federations Oct 14, 2011 EMI Registry 18

19 Hierarchical Structure
10/14/11 Hierarchical Structure <<Global>> GSR Country Publish <<Parent>> DSR State Publish <<Child>> DSR HPC Center Events are propagated to the top level registries Handling Failures Domain publish Liveness at the GSR ∞ Level of Hierarchy S Oct 14, 2011 EMI Registry 19 19

20 Failure 1: Parent Goes Offline
10/14/11 EMIR Hierarchy Static Construction Events (changes in the registry) are sent directly to the Parent as they occur Failure 1: Parent Goes Offline Caching the occurred events in between Send as soon as the Parent comes online Failure 2: Child found a Parent (got newly added) Send whole local information to the parent in Chunks Events are propagated to the top level registries Handling Failures Oct 14, 2011 EMI Registry 20 20

21 Global Registries Replicated Registries
10/14/11 Global Registries Replicated Registries Data Synchronization at Global level Why? Global Service Discovery Failover Robustness Scalability Load Balancing Offers query interface Where to find GSRs? Publicly known list <<Global>> GSR <<Global>> GSR <<Global>> GSR <<Global>> GSR Oct 14, 2011 EMI Registry 21

22 10/14/11 Security Oct 14, 2011 EMI Registry 22

23 ARGUS based access control Attribute Source: VOMS-SAML
10/14/11 Goals ARGUS based access control Attribute Source: VOMS-SAML EMI Common Authentication Library (CAL) Oct 14, 2011 EMI Registry 23

24 Currently Supported Access Control
10/14/11 Currently Supported SSL/TLS based authentication – requires valid X.509 credentials Attribute Source: User Map File Defines “Users” with associated “roles” (Service Provider, Service Consumer/User, Administrator) Access Control Access Control Policies e.g. allows a user with “serviceowner” role can register and manage/control his registrations defined in a XML file containing raw XACML policies Oct 14, 2011 EMI Registry 24 24

25 10/14/11 Performance Analysis Oct 14, 2011 EMI Registry 25

26 Single Registry Instance without Security 1 GB JVM Memory 4 Cores
10/14/11 System Environment Single Registry Instance without Security 1 GB JVM Memory 4 Cores ~3 GB for MongoDB Oct 14, 2011 EMI Registry 26 26

27 Performance Analysis: Single Threaded Response Time (Without Security)
10/14/11 Performance Analysis: Single Threaded Response Time (Without Security) Oct 14, 2011 EMI Registry 27 27

28 Performance Analysis: Multithreaded Response Time
10/14/11 Performance Analysis: Multithreaded Response Time Oct 14, 2011 EMI Registry 28 28

29 Implementation Remarks
10/14/11 Implementation Remarks JAVA 6 Maven 2 JAX-RS (Java Standard for REST-ful WS) Jetty 7 Web Server MongoDB Oct 14, 2011 EMI Registry 29 29

30 Status Report Implementation Documentation DSR:
10/14/11 Status Report Implementation DSR: Provided: Most of the basic features already implemented Missing: Argus and/or VOMS-SAML support GSR: P2P synchronization/replication will be available by EMI 2 Clients: ARC, UNICORE (under development) Documentation Technical Document has been revised to reflect the implementation Comparative Survey Document is progressing Development Plan on EMI TWiki Packaging EPEL distribution, will be available by EMI 2 Source and Binary Tarball ETICS Integration Oct 14, 2011 EMI Registry 30 30

31 Service Registrants from Service providers SAGA-SD API
10/14/11 Further Extensions Service Registrants from Service providers SAGA-SD API GUI to administer and browse registry(s) Triggers, etc… Oct 14, 2011 EMI Registry 31 31

32 Twiki: https://twiki.cern.ch/twiki/bin/view/EMI/ EMIRegistry
10/14/11 Links Twiki: EMIRegistry Source Code on GitHub (public repo.): Oct 14, 2011 EMI Registry 32 32

33 10/14/11 Questions ??? Oct 14, 2011 EMI Registry 33

34 10/14/11 Thanks! Oct 14, 2011 EMI Registry 34


Download ppt "EMI Service Registry (EMIR) JRA1, Infrastructure"

Similar presentations


Ads by Google