Snooze

autonomic virtual machines system management

Matthieu Simonin
October 15, 2013

The system

Hierarchy

  • Local Controller
    Compute nodes (Host virtual machines)

  • Group Manager
    Manage Local Controller
    VMs placement & life-cycle
    Energy management

  • Group Leader
    Oversees Group Managers

The system

Key Features

  • Self-Configuration
  • Self-Healing
  • Virtual machines consolidation
  • Overload/underload detection

The system

Self-configuration

Step 1: Leader Election

  • at system startup
  • after leader failure

Step 2: Group managers join procedure

Step 2: Group managers join procedure

Step 2: Group managers join procedure

Step 2': Local Controllers join procedure

Step 2': Local Controllers join procedure

Step 2': Local Controllers join procedure

Step 2': Local Controllers join procedure

Step 2': Local Controllers join procedure

The system

Self-healing

Group Manager Failure

Group Manager Failure

Group Manager Failure

Group Manager Failure

Group Leader Failure

Group Leader Failure

Group Leader Failure


... and the promotion of the Group Manager is seen as a failure by its previously assigned Local Controller

The system

Automatic consolidation

Can be triggered periodically or manually.

Before consolidation
  • Group Leader
  • Group Manager
  • Local Controller
  • Virtual machine

After consolidation

From your laptop...

... to large scale

Largest deployment :
1 000 GMs
10 000 LCs

From your laptop...

... to large scale

Recovery of catastrophic failures

Developper's corner

  • Add your own policies for

    • VM scheduling
    • Consolidation
    • Underload and overload detection

  • Control the system with the API

    • get nodes monitoring information
    • control vm life cycle
    • trigger energy management
Source code is avalaibable in github