Acme: architectural description of component-based systems
Foundations of component-based systems
Architecture of virtual machines
Proceedings of the workshop on virtual computer systems
A Case For Grid Computing On Virtual Machines
ICDCS '03 Proceedings of the 23rd International Conference on Distributed Computing Systems
Towards an efficient single system image cluster operating system
Future Generation Computer Systems - Special issue: Advanced services for clusters and internet computing
How the JSDL can Exploit the Parallelism?
CCGRID '06 Proceedings of the Sixth IEEE International Symposium on Cluster Computing and the Grid
A batch scheduler with high level components
CCGRID '05 Proceedings of the Fifth IEEE International Symposium on Cluster Computing and the Grid (CCGrid'05) - Volume 2 - Volume 02
System management software for virtual environments
Proceedings of the 4th international conference on Computing frontiers
ISORC '07 Proceedings of the 10th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing
Grid'5000: A Large Scale And Highly Reconfigurable Experimental Grid Testbed
International Journal of High Performance Computing Applications
Contextualization: Providing One-Click Virtual Clusters
ESCIENCE '08 Proceedings of the 2008 Fourth IEEE International Conference on eScience
The SmartFrog configuration management framework
ACM SIGOPS Operating Systems Review
Complementarity between Virtualization and Single System Image Technologies
Euro-Par 2008 Workshops - Parallel Processing
The Eucalyptus Open-Source Cloud-Computing System
CCGRID '09 Proceedings of the 2009 9th IEEE/ACM International Symposium on Cluster Computing and the Grid
Refinement Proposal of the Goldberg's Theory
ICA3PP '09 Proceedings of the 9th International Conference on Algorithms and Architectures for Parallel Processing
Virtual Infrastructure Management in Private and Hybrid Clouds
IEEE Internet Computing
Impact of reservations on production job scheduling
JSSPP'07 Proceedings of the 13th international conference on Job scheduling strategies for parallel processing
Saline: Improving Best-Effort Job Management in Grids
PDP '10 Proceedings of the 2010 18th Euromicro Conference on Parallel, Distributed and Network-based Processing
From infrastructure delivery to service management in clouds
Future Generation Computer Systems
How to Scale Nested OpenMP Applications on the ScaleMP vSMP Architecture
CLUSTER '10 Proceedings of the 2010 IEEE International Conference on Cluster Computing
Dynamically scaling applications in the cloud
ACM SIGCOMM Computer Communication Review
Virtual workspaces in the grid
Euro-Par'05 Proceedings of the 11th international Euro-Par conference on Parallel Processing
A Compartive Study of Cloud Computing Middleware
CCGRID '12 Proceedings of the 2012 12th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (ccgrid 2012)
Hi-index | 0.00 |
To get more results or greater accuracy, computational scientists execute their applications on distributed computing platforms such as clusters, grids, and clouds. These platforms are different in terms of hardware and software resources as well as locality: some span across multiple sites and multiple administrative domains, whereas others are limited to a single site/domain. As a consequence, in order to scale their applications up, the scientists have to manage technical details for each target platform. From our point of view, this complexity should be hidden from the scientists, who, in most cases, would prefer to focus on their research rather than spending time dealing with platform configuration concerns. In this article, we advocate for a system management framework that aims to automatically set up the whole run-time environment according to the applications' needs. The main difference with regards to usual approaches is that they generally only focus on the software layer whereas we address both the hardware and the software expectations through a unique system. For each application, scientists describe their requirements through the definition of a virtual platform (VP) and a virtual system environment (VSE). Relying on the VP/VSE definitions, the framework is in charge of (i) the configuration of the physical infrastructure to satisfy the VP requirements, (ii) the set-up of the VP, and (iii) the customization of the execution environment (VSE) upon the former VP. We propose a new formalism that the system can rely upon to successfully perform each of these three steps without burdening the user with the specifics of the configuration for the physical resources, and system management tools. This formalism leverages Goldberg's theory for recursive virtual machines (Goldberg, 1973 [6]) by introducing new concepts based on system virtualization (identity, partitioning, aggregation) and emulation (simple, abstraction). This enables the definition of complex VP/VSE configurations without making assumptions about the hardware and the software resources. For each requirement, the system executes the corresponding operation with the appropriate management tool. As a proof of concept, we implemented a first prototype that currently interacts with several system management tools (e.g., OSCAR, the Grid'5000 toolkit, and XtreemOS) and that can be easily extended to integrate new resource brokers or cloud systems such as Nimbus, OpenNebula, or Eucalyptus, for instance.