2K Resource Management Service
The main purpose of this service is
to provide sharing of resources among dynamic sets of
distributed users. It should
allow consistent and inexpensive access to the resources
regardless of their geographic location.
This work is an extension of the resource
management system developed in 2K. 2K is a
distributed adaptable operating system. It adresses the
problem of resource management in heterogeneous systems,
providing support for automatic configuration, quality of
service, dynamic reconfiguration, monitoring, etc.
Resource Management in 2K
The Resource Management Service in 2K is
built as collection of LRMs(Local Resource
Managers), GRMs(Global Resource Managers) and
Usually, a set of hosts are grouped
forming a cluster on which 2K is installed. Each host in
the cluster has a LRM, that notifies the GRM periodically
about significative changes in the availability of resources on
that host, e.g., memory and CPU load. Moreover, it offers a
distributed program execution service.
The GRM is an extended CORBA Trader that
provides some additional features. Its responsibility is
to maintain and consolidate information about resource
availability provided by the LRMs. It also forwards
component execution requests to others LRMs, choosing the
remote host that has the best conditions to offer the
quality of service requested by a component.
This service was implemented by Tomonori
Yamane and can be downloaded with the 2K/dynamicTAO
Extension of the model
The previous version of the resource
management service in 2K is appropriate when the objects
are in the same cluster. They are isolated from resources
available outside their domains. However, it might be
that an object requires an amount of memory that is not
available in any machine in the local cluster but that is
available in some remote cluster.
Thus, a mechanism that expands their
domains and aggregates more resources in a single
wide-area, distributes system would be very useful. It would
increase the probability of finding resources that fit the
the needs of user applications.
Tipically, a cluster is composed of 2 to
100 hosts, each one with its LRM. Each cluster has one
GRM. For clusters to cooperate sharing resources, they
require an infrastructure to allow sharing of information
about resource availability across multiple clusters.
the main purpose of this work is to introduce and develop
a mechanism to link different clusters.
Our concern in the design of this
extension to the 2K Resource Management Service is to
guarantee the scalability of the system. It is also
necessary to add and remove clusters with a minimal
impact over the system.
Clusters are linked using a tree
structure to share information. Two or more domains that
want to offer their resources are linked
through other GRM data,
which give hints about the state of the resources on
each one of its direct descendents.
Our current implementation can be found at 2k-08.09.2004.tgz
(instable version). More versions to come soon.
Experiments plan (in portuguese).
Point of contact: firstname.lastname@example.org
Do not hesitate to write me!