OpenStack Manila发展动态系列--Austin峰会
1 Manila Mitaka版本概述
在Austin峰会上介绍到,Manila Mitaka发布版本Driver个数达到了18个,
M版本新加入14家公司(中国公司继华为之后又有99cloud等公司加入),
本版本完成了43个蓝图,主要的蓝图有共享迁移、将扩展API移入核心,
增加了功能测试、QoS公共特性支持、新增数据拷贝服务、
导入导出快照、增加了CephFS Native driver等等。
历史版本解决的bug、完成的蓝图、提交代码数量如下图所示。
2 Manila 企业应用
在谈到企业应用的时候说到,低成本,异构基础架构是Manila的优势。
并且填补了OpenStack中文件共享服务管理的空白。其中介绍了几个应用案例:
比如manila与docker结合,为docker提供文件共享管理服务。
Manila功能与Sahara的集成,可使用Manila共享为Sahara存储工作模板,在Sahara用文件共享写入和写出数据。
Sahara用户可通过Sahara服务调用Manila API接口完成自动挂载NFS共享功能。
Manila提供分布式文件系统(HDFS)等等。
Manila在SUSE OpenStack Cloud 6 中完全支持,
并且在SUSE OpenStack Cloud 6中演示了集成的Manila的功能。
3 Manila Newton版本规划
对于Manila下一个Newton版本的规划,主要包括增加快照相关功能,
支持share servers的复制,完善share迁移,
通用组取代一致性组(兼容复制组、迁移组、CGs),容器驱动,Active-Active HA等等。
详细信息如下:
1) Manila新增2个快照功能:一个是新增自动挂载只读快照功能,用于快速恢复微小的改动,比如恢复共享中的一个文件。
为了避免快照与快照的父共享访问权限的冲突,
增加了类似Share ACL的一套API控制快照权限,即可以单独为快照设置访问权限。
另一个是新增快照回滚功能,用于源共享的快速恢复,
有些不支持从快照创建共享(create share from snapshot)的后端可以用这个功能代替。
由于后端阵列实现快照回滚必须删除回滚快照时间点以后的快照。因此暂时支持允许回滚到最近时间点的快照。
2) 增加了per-share-type quotas功能,即对每个share type都可以配置share容量、个数等配额信息。
这是由运营商提出来的特性,希望通过对share type配额的配置进行share容量限制以控制成本。
3) 提醒各Driver使用update access接口替换原有的allow_access、deny_access接口。
以便manila中对ACL进行批量原子操作。
4) 为了解决Active-Active HA应用、API请求竞争(即在没有数据库层面的并发控制时,管理的资源可能被不同的API修改),
引入分布式锁(Zool),解决manila各个服务间操作冲突的问题。在Cinder中也引入了分布式锁,目前正在代码review阶段。
5) Manila添加版本对象(version object),即将当前使用的SQLAlchemy objects抽象成manila objects,
使用对象代码和实际的数据库架构隔绝,更容易滚动升级等。
6) 计划实现share类型更新功能(retype)。
Manila retype含义即对共享类型(share type)的更新。
比如,对于Huawei存储的共享类型从Thin到Thick的转换,
如果涉及到不同后端的操作比如从Huawei到Ceph,
retype功能会调用迁移功能自动将源共享迁移到符合条件的后端上创建的新共享。
7) Data Service Helper为Driver提供数据相关的的标准化操作,
比如share数据拷贝(create share from snapshot)、
获取数据拷贝进度、取消数据拷贝、由Driver指定功能的回调函数等等。
8) 为了解决Manila中一致性组(Consistency groups)、复制、迁移特性都可能存在对share组的操作,
但是不同特性之间的share组的概念怎么融合的问题。
比如在实际操作中我们会存在复制一致性组、快照复制组、迁移一个复制组、
备份一个一致性组、备份一个复制组。社区希望通过一个统一的API和尽可能小的变化的用户体验来整合这些组。
因此引入了通用组概念来解决这一问题,不同于一致性组,不需要保证share group任何专业化的操作。
当然,功能丰富的后端想增加自己的秘密武器,无论是CGs,基于组的复制,或任何其他可能会更容易。
最后由于时间原因Austin峰会上提出的Manila的议题并没有讨论完成,敬请关注后续的相关系列文章。
编者注:本文来自OpenStack开源团队工程师钟君
OpenStack Manila发展动态系列--Austin峰会的更多相关文章
- OpenStack Cinder发展动态系列--Austin峰会
在Mitaka版本,Cinder团队在多个特性和领域取得了重大进展. 本文将做一个简要的介绍:关于在Mitaka版本已经完成的功能和特性,以及讨论在Newton版本将会开发的功能和特性. 1 Cind ...
- OpenStack Austin 峰会观察:OpenStack as IaaS 已是过去,Solutions on OpenStack 才是未来
虽然搞 OpenStack 前后也有几年,但是今年在美国 Austin 举办的 OpenStack Summit 我还是第一次参加.回来之后,一直还在回味,觉得要写点东西,将我在这次峰会上的观察和思考 ...
- OpenStack计费项目Cloudkitty系列详解(一)
云计算是一种按需付费的服务模式,虽然OpenStack前期在计量方面走了些“弯路”,但现在的ceilometer.gnocchi.aodh.panko项目的稳步并进算是让其峰回路转.然而,目前来看Op ...
- C#的发展历程 -- 系列介绍
C#的发展历程第五 - C# 7开始进入快速迭代道路 C#与C++的发展历程第四 - C#6的新时代 C#与C++的发展历程第三 - C#5.0异步编程巅峰 C#与C++的发展历程第二 - C#4.0 ...
- Openstack manila的一些命令
(本文是测试环境进行的操作:) 1.查看一些信息: [root@openstackcontroller ~]# manila type-list [root@openstackcontroller ~ ...
- 从 2017 OpenStack Days China 看国内云计算的发展现状
目录 目录 China Runs On OpenStack 私有云正式迈入成熟阶段 混合云的前夜已经来临 China Runs On OpenStack OpenStack Days China 作为 ...
- 动态添加删除网卡 - 每天5分钟玩转 OpenStack(156)
这是 OpenStack 实施经验分享系列的第 6 篇. 在项目实施过程中,经常会有添加删除网卡的需求.比如一个运行数据库的 instance,初始只有一个网卡,数据库服务和备份共用这块网卡,后来为提 ...
- OpenStack源码系列---起始篇
近一年来我负责公司云点的自动化部署工作,包括公司自有云平台方案.XenServer.vSphere.Ovirt和OpenStack的自动化安装部署,目前已经到了OpenStack这一部分.自动化部署首 ...
- OpenStack调研:OpenStack是什么、版本演变、组件关系(Havana)、同类产品及个人感想
一点调研资料,比较浅,只是觉得部分内容比较有用,记在这里: 首先,关于云计算,要理解什么是SAAS.PAAS.IAAS,这里不述:关于虚拟化,需要知道什么是Hypervisor,这里也不述: Open ...
随机推荐
- 从win到多系统
相信有不少电脑爱好者喜欢折腾系统,尤其还是一个小白(感觉多系统强的不要不要的,各种崇拜),然后就走上了深渊. 首先,我一开始也是个win系统的忠实用户,没用过其他系统的我几乎不知道其他系统的存在,反正 ...
- pyecharts各省人口GDP可视化分析
版权声明:本文为博主原创文章,转载 请注明出处:https://blog.csdn.net/sc2079/article/details/82503569 9月9日更:本篇博客数据下载:链接:http ...
- Navicate 12 for mysql
先下载安装好 navicat工具,在下载下面的工具 链接:https://pan.baidu.com/s/1Y-IOrbnhvhlS6Y3lpABLQg密码: nktc 选其中的一个 请根据自己安装N ...
- JAVA连接Derby数据库
其实,JAVA连接Derby数据库也很简单,和一般的数据库操作一样:1.加载驱动2.获取连接3.进行数据库操作4.记得关闭连接 示例如下: import java.sql.ResultSet; imp ...
- hbase实践(十六) BlockCache
0 引言 和其他数据库一样,优化IO也是HBase提升性能的不二法宝,而提供缓存更是优化的重中之重. 根据二八法则,80%的业务请求都集中在20%的热点数据上,因此将这部分数据缓存起就可以极大地提升系 ...
- 多git项目中账户的管理
每个项目配置用户名: git config user.name "your_name" git config user.email "your_email" 如 ...
- C语言笔记 09_共用体&typedef&输入|输出
共用体 共用体允许您在相同的内存位置存储不同的数据类型.您可以定义一个带有多成员的共用体,但是任何时候只能有一个成员带有值.共用体提供了一种使用相同的内存位置的有效方式. 定义共用体 为了定义共用体, ...
- Codeforces Round #442 (Div. 2) B题【一道模拟题QAQ】
B. Nikita and string One day Nikita found the string containing letters "a" and "b&qu ...
- React项目性能优化
1. 使用生产版本和Fragment 1. 生产版本 确保发布的代码是生产模式下(压缩)打包的代码. 一般运行npm run build命令. 直接从webpack看配置文件,需要设置mode = ' ...
- java.io.ObjectInputStream类详解
1.public class ObjectInputStream extends InputStream implements ObjectInput, ObjectStreamConstants分析 ...