A Middleware for Self-Managing Large-Scale Systems
This thesis investigates designs that enable individual components of a distributed system to work together and coordinate their actions towards a common goal. While the basic motivation for our research is to develop engineering principles for large-scale autonomous systems, we address the problem...
Main Author: | |
---|---|
Format: | Doctoral Thesis |
Language: | English |
Published: |
KTH, Skolan för elektro- och systemteknik (EES)
2006
|
Subjects: | |
Online Access: | http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-4178 http://nbn-resolving.de/urn:isbn:978-91-7178-512-1 |
id |
ndltd-UPSALLA1-oai-DiVA.org-kth-4178 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-UPSALLA1-oai-DiVA.org-kth-41782013-01-08T13:06:15ZA Middleware for Self-Managing Large-Scale SystemsengAdam, ConstantinKTH, Skolan för elektro- och systemteknik (EES)Stockholm : KTH2006autonomic computingself-organizationdecentralized controlweb servicesquality of serviceTelecommunicationTelekommunikationThis thesis investigates designs that enable individual components of a distributed system to work together and coordinate their actions towards a common goal. While the basic motivation for our research is to develop engineering principles for large-scale autonomous systems, we address the problem in the context of resource management in server clusters that provide web services. To this end, we have developed, implemented and evaluated a decentralized design for resource management that follows four principles. First, in order to facilitate scalability, each node has only partial knowledge of the system. Second, each node can adapt and change its role at runtime. Third, each node runs a number of local control mechanisms independently and asynchronously from its peers. Fourth, each node dynamically adapts its local configuration in order to optimize a global utility function. The design includes three fundamental building blocks: overlay construction, request routing and application placement. Overlay construction organizes the cluster nodes into a single dynamic overlay. Request routing directs service requests towards nodes with available resources. Application placement partitions the cluster resources between applications, and dynamically adjusts the allocation in response to changes in external load, node failures, etc. We have evaluated the design using complexity analysis, simulation and prototype implementation. Using complexity analysis and simulation, we have shown that the system is scalable, operates efficiently in steady state, quickly adapts to external events and allows for effective service differentiation by a system administrator. A prototype has been built using accepted technologies (Java, Tomcat) and evaluated using standard benchmarks (TPC-W and RUBiS). The evaluation results show that the behavior of the prototype matches closely that of the simulated design for key metrics related to adaptability and robustness, therefore validating our design and proving its feasibility. QC 20100629Doctoral thesis, monographinfo:eu-repo/semantics/doctoralThesistexthttp://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-4178urn:isbn:978-91-7178-512-1Trita-EE, 1653-5146 ; 2006:055application/pdfinfo:eu-repo/semantics/openAccess |
collection |
NDLTD |
language |
English |
format |
Doctoral Thesis |
sources |
NDLTD |
topic |
autonomic computing self-organization decentralized control web services quality of service Telecommunication Telekommunikation |
spellingShingle |
autonomic computing self-organization decentralized control web services quality of service Telecommunication Telekommunikation Adam, Constantin A Middleware for Self-Managing Large-Scale Systems |
description |
This thesis investigates designs that enable individual components of a distributed system to work together and coordinate their actions towards a common goal. While the basic motivation for our research is to develop engineering principles for large-scale autonomous systems, we address the problem in the context of resource management in server clusters that provide web services. To this end, we have developed, implemented and evaluated a decentralized design for resource management that follows four principles. First, in order to facilitate scalability, each node has only partial knowledge of the system. Second, each node can adapt and change its role at runtime. Third, each node runs a number of local control mechanisms independently and asynchronously from its peers. Fourth, each node dynamically adapts its local configuration in order to optimize a global utility function. The design includes three fundamental building blocks: overlay construction, request routing and application placement. Overlay construction organizes the cluster nodes into a single dynamic overlay. Request routing directs service requests towards nodes with available resources. Application placement partitions the cluster resources between applications, and dynamically adjusts the allocation in response to changes in external load, node failures, etc. We have evaluated the design using complexity analysis, simulation and prototype implementation. Using complexity analysis and simulation, we have shown that the system is scalable, operates efficiently in steady state, quickly adapts to external events and allows for effective service differentiation by a system administrator. A prototype has been built using accepted technologies (Java, Tomcat) and evaluated using standard benchmarks (TPC-W and RUBiS). The evaluation results show that the behavior of the prototype matches closely that of the simulated design for key metrics related to adaptability and robustness, therefore validating our design and proving its feasibility. === QC 20100629 |
author |
Adam, Constantin |
author_facet |
Adam, Constantin |
author_sort |
Adam, Constantin |
title |
A Middleware for Self-Managing Large-Scale Systems |
title_short |
A Middleware for Self-Managing Large-Scale Systems |
title_full |
A Middleware for Self-Managing Large-Scale Systems |
title_fullStr |
A Middleware for Self-Managing Large-Scale Systems |
title_full_unstemmed |
A Middleware for Self-Managing Large-Scale Systems |
title_sort |
middleware for self-managing large-scale systems |
publisher |
KTH, Skolan för elektro- och systemteknik (EES) |
publishDate |
2006 |
url |
http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-4178 http://nbn-resolving.de/urn:isbn:978-91-7178-512-1 |
work_keys_str_mv |
AT adamconstantin amiddlewareforselfmanaginglargescalesystems AT adamconstantin middlewareforselfmanaginglargescalesystems |
_version_ |
1716508965015126016 |