All about instances

Everything you wanted to know about instances.

© 2010-2011 Google
Use under GPLv2+ or CC-by-SA
Some images borrowed/modified from Lance Albertson and Iustin Pop

The importance of instances

Running instances is the only purpose of Ganeti. As such Instances are the most important entity that we care about: everything else exists purely for their purpose.

What makes an instance

In order to define an instance we need the following:

Virtual memory and cpus

These are provided by the hypervisor (Xen or KVM). With Ganeti we just configure their size.

Backend storage

Ganeti will manage the backend storage for instances. The most common backend storages are:

Ganeti also supports:

Network interfaces

Each instance nic has:

Operating system

The Operating System is what Ganeti uses to initialize the instance. It implements the Ganeti OS API, and is made up as a series of executables that format the instance disks and initialize them appropriately.

At minimum it can do nothing (for an instance that will later be installed from the network), and at most it sets up partitions, system, and configuration for an instance.

Currently OS scripts run as root on the target node, and so must be "trusted". Work is ongoing to allow untrusted OS images.

Main OS implementations

OS API

A definition of an OS that can be installed on an instance

Console Access

Instance console access is provided through the following means:

Conclusion

Questions?

© 2010-2011 Google
Use under GPLv2+ or CC-by-SA
Some images borrowed/modified from Lance Albertson and Iustin Pop
cc-by-sa.png