A preemptible instance is a special kind of instance that can be stopped if there are no resources available for another request with higher priority. This way a user may launch preemptible instances (probably at a fraction of the normal price) to fulfil fault-tolerant tasks (like batch processing), taking into account that they may be terminated without further advise.
With the current OpenStack scheduling mechanism, instances are only spawned if there are enough available resources for. There is no way to prioritise a request against another, and there is no way a request could stop a running instance. When the computing capacity is tight, this situation lead to the underutilization of the infrastructure.
This presentation will introduce a PoC for scheduling preemptible instances into nova, developed in the INDIGO-Datacloud project. With this mechanism in place the scheduler can terminate preemptible instances whenever it is needed to allocate free resources for an incoming request.
The different possibilities for implementing preemptible instances into nova. How this reactive approach is required for implementing a proactive one.