Presentation is loading. Please wait.

Presentation is loading. Please wait.

Rüdiger Kapitza AspectIX Research Group University Erlangen-Nürnberg EDAS: Providing an Environment for Decentralized Adaptive Services.

Similar presentations


Presentation on theme: "Rüdiger Kapitza AspectIX Research Group University Erlangen-Nürnberg EDAS: Providing an Environment for Decentralized Adaptive Services."— Presentation transcript:

1 Rüdiger Kapitza AspectIX Research Group University Erlangen-Nürnberg EDAS: Providing an Environment for Decentralized Adaptive Services

2 2 Grid-Computing Vision Providing a user supported grid-like infrastructure for long-term, decentralized and adaptive services Open-source project management, online communities EDA S Peer-to-Peer Middleware

3 3 Challenges Grid inspired organisational architecture Concept of domain and virtual organisation Decentralized management tasks via peer-to-peer techniques Authentication and authorization Code provisioning Service placement and resource management Decentralized adaptive service model Fault tolerance Mobility Scalability

4 4 Outline EDAS Architecture Resource Management Decentralized Adaptive Service Agenda Conclusion

5 5 EDAS - Architecture Institutions, companies and also single users are willing to support a project by providing resources How should we use their resources? Where place the service of our project?

6 6 EDAS - Core Components Home Environment (HE)- Connects all nodes of an administrative domain Service Environment 1..* * provides resources to Decentralized, Adaptive Service 1 1..* manages the execution of Home Environment Node 1 1..* manages Service Environment (SE) - Provides a distributed execution environment for services Decentralized, Adaptive Service (DAS) - Dynamically distributed within the scope of an service environment

7 7 EDAS - Home Environment Mediator between peers of an administrative domain and one or more Service Environments (Projects) Monitors and manages resources of a peer set Controlled by a Domain Manager Add and remove peers Assign and revoke resources to Service Environments

8 8 EDAS - Service Environment Collect and combine system information provided by HEs Supports automatic distribution of services Based on load, available resources and DAS specific requirements Controlled by a service manager Start, stop and configure services Accept or decline resource offers (manually or via policy rules)

9 9 EDAS -Decentralized Adaptive Service Decentralized, Adaptive Services expand or shrink autonomoulsy depending on Service demand Fault tolerance reasons etc. Could have different internal service-structure models and ideally change its service structure over time if necessary

10 10 Resource Management Core idea: Controlled resource sharing Home Environments offer fixed amount of resources to Service Environments Service Environment can accept or decline resource offers Tasks of the Home Environment Resource monitoring of physical resources: CPU, network, memory, disk Local Area Placement -Manage service placement at domain level Keep service environment limits Task of the Service Environment Wide Area Placement - Manage service placement in scope of a project

11 11 Resource Limits at Node Level Physical Limit Provided by the underlying hardware Node Limit Bounds the resource usage of a node Local Limit Resources of a node assigned to a service belonging to certain SE Node Limit Local Limit Node A Service A (SE 1) Service B (SE 2) unassigned Physical Limit 0% 100% reserved

12 12 Resource Limits at Domain Level Global Limit The overall amount of resources dedicated to a service environment Node ANode BNode C Node D Global Limit

13 13 Resource Monitoring at Node Level Prototype based on monitoring and management facility Java Management Extension (SDK 1.5) Provides beans to monitor CPU and memory usage Implemented own management bean for bandwidth JMX Manager Web Browser SNMP Manager RMI AdaptorSNMP AdaptorHTTP Adaptor Applications MBeans Mbean Server Remote Manager Connector Level Agent Level Instrumentation Level

14 14 Resource Monitoring at Node Level

15 15 Service Placement at Domain Level Problem Resource demand of services can dynamically change Restrictions Collocation and dislocation of services at the same node Goal Avoid service migration if possible  Placement algorithm should balance resource usage and keep limits Node ANode BNode C Node D Service A

16 16 Keeping Resource Limits Problem Resource demand of services can dynamically change but we have to keep the global limit More time critical than service placement Approach Rededication of limits Node ANode BNode CNode D

17 17 Keeping Resource Limits Solution: Diffusive load balancing algorithm All nodes supporting a service environment at a domain are connected in small overlapping groups Frequent exchange and balancing of free resources (free slack) If free resources locally reach zero the global limit is reached Additionally exchange neighbour and resource limit information to compensate failed nodes

18 18 Service Placement at Project Level Problem Resource demand of services can dynamically change Resource availability can dynamically change Restrictions Collocation and dislocation of services at the same domain Goal Avoid service migration if possible Consider network proximity

19 19 Related Approaches Peer-to-Peer query engines SWORD (Berkley) XenoServer (Cambridge) Decentralized approaches based on Peer-to-Peer Networks Adaptive Service Placement Algorithms for Autonomous Service Networks (HP) T. Repantis et. al: Adaptive Resource Management in Peer-to- Peer Middleware Centralized approaches for closed systems HP Internet Utility Farms: Quatermaster B. Urgaonkar: Application Placement on a Cluster of Servers CORBA based systems: Realize & MEAD

20 20 DAS: Decentralized Adaptive Services Based on the AspectIX Middleware CORBA ORB Offers with Fragmented Objects a distributed object model Fragmented Object (FO): Arbitrary set of distributed fragments Local fragment at every node that accesses FO FO is encapsulation unit with well-defined interface, but without any relation to a specific location. Fragmented Object Client Fragment Implementation View

21 21 DAS: Decentralized Adaptive Services Goal Provide long-term running, user accessed services in dynamically changing environments Approach Active Object Replication Migration support Custom client-side interaction via smart proxy approach

22 22 DAS: Decentralized Adaptive Services Support service development Annotated IDL and a special IDL-Compiler (IDLFlex by Hans Reiser) to generate custom stubs and skeletons to interact with a group communication framework (Jgroups) New method modifier local - stub method local to the client private - stub method is only object internally accessible admin - credential guarded method read - non state mutating method

23 23 DAS: Decentralized Adaptive Services Replicas can be dynamically created and moved inside the scope of the fragmented object Client-side fragments can be exchanged Example Service: Version Control Service Replicated service core holds only current file information and manages concurrent access Files might be stored on different nodes of the Service Environment Node A GC (Jgroups) Node A Client Replica Custom Fragment Custom Fragment

24 24 Research Agenda Status Quo 10/2005 Basic resource accounting infrastructure Framework for decentralized adaptive service Code loading framework based on JXTA Integration of JXTA into AspectIX Current work 10/2005 - 4/2006 Implementation of EDAS infrastructure Design and implementation of placement and resource accounting algorithms Next steps 4/2006-9/2006 Evaluation of algorithms Design and implementation of a membership service as a DAS Implementation of example services: source code repository,...

25 25 Conclusion Grid like infrastructure Resource management support Decentralized adaptive service model Long term perspective provide a project management infrastructure like SourceForge Further information: http://www.aspectix.org Questions?

26 26 AspectIX Middleware View Stores IOR of the object Manages active fragment interfaces Manages the currently active fragment implementation Fragment Interface Automatically generated by the IDL compiler Coordination mechanisms for safe exchange of the fragment implementation Fragment Implementation The real implementation of the object's functionality Service developer may define arbitrary fragment implementation types Fragment Implementation View FragmentInterface Client

27 27 DAS: Decentralized Adaptive Services Example Service: Version Control Service (VCS) Replicated service core holds only information about where to find the files and manages concurrent access Files might be stored on different nodes of the Service Environment or anywhere else Ensures small service state and makes service easy relocatable Service Environment Client Node 1: getFile() 2: url:getFile() 3: data:getFile()

28 28 Resource Limits at Node Level Physical Limit Provided by the underlying hardware Node Limit Bounds the resource usage of a node Local Limit Resources of a node assigned to a service Node Limit Local Limit Node A Service A (SE 1) Service B (SE 2) unassigned Physical Limit 0% 100% reserved

29 29 Resource Limits at Domain Level Global Limit The overall amount of resources dedicated to a service environment Node ANode BNode C Node D


Download ppt "Rüdiger Kapitza AspectIX Research Group University Erlangen-Nürnberg EDAS: Providing an Environment for Decentralized Adaptive Services."

Similar presentations


Ads by Google