Workflow-‑as-‑a-‑Service ¡ ¡ h1ps://wiki.openstack.org/wiki/Convec:on ¡ h1ps://etherpad.openstack.org/Convec:on ¡ ¡ keith.bray@rackspace.com ¡ 1 ¡
What ¡is ¡Convec:on? ¡ open ¡source ¡ ¡workflow ¡service ¡PROPOSAL ¡ ¡ ¡providing ¡task ¡and ¡state ¡management ¡ ¡ which ¡enables ¡ ¡cloud ¡applica:ons ¡to ¡run ¡ ¡ ¡complex ¡mul:-‑step ¡workflows ¡ 2 ¡
Why ¡the ¡name ¡Convec:on? ¡ WFaaS ¡(yawn) ¡ ¡convec:on ¡ conveys, ¡ defini:on: ¡ ¡ ¡ ¡“moving ¡in ¡a ¡con:nuous ¡stream” ¡ ¡ task ¡flows ¡ ¡ ¡analogous ¡to ¡Heat/air ¡flow ¡ ¡ ¡ ¡ ¡in ¡convec:on ¡ovens ¡ 3 ¡
Workflow ¡Use ¡Cases ¡ Batch ¡Jobs ¡ ¡sequence(s) ¡of ¡tasks ¡with ¡Start ¡and ¡End ¡ ¡ ¡e.g. ¡encode/decode ¡video ¡ ¡ Long ¡Running ¡Jobs ¡ ¡persistent ¡job ¡remaining ¡un:l ¡terminated ¡ ¡ ¡e.g. ¡auto-‑scale ¡policy, ¡or ¡BPM ¡ ¡job ¡run ¡for ¡specified ¡dura:on ¡ ¡ ¡e.g. ¡two ¡day ¡automated ¡stress ¡test ¡ 4 ¡
Why ¡talk ¡about ¡this ¡now? ¡ ¡ ¡ Asser:ons/Predic:ons: ¡ ¡Heat ¡will ¡want ¡a ¡Workflow ¡ ¡ ¡redoing ¡coding ¡work ¡is ¡bad ¡ ¡ ¡ ¡cloud ¡API ¡users ¡want ¡Workflow ¡ ¡ ¡ ¡ ¡ ¡other ¡services ¡will ¡use ¡Workflow ¡ 5 ¡
Workflow ¡is ¡not ¡orchestra:on ¡ Orchestra:on ¡above ¡Workflow ¡ ¡e.g. ¡Heat ¡ Workflow ¡above ¡Orchestra:on ¡ ¡Meta-‑flow ¡ ¡ ¡The ¡Dream: ¡ ¡ ¡ ¡flexible ¡cloud ¡ ¡ ¡ ¡build ¡anything ¡ 6 ¡
Why ¡workflow ¡for ¡Heat? ¡ Heat ¡(today) ¡ ¡accepts ¡mixed ¡declara:ve/impera:ve ¡input ¡ ¡ ¡with ¡rela:vely ¡simple ¡rela:onships ¡ ¡ ¡ ¡and ¡largely ¡linear ¡task ¡execu:on ¡ ¡ Heat ¡(future) ¡ ¡separated ¡declara:ve/impera:ve ¡input ¡ ¡ ¡simple ¡and ¡complex ¡rela:onships ¡ ¡ ¡ ¡asynchronous/simultaneous ¡tasks ¡ ¡ 7 ¡
Workflow ¡solves ¡ job ¡status ¡management ¡ ¡job ¡execu:on ¡management ¡ ¡ task ¡execu:on ¡management ¡ ¡task ¡dependency ¡management ¡ ¡ ¡task ¡state ¡management ¡ 8 ¡
I ¡can ¡imagine… ¡ <insert ¡service ¡names ¡here> ¡using ¡Workflow ¡ ¡ “top” ¡command ¡for ¡your ¡cloud ¡ ¡list ¡running ¡workloads ¡ ¡ ¡display ¡resource ¡(worker) ¡u:liza:on ¡ ¡ ¡ ¡kill/restart ¡ 9 ¡
If… ¡ we ¡end ¡up ¡wan:ng ¡a ¡Workflow ¡in ¡Heat ¡ ¡build ¡it ¡so ¡it ¡can ¡be ¡spun ¡into ¡separate ¡service ¡ ¡ ¡abstrac:ons ¡for ¡jobs/tasks ¡ ¡ we ¡want ¡to ¡build ¡Convec:on ¡ ¡build ¡it ¡so ¡other ¡services ¡could ¡consume ¡it ¡ ¡ ¡and ¡enable ¡custom ¡workflows ¡ 10 ¡
Let’s ¡discuss ¡ Do ¡others ¡want ¡this? ¡ ¡Are ¡you ¡willing/able ¡to ¡help? ¡ ¡ ¡What ¡would ¡be ¡next ¡steps? ¡ ¡ Interested? ¡ ¡h1ps://wiki.openstack.org/wiki/Convec:on ¡ ¡keith.bray@rackspace.com ¡ 11 ¡
Back ¡Slides ¡ 12 ¡
Workflow ¡Types ¡ Just-‑in-‑Sequence ¡ ¡ ¡(sta:c) ¡ Just-‑in-‑Time ¡ ¡ ¡(dynamic) ¡ ¡ Both ¡provide ¡for ¡a ¡determinis:c ¡Flow ¡Order ¡ 13 ¡
Recommend
More recommend