在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峰会的更多相关文章

  1. OpenStack Manila发展动态系列--Austin峰会

    1 Manila Mitaka版本概述 在Austin峰会上介绍到,Manila Mitaka发布版本Driver个数达到了18个, M版本新加入14家公司(中国公司继华为之后又有99cloud等公司 ...

  2. OpenStack Austin 峰会观察:OpenStack as IaaS 已是过去,Solutions on OpenStack 才是未来

    虽然搞 OpenStack 前后也有几年,但是今年在美国 Austin 举办的 OpenStack Summit 我还是第一次参加.回来之后,一直还在回味,觉得要写点东西,将我在这次峰会上的观察和思考 ...

  3. OpenStack Cinder 与各种后端存储技术的集成叙述与实践

    先说下下loop设备 loop设备及losetup命令介绍 1. loop设备介绍 在类 UNIX 系统里,loop 设备是一种伪设备(pseudo-device),或者也可以说是仿真设备.它能使我们 ...

  4. OpenStack Cinder源代码流程简析

    版权声明:本博客欢迎转载,转载时请以超链接形式标明文章原始出处!谢谢! 博客地址:http://blog.csdn.net/i_chips 一.概况 OpenStack的各个模块都有对应的client ...

  5. osprofiler在openstack Cinder里的使用

    最近在做OpenStack Cinder driver的性能调试, 之前一直是通过在driver里面加入decorator,完成driver各个接口的执行时间的统计. 其实在openstack,已经在 ...

  6. OpenStack Cinder组件支持的块存储设备表

    摘自恒天云官网:http://www.hengtianyun.com/download-show-id-18.html OpenStack的Cinder组件底层可以连接多种存储设备和方案,每一个Ope ...

  7. 八、OpenStack—Cinder组件安装

    一.安装和配置控制器节点 1.先决条件 1)创建数据库 # mysql -u root -p 2)创建cinder数据库 MariaDB [(none)]> CREATE DATABASE ci ...

  8. OpenStack计费项目Cloudkitty系列详解(一)

    云计算是一种按需付费的服务模式,虽然OpenStack前期在计量方面走了些“弯路”,但现在的ceilometer.gnocchi.aodh.panko项目的稳步并进算是让其峰回路转.然而,目前来看Op ...

  9. 【OpenStack Cinder】Cinder安装时遇到的一些坑

    最近需要安装Cinder组件,然后遇到了两个比较蛋疼的错误导致controller节点输入cinder service-list一直不能显示cinder节点上的cinder-volume服务. 错误1 ...

随机推荐

  1. 创建守护进程步骤与setsid()

    原创:http://www.cnblogs.com/mickole/p/3188321.html 一,守护进程概述 Linux Daemon(守护进程)是运行在后台的一种特殊进程.它独立于控制终端并且 ...

  2. CodeForces 768E SG函数 整数划分 Game of Stones

    一个标准的NIM游戏 加上一条规则:每堆石子对于每个数目的石子只能被取一次 可以SG打表 dp[i][j]表示现在有i个石子 j是可以取的石子数的状压 第i位为1就表示i个石子没被取过 #includ ...

  3. PHP获取文件大小的几种方法!

    一.get_header($url,true): $url = 'http://www.xxx.com/MoJing_win_x86_64_V5.125.zip'; $res = get_header ...

  4. Selenium(一)自动化测试简介

    1.软件开发流程 产品分析需求--架构师确认系统包含哪些模块--开发编码--开发和测试一起做单元测试--测试开展版本(集成)测试(使用手工测试,测试通过后,才开始设计脚本)--测试开展系统测试--最后 ...

  5. nginx中ngx_http_gzip_module模块

    ⽤用gzip⽅方法压缩响应数据,节约带宽gzip on;gzip_min_length 1000;gzip_proxied expired no-cache no-store private auth ...

  6. Dapper+Mysql 使用LIKE模糊查询写法踩坑

    LIKE '%@Title%' 会解析成'%'@Title'%' 这里用拼接也是不行的'%'+@Title+'%' 只能用MySQL函数方法拼接 public dynamic GetListByFil ...

  7. Pycharm----设置默认脚本请求头

    每次新建py文件,均需要在文件头部加上编码声明,每次的手动添加比较麻烦,因此设置自动生成,也可添加作者.时间等等,详见如下: 设置后的样例显示: 操作方式: 操作完如上的截图步骤,再次新建一个py文件 ...

  8. Java集合--Map架构

    概要 前面,我们已经系统的对List进行了学习.接下来,我们先学习Map,然后再学习Set:因为Set的实现类都是基于Map来实现的(如,HashSet是通过HashMap实现的,TreeSet是通过 ...

  9. zhengrui集训D1-D5笔记

    Day_1 计数 它咕掉了 Day_1 序列数据结构 它咕掉了 Day_2 线性代数 高斯消元\Large{高斯消元}高斯消元 普通版:略 模质数:求逆 模合数:exgcd 逆矩阵\Large{逆矩阵 ...

  10. Activation HDU - 4089 (概率DP)

    kuangbin的博客 强 #include <bits/stdc++.h> using namespace std; const int MAXN = 2005; const doubl ...