openstack taskflow
来源:互联网 发布:暗黑3台服mac 编辑:程序博客网 时间:2024/05/16 00:33
Taskflow是OpenStack中的一个Python库, 它主要是可以使task的执行变得更加容易、一致和可靠,这对于openstack中各种长流程任务来说应该十分有好处,当前已经使用在cinder中,下一步是neutron。
它 执行flows,可以停止、重新开始和以安全的方式恢复flows。它与RDBMS动作保护有点类似。当一个flow被中断时,动作可以恢复,甚至可以自动回滚。
概念上的例子
下面的伪代码说明一个flow是如何以类似SQL 事务的方式工作的。
START TRANSACTION task1: call nova API to launch a server || ROLLBACK task2: when task1 finished, call cinder API to attach block storage to the server || ROLLBACK ...perform other tasks...COMMIT
上的例子可以用于Heat 编排的一部分,添加一个挂载了卷的实例。这个编排可以并行的生成大量的类似的实例。
Why
OpenStack 的代码正在有组织的增长,但是如果进程被意外中断,却没有一个可以安全恢复或回滚代码的标准;大多数项目并没有使task可以重启或恢复,简单的挑高或恢复的场景在今天的代码里已几乎不可能。
Goal:通过Taskflow的推广,使OpenStack变的可信和可靠,甚至在没有HA的情况下。
Further use-cases
Orphaned resources(僵尸资源)
由于现在OpenStack的项目缺乏事务语义,所以会留下一些资源成为孤儿状态,或ERROR的状态,在自动化系统(Heat)
情况下,这种状况是非常不能令人接收的,因为非常难分析哪些是要被清除的孤儿资源。Taskflow提供其以任务为导向的模型
将能正确地追踪资源的变动,这就容许在一些资源上的动作可以自动地被撤销,以确定没有资源被称为“僵尸”。
Metrics and history(度量和历史)
当OpenStack服务被组织进task 和 flow 的对象和模式时,他们获得自动地能力,可以简单的增加度量报告和历史操作,这些
服务用taskflow可以记录这些度量/历史,并与task 和 flow的运行进行关联。在多种OpenStack服务中,有多种方法
Design
架构
Tasks
来源:https://wiki.openstack.org/wiki/TaskFlow
0 0
- openstack taskflow
- Openstack Taskflow
- Openstack 实现技术分解 (4) 通用技术 — TaskFlow
- OpenStack公共组件oslo之十五——taskflow
- Openstack Cinder中建立volume过程的源码解析(4)----以及taskflow相关解析
- Openstack Cinder中建立volume过程的源码解析(5)----以及taskflow相关解析
- Openstack Cinder中建立volume过程的源码解析(6)----以及taskflow相关解析
- Openstack Cinder中建立volume过程的源码解析(7)----以及taskflow相关解析
- Oracle TaskFlow CURD
- TaskFlow 打包JAR
- ADF taskflow用法
- nova 中的taskflow的实现
- Task Flow使用指南之九:Remote TaskFlow
- OpenStack
- OpenStack
- OpenStack
- OpenStack
- OpenStack
- 轻松编写 C++ 单元测试 介绍全新单元测试框架组合: googletest 与 googlemock
- 用java代码构建一个线程池
- 最新颖的广州传智播客PHP课程吸引众多学员
- IGMP技术介绍
- 创建临时表
- openstack taskflow
- android开发教程(十三)——JAVA基础之理解JNI原理(java调用C语言接口)
- Java注解之Annotation详解
- 广州传智播客最全面的.Net课程
- Android菜鸟的成长笔记(5)——Android系统源代码你下载了吗?
- csdn第一天
- VS2003 加载 PNG 图片资源问题
- 152 - Tree's a Crowd
- Mysql中source 命令