Section: Software



Christine Morin, Christine.Morin@inria.fr




Version 1.0




Snooze [56] , is a novel VM management framework for private clouds which is designed to scale across thousands of nodes. Unlike the existing cloud management frameworks, Snooze utilizes a self-organizing hierarchical architecture and performs distributed VM management. Particularly, VM management tasks are performed by multiple managers, with each manager having only a partial view of the system. Moreover, fault-tolerance is provided at all levels of the hierarchy by replication and integrated leader election algorithm. Consequently, the system is able to self-heal and continue its operation despite system component failures. In addition, VM monitoring is integrated into the framework and a generic scheduling engine exists to support advanced (e.g., consolidation) scheduling policies. Last but not least, a RESTful command line interface (CLI) exists to support virtual cluster (VC) definitions and management (i.e., start, shutdown, destroy, suspend, etc.) as well hierarchy visualization and exporting in GraphML format.

Snooze is fully implemented from scratch in Java and currently comprises approximately 15.000 lines of maintainable abstractions-based code. The leader election algorithm is built on top of the Apache ZooKeeper [59] highly available and reliable coordination system. In order to provide a uniform interface to the underlying hypervisors and support transparent VM monitoring and management, Snooze integrates the libvirt virtualization library.

The first Snooze prototype [41] has been developed and evaluated on Grid5000 experimental testbed.

Active contributors (from Myriads team):

Eugen Feller, Christine Morin.