[openstack-dev] [Nova] State machines in Nova

Timofei Durakov tdurakov at mirantis.com
Tue May 31 20:03:45 UTC 2016


Hi team,

there is blueprint[1] that was approved during Liberty and resubmitted to
Newton(with spec[2]).
The idea is to define state machines for operations as live-migration,
resize, etc. and to deal with them operation states.
The spec PoC patches are overall good. At the same time I think is will be
good to get agreement on the usage of state-machines in Nova.
There are 2 options:

   - implement proposed change and use state machines to deal with states
   only
   - procs:
         - could be implemented/merged right now
         - cleans up states for migrations
      - cons:
         - state machine only deal with states, and it will be hard to
         build on top of it task API, as bp [1] was designed for another thing.


   - use state machines in Task API(which I'm going to work on during next
   release):
      - procs:
         - Task API will orchestrate and deal with long running tasks
         - usage state-machines could help with actions
         rollbacks/retries/etc.
      - cons:
         - big amount of work
         - requires time.

I'd like to discuss these options in this thread.

Timofey

[1] -
https://blueprints.launchpad.net/openstack/?searchtext=migration-state-machine
[2] - https://review.openstack.org/#/c/320849/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20160531/c27d06a1/attachment.html>


More information about the OpenStack-dev mailing list