[openstack-dev] [Heat] Using Job Queues for timeout ops
Joshua Harlow
harlowja at outlook.com
Thu Nov 13 08:45:07 UTC 2014
A question;
How is using something like celery in heat vs taskflow in heat (or at least concept [1]) 'to many code change'.
Both seem like change of similar levels ;-)
What was your metric for determining the code change either would have (out of curiosity)?
Perhaps u should look at [2], although I'm unclear on what the desired functionality is here.
Do u want the single engine to transfer its work to another engine when it 'goes down'? If so then the jobboard model + zookeper inherently does this.
Or maybe u want something else? I'm probably confused because u seem to be asking for resource timeouts + recover from engine failure (which seems like a liveness issue and not a resource timeout one), those 2 things seem separable.
[1] http://docs.openstack.org/developer/taskflow/jobs.html
[2] http://docs.openstack.org/developer/taskflow/examples.html#jobboard-producer-consumer-simple
On Nov 13, 2014, at 12:29 AM, Murugan, Visnusaran <visnusaran.murugan at hp.com> wrote:
> Hi all,
>
> Convergence-POC distributes stack operations by sending resource actions over RPC for any heat-engine to execute. Entire stack lifecycle will be controlled by worker/observer notifications. This distributed model has its own advantages and disadvantages.
>
> Any stack operation has a timeout and a single engine will be responsible for it. If that engine goes down, timeout is lost along with it. So a traditional way is for other engines to recreate timeout from scratch. Also a missed resource action notification will be detected only when stack operation timeout happens.
>
> To overcome this, we will need the following capability:
> 1. Resource timeout (can be used for retry)
> 2. Recover from engine failure (loss of stack timeout, resource action notification)
>
>
> Suggestion:
> 1. Use task queue like celery to host timeouts for both stack and resource.
> 2. Poll database for engine failures and restart timers/ retrigger resource retry (IMHO: This would be a traditional and weighs heavy)
> 3. Migrate heat to use TaskFlow. (Too many code change)
>
> I am not suggesting we use Task Flow. Using celery will have very minimum code change. (decorate appropriate functions)
>
>
> Your thoughts.
>
> -Vishnu
> IRC: ckmvishnu
> _______________________________________________
> OpenStack-dev mailing list
> OpenStack-dev at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20141113/38009910/attachment.html>
More information about the OpenStack-dev
mailing list