Jump to: navigation, search

Difference between revisions of "Mistral/Design"

(Created page with "=== Design === There is no final decision on the service design. It is actively discussed in mailing lists, IRC #openstack-mistral and etherpads: * https://etherpad.openstack....")
 
(Design)
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
=== Design ===
+
== Design ==
 +
=== Basic Architecture ===
 +
[[File:Mistral-Architecture-BigPicture.png|600px|center|Mistral Architecture, big picture]]
 +
* Engine - handle control and data flow of workflow executions. Computes which tasks are ready and places them in a queue. Passes the data from task to task, deals with condition transitions, etc. Passes Key concepts of Mistral Engine design explained here: https://wiki.openstack.org/wiki/Mistral/POC
 +
* Task Executors - execute task Actions. Pick up the tasks from the queue, run actions, and send results back to the engine.
 +
* API server - exposes REST API to operate and monitor workflow executions.
 +
* Scheduler -  triggers workflows on events (e.g., periodic cron event)
 +
* Persistence - stores workflow definitions, current execution states, and past execution results.
 +
=== Discussion ===
 
There is no final decision on the service design. It is actively discussed in mailing lists, IRC #openstack-mistral and etherpads:
 
There is no final decision on the service design. It is actively discussed in mailing lists, IRC #openstack-mistral and etherpads:
 
* https://etherpad.openstack.org/p/MistralDesignAndDependencies
 
* https://etherpad.openstack.org/p/MistralDesignAndDependencies

Latest revision as of 20:44, 27 March 2014

Design

Basic Architecture

Mistral Architecture, big picture
  • Engine - handle control and data flow of workflow executions. Computes which tasks are ready and places them in a queue. Passes the data from task to task, deals with condition transitions, etc. Passes Key concepts of Mistral Engine design explained here: https://wiki.openstack.org/wiki/Mistral/POC
  • Task Executors - execute task Actions. Pick up the tasks from the queue, run actions, and send results back to the engine.
  • API server - exposes REST API to operate and monitor workflow executions.
  • Scheduler - triggers workflows on events (e.g., periodic cron event)
  • Persistence - stores workflow definitions, current execution states, and past execution results.

Discussion

There is no final decision on the service design. It is actively discussed in mailing lists, IRC #openstack-mistral and etherpads: