Title: Fabio Kon Tomonori Yamane Christopher Hess
1Dynamic Resource Management and Automatic
Configuration of Distributed Component Systems
- Fabio Kon Tomonori Yamane Christopher
Hess - Roy Campbell M. Dennis Mickunas
- Departments of Computer Science
- University of São Paulo
- University of Illinois at Urbana-Champaign
- http//choices.cs.uiuc.edu/2K
2Introduction
- Modern Society requires software developers to
- produce large quantities of programs
- write large, complex programs
- support different OSes
- support different machine architectures
- Partial solution Component Technologies
- Enterprise Java Beans
- ActiveX Controls, COM
- CORBA Component Model
3Problems in Existing Component Technologies
- Lack support for representing dependencies among
components - Difficult to support
- Automatic Configuration
- Dynamic Reconfiguration
- Fault-tolerance
- Adaptation, etc...
4Lack of Proper Dependence Management in Existing
Operating Systems
- 1. Administration / Configuration
- Junk libraries left on Windows after uninstall
- 2. System Architecture
- Different (static) instances of same OS
- Configuration of Microkernels
- 3. Fault-tolerance
- Module failure not handled by others
5Our Solution
- Infrastructure for Dependence Management
supporting - Automatic Configuration
- Dynamic Reconfiguration
- Code Distribution
- Dynamic Resource Management
- Help developers to support
- Fault-Tolerance
- Consistent Reconfiguration
- Adaptation
6Automatic Configuration Service
- Automatically instantiates applications and
services by assembling their components. - Based on
- Prerequisites static representation of
dependencies. - ComponentConfigurators dynamic representation
of dependencies.
7Prerequisites
- What a component needs to run
- nature of hardware resources
- share of the hardware resources
- software services (i.e., components) it requires
- Video Client example
- PC with Sound card
- 50 of CPU gt400MHz
- MPEG decoder, CORBA Video Service
8Simple Prerequisite Description Format (SPDF)
- Video Client application
- hardware requirements
- machine_type x86
- os_name Linux
- os_version 2.2
- min_ram 5MB
- optimal_ram 40MB
- cpu_speed gt400MHz
- cpu_share 50
- software requirements
- Decoder CR/video/decoders/MPEG
- VideoServer NS/local/MPEGVideoServer
9Automatic Configuration Process
- 1. Fetches component code and prerequisites from
the Component Repository. - 2. Dynamically links component code into the
application address-space. - 3. Based on the prerequisites, repeats the
process for other components.
10Automatic Configuration Architectural Framework
fetch prerequisites
load application
Component Repository
Prerequisite Resolver
fetch components
return reference
Prerequisite Parser
QoS-Aware Resource Manager
Cache
11Component Configurators
- Reify dynamic inter-component dependencies.
- Created on-the-fly by the Prerequisite Resolver.
- System and application software can inspect and
reconfigure the Dependence Graph.
12ComponentConfiguratorFramework
- Allows browsing, inspection, and reconfiguration
- Can be customized through inheritance
- Clear separation of concerns
13QoS-Aware Distributed Resource Management
- Global Resource Manager (GRM)
- one in each cluster
- maintains an approximate view of the cluster
resource utilization - Local Resource Manager (LRM)
- runs in each node
- exports the state of the local resources
- Has a Real-Time Scheduler (DSRT)
- admission control, reservation, and scheduling
14Loading an Application with the Resource
Management Service
- 1. Client contacts local LRM, giving application
name and QoS requirements - 2. LRM performs admission test
- 3. Request forwarded to GRM
- 4. GRM forwards request to best candidate
- 5. Remote LRM performs admission test,
reservation, and runs AutoConfig.
15Experimental Results
- Testbed
- 2 Sun Sparc Ultra-60, two 360MHz CPUs
- Solaris 7 OS
- 100Mbps Fast Ethernet
16AutoConfig ServiceLoading Several Components
17AutoConfig ServiceLoading Components of
Different Sizes
18Related Work
- Automatic Configuration
- Customizable Operating Systems
- Java/Jini
- Prerequisites
- SOS operating system Shapiro 94
- QoS description languages Frølund 99
- Distributed Resource Management
- Globus Foster and Kesselman 98
- Legion Grimshaw 97
19Future Work
- Apply the framework to the Gaia project (Active
Spaces, Ubiquitous Computing). - Enhance version control
- Example component A v. 1.2 may require
(component B v. 2.x) or
(component B v. 1.x and component C v. 2.3) - Performance Analysis of the Resource
Management Service.
20Conclusions
- As computing devices become pervasive in our
society, we will encounter - highly dynamic, heterogeneous environments
- complex dependencies
- difficult management
- 2K presents an integrated architecture that helps
managing this complexity in a clean and efficient
way.
21How to Contact Us
- Fabio Kon
- kon_at_ime.usp.br
- http//www.ime.usp.br/kon
- Christopher Hess
- ckhess_at_cs.uiuc.edu
- http//choices.cs.uiuc.edu/2k
22(No Transcript)
23Mobile Configuration Agents
- Suitable for Large-Scale Systems
- Useful for
- code distribution
- dynamic reconfiguration
- inspection
24The 2K Architecture
25Overall Architecture(relationships)