OpenStack Cinder发展动态系列--Austin峰会
在Mitaka版本,Cinder团队在多个特性和领域取得了重大进展。
本文将做一个简要的介绍:关于在Mitaka版本已经完成的功能和特性,以及讨论在Newton版本将会开发的功能和特性。
1 Cinder Mitaka版本更新
1.1 复制:replication v2.0版本已废弃
实现了一套新的面向管理员的API replication v2.1,用来故障转移整个后端。
在cinder.conf配置文件的driver节点新增了卷类型。新增了复制的上报能力。
目前支持replication v2.1版本的厂商driver有:Dell,EMC,HPE,Huawei,IBM,Pure。SolidFire计划在N版本支持。

1.2 备份
当前版本备份特性已经支持全量和增量备份和不中断业务的备份。
在M版本新增了备份快照。
已经支持备份的driver有:Swift,Posix,NFS,GlusterFs,Ceph,IBM TSM。
在M版本新增了Google Cloud Storage的driver。
在M版本实现了backup服务与volume服务的解耦。
Backup服务部署不再强制需要跟volume服务部署在同一个节点。

1.3 双活HA
引入cinder volume服务的AA特性,带来了以下两个问题:本地文件锁,非原子状态事物。
解决方案是:增加分布式锁,移除API的竞争。
在N版本计划新增分布式job,新增资源清理处理,使用分布式锁替换manager的本地文件锁。

1.4 OS-Brick 和 Brick Cinder客户端扩展
os-brick包含cinder和nova用来挂载和解除挂载卷操作的初始化代码。
新增了brick cinder客户端扩展确保在没有Nova的情况下能够进行节点上的存储管理。

1.5 多重挂载
新增支持允许一个卷可以被挂载到多个主机或者vm上。
Cinder服务端和客户端都做了修改,Nova的修改也在M版本合入,但是目前还不可以使用所有的功能。

1.6 滚动升级
新增了RPC对象的兼容性,能够滚动升级依赖向后兼容性的RPC和version Object。
新增了在线schema的更新。
1.7 微版本
带来的新特性的开发变化。
已经实现了:新的/v3 endpoint;微版本服务代码;
新的微版本 3.1和3.2;Cinderclient支持 /v3 和微版本;
Devstack 支持/v3。有了微版本的支持,cinder Rest API在不影响旧有版本的API情况下就可以被改变。
通过在HTTP header中新增一个field versions并发送到client来实现。
1.8 驱动
新增的后端驱动有:Coho,DISCO,Fujitsu ETERNUS,Nexenta Edge and NexentaStor,Tegile。
2 Cinder Newton版本计划
2.1 复制
Replication特性下一步计划:新增一套面向租户的一套API(Tiramisu),实现分组的复制以及租户的测试灾难恢复的API。
2.2 备份
M版本已完成解除与volume服务的绑定,可以部署到多个物理节点上。
N版本计划开发:添加单元测试以及tempest测试用例,添加HA中的清理,修复单个backup服务性能问题等。
2.3 双活HA
为了支持cinder的双活特性新增了分布式锁,计划在N版本新增相关的压力测试。
2.4 微版本
N版本需要继续开发的有:
Tempest 测试用例修改。
功能性测试用例。
其他客户端适配cinder的 /v3 API。
编者注:本文来自OpenStack开源团队工程师陈莹
OpenStack Cinder发展动态系列--Austin峰会的更多相关文章
- OpenStack Manila发展动态系列--Austin峰会
1 Manila Mitaka版本概述 在Austin峰会上介绍到,Manila Mitaka发布版本Driver个数达到了18个, M版本新加入14家公司(中国公司继华为之后又有99cloud等公司 ...
- OpenStack Austin 峰会观察:OpenStack as IaaS 已是过去,Solutions on OpenStack 才是未来
虽然搞 OpenStack 前后也有几年,但是今年在美国 Austin 举办的 OpenStack Summit 我还是第一次参加.回来之后,一直还在回味,觉得要写点东西,将我在这次峰会上的观察和思考 ...
- OpenStack Cinder 与各种后端存储技术的集成叙述与实践
先说下下loop设备 loop设备及losetup命令介绍 1. loop设备介绍 在类 UNIX 系统里,loop 设备是一种伪设备(pseudo-device),或者也可以说是仿真设备.它能使我们 ...
- OpenStack Cinder源代码流程简析
版权声明:本博客欢迎转载,转载时请以超链接形式标明文章原始出处!谢谢! 博客地址:http://blog.csdn.net/i_chips 一.概况 OpenStack的各个模块都有对应的client ...
- osprofiler在openstack Cinder里的使用
最近在做OpenStack Cinder driver的性能调试, 之前一直是通过在driver里面加入decorator,完成driver各个接口的执行时间的统计. 其实在openstack,已经在 ...
- OpenStack Cinder组件支持的块存储设备表
摘自恒天云官网:http://www.hengtianyun.com/download-show-id-18.html OpenStack的Cinder组件底层可以连接多种存储设备和方案,每一个Ope ...
- 八、OpenStack—Cinder组件安装
一.安装和配置控制器节点 1.先决条件 1)创建数据库 # mysql -u root -p 2)创建cinder数据库 MariaDB [(none)]> CREATE DATABASE ci ...
- OpenStack计费项目Cloudkitty系列详解(一)
云计算是一种按需付费的服务模式,虽然OpenStack前期在计量方面走了些“弯路”,但现在的ceilometer.gnocchi.aodh.panko项目的稳步并进算是让其峰回路转.然而,目前来看Op ...
- 【OpenStack Cinder】Cinder安装时遇到的一些坑
最近需要安装Cinder组件,然后遇到了两个比较蛋疼的错误导致controller节点输入cinder service-list一直不能显示cinder节点上的cinder-volume服务. 错误1 ...
随机推荐
- VM虚拟机?
虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的.运行在一个完全隔离环境中的完整计算机系统. 虚拟系统通过生成现有操作系统的全新虚拟镜像,它具有真实windows系统完全 ...
- 开源框架---通过Bazel编译使用tensorflow c++ API 记录
开源框架---通过Bazel编译使用tensorflow c++ API 记录 tensorflow python API,在python中借用pip安装tensorflow,真的很方便,几句指令就完 ...
- PAT1046
题目链接 https://pintia.cn/problem-sets/994805260223102976/problems/994805277847568384 题解 题目有几个点需要注意: 甲和 ...
- 云计算下的企业IT运维
云计算管理员们一般都工作在一个分布式局域网计算基础设施中,它与传统数据中心最大的区别之一就是,所有被存储.调配和管理的数据都在一个私有云中.基于云计算的高效工作负载监控可在性能发生问题之前就提前发现这 ...
- linux实操_shell流程控制
if判断: 基本语法: if [ 条件判断式 ] then 程序 elif [ 条件判断式 ] then 程序 fi 实例:请编写一个shell程序,如果输入的参数,大于60,则输出“及格了”,如果小 ...
- android studio调试报错:java.lang.RuntimeException: Unable to start activity ComponentInfo
报错信息: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.pro_u_loc/com.e ...
- 洛谷P1330 封锁阳光大学【dfs】
题目:https://www.luogu.org/problemnew/show/P1330 题意:一个无向边,一个河蟹可以占领一个点,但一个点只能被一个河蟹占领. 占领了一个点之后,这个点所有的边都 ...
- HDU 6150 - Vertex Cover | 2017 中国大学生程序设计竞赛 - 网络选拔赛
思路来自 ICPCCamp /* HDU 6150 - Vertex Cover [ 构造 ] | 2017 中国大学生程序设计竞赛 - 网络选拔赛 题意: 给了你一个贪心法找最小覆盖的算法,构造一组 ...
- Android系统输入事件分发详解
什么是输入事件? 我们知道,运行android系统的设备本质上是一台计算机,使用者在和计算机进行交互的时候可以抽象成简单的对计算机的输入和输出(IO).那么对于运行在计算机上的操作系统来说,操作系统在 ...
- JAVA类的无参方法
Java注释: //:单行注释 /**/:多行注释 /** */:JavaDoc注释 方法: ...