一、volume type的相关操作

Cinder中的卷类型,是卷的一种标识,各个OpenStack的发行者可根据自身对系统的约束来定义卷类型的使用。G版的Cinder中与卷类型相关的两种资源:type和extra_specs,对应的API操作有:
创建type
查询(单个/批量)type
删除type
创建type的extra_specs
删除type的extra_specs
查询(单个/批量)type的extra_specs
更新type的extra_specs

二、使用命令行

命令行中与上述两种资源对应的操作有,后面有相应的英文解释:

type-create         Create a new volume type.
type-delete Delete a specific volume type
type-key Set or unset extra_spec for a volume type.
type-list Print a list of available 'volume types'.
extra-specs-list Print a list of current 'volume types and extra specs'

能否使用相应命令,依赖于系统中对权限的配置。下面是使用举例:

1. 创建卷类型

root@openstack:~# cinder type-create lvm
+--------------------------------------+------+
| ID | Name |
+--------------------------------------+------+
| fb18bbb9-7989-4b5d-b4d6-f61e5d071338 | lvm |
+--------------------------------------+------+

2. 查询卷类型:

root@openstack:~# cinder type-list
+--------------------------------------+------+
| ID | Name |
+--------------------------------------+------+
| fb18bbb9-7989-4b5d-b4d6-f61e5d071338 | lvm |
+--------------------------------------+------+

3. 设置卷类型的extra_spec
在命令行,设置extra_spec操作分为两种:set和unset。set就是传入一个key/value对;unset只需传入一个key值,意思是删除与这个key值匹配的extra_spec。
由于我当前环境的Cinder版本是1.0.2.20,这个功能有点问题,所以这里只贴出命令:

cinder type-key lvm set volume_backend_name=LVM_iSCSI

4. 查询卷类型的extra_spec

root@openstack:~# cinder extra-specs-list
+--------------------------------------+------+----------------------------------------+
| ID | Name | extra_specs |
+--------------------------------------+------+----------------------------------------+
| 390dc489-7290-4b46-a7d5-64ec0ed0ad8b | lvm | {u'volume_backend_name': u'LVM_iSCSI'} |
+--------------------------------------+------+----------------------------------------+

三、使用RestAPI

我使用的工具是chrome下的扩展工具:Postman,一个图形化的Rest消息客户端,当然你也可以直接使用cURL命令行工具。

1. 创建卷类型

2. 创建type的extra_specs

3. 查询卷类型
经过上面的操作,查询卷类型时的返回应该如下:

4. 删除extra_specs
这里需要注意的是URL中最后面部分就是要删除的extra_specs的key。

四、multi-backend

那么卷类型有什么用呢?这里就不得不说G版中新增的cinder的multi-backend支持了。关于multi-backend的支持,建议大家看官方文档,通过看代码理解吧。

OpenStack--Cinder(G版)中的volume type的更多相关文章

  1. OpenStack G版以后的Availability Zone与Aggregate Hosts

    关于Availability Zone与Aggregate Hosts的概念解析,可以参考这篇文章:http://blog.chinaunix.net/uid-20940095-id-3875022. ...

  2. openstack(Pike 版)集群部署(七)--- Cinder 部署

    一.介绍 参照官网部署:https://docs.openstack.org/cinder/pike/install/index-rdo.html 继续上一博客进行部署:http://www.cnbl ...

  3. 高可用OpenStack(Queen版)集群-15.Glance&Cinder集成Ceph

    参考文档: Install-guide:https://docs.openstack.org/install-guide/ OpenStack High Availability Guide:http ...

  4. OpenStack Cinder源代码流程简析

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

  5. CentOS6.6部署OpenStack Havana(Nova-Network版)

    CentOS6.4部署OpenStack Havana(Nova-Network版) 一 基本设备介绍 测试环境 CentOS6.4 x64 OpenStack 服务 介绍 计算 (Compute) ...

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

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

  7. openstack——cinder服务篇

    一.cinder 介绍:     理解 Block Storage 操作系统获得存储空间的方式一般有两种: 通过某种协议(SAS,SCSI,SAN,iSCSI 等)挂接裸硬盘,然后分区.格式化.创建文 ...

  8. ceph集成openstack cinder

    本环境ceph已经搭建,ceph搭建麻烦见本博客的其他文章 1 在cinder-volume节点安装ceph client yum install -y ceph-common 注意:glance要安 ...

  9. OpenStack安装部署管理中常见问题解决方法

    一.网络问题-network 更多网络原理机制可以参考<OpenStack云平台的网络模式及其工作机制>. 1.1.控制节点与网络控制器区别 OpenStack平台中有两种类型的物理节点, ...

随机推荐

  1. Ubuntu循环登录libGL error: fbConfigs swrast等

    Ubuntu16.04更新NVIDIA驱动后,无法进入桌面,使用vim .xsession-errors 查看错误信息,如下: libGL error: No matching fbConfigs o ...

  2. 【Java实战】源码解析Java SPI(Service Provider Interface )机制原理

    一.背景知识 在阅读开源框架源码时,发现许多框架都支持SPI(Service Provider Interface ),前面有篇文章JDBC对Driver的加载时应用了SPI,参考[Hibernate ...

  3. awk命令结合管道命令对json文件进行统计分析

    json文件内容: $ head file.json {"B": 0.337, "C": 0.663, "name": "xxx& ...

  4. iPhone开发资源汇总

    如何用Facebook graphic api上传视频: http://developers.facebook.com/blog/post/532/ Keychain保存数据封装: https://g ...

  5. yum安装php5.5,php5.6和php7.0

    本文主要介绍在CentOS系统下的php多个版本的安装使用 1.清理系统上的旧版本php 1)查询已安装的php软件 rpm -qa|grep php* yum list installed | gr ...

  6. erlang http post 发送数据请求

    ibrowse:send_req("http://127.0.0.1/NativePhone.ashx", [{"Content-Type", "ap ...

  7. bzoj 4570 妖怪

    bzoj 4570 妖怪 正解应该是 \(O(nlogn)\) 的凸包,但被我的 \(O(100n)\) 的三分水过去了. 记 $x=\frac b a $ ,显然有 \(strength_i=ATK ...

  8. 如何在 .NET 库的代码中判断当前程序运行在 Debug 下还是 Release 下

    我们经常会使用条件编译符 #if DEBUG 在 Debug 下执行某些特殊代码.但是一旦我们把代码打包成 dll,然后发布给其他小伙伴使用的时候,这样的判断就失效了,因为发布的库是 Release ...

  9. python面试题(十)

    Python中基本数据结构的操作 元组 列表 字典 集合 定义 新增 更改 删除 2.请尽可能列举python列表的成员方法,并给出一下列表操作的答案: (1)a=[1, 2, 3, 4, 5], a ...

  10. gradle asciidoc 使用

    备注:    次文档参考github 例子   1.环境准备 node npm (yarn) java KindleGen 备注: 具体的安装可以参考网上相关文档,KindleGen 下载地址:htt ...