欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Cinder-volume的Volume Type介绍

程序员文章站 2022-05-11 15:41:53
...
一 Volume Type
Cinder可以支持多个或多种存储后端(Multiple-Storage Backend)并存,每个存储后端都有自己的名字,但是这个名字并不要求是唯一的,可以被共用,此时cinder-scheduler会根据Filter来选择在哪个存储后端创建volume。

二 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'

四 实战
[[email protected] ~]# source keystonerc_admin
[[email protected] ~(keystone_admin)]# cinder extra-specs-list
+--------------------------------------+-------+--------------------------------+
| ID                                   | Name  | extra_specs                    |
+--------------------------------------+-------+--------------------------------+
| 9cfa6403-4d33-4ff8-9fdc-b0317cd356dd | iscsi | {'volume_backend_name': 'lvm'} |
+--------------------------------------+-------+--------------------------------+
[[email protected] ~(keystone_admin)]# cinder type-list
+--------------------------------------+-------+-------------+-----------+
| ID                                   | Name  | Description | Is_Public |
+--------------------------------------+-------+-------------+-----------+
| 9cfa6403-4d33-4ff8-9fdc-b0317cd356dd | iscsi | -           | True      |
+--------------------------------------+-------+-------------+-----------+
[[email protected] ~(keystone_admin)]# cinder type-create lvm
+--------------------------------------+------+-------------+-----------+
| ID                                   | Name | Description | Is_Public |
+--------------------------------------+------+-------------+-----------+
| 32fd7fe7-fed7-40e4-a84d-228c04514741 | lvm  | -           | True      |
+--------------------------------------+------+-------------+-----------+
[[email protected] ~(keystone_admin)]# cinder type-list
+--------------------------------------+-------+-------------+-----------+
| ID                                   | Name  | Description | Is_Public |
+--------------------------------------+-------+-------------+-----------+
| 32fd7fe7-fed7-40e4-a84d-228c04514741 | lvm   | -           | True      |
| 9cfa6403-4d33-4ff8-9fdc-b0317cd356dd | iscsi | -           | True      |
+--------------------------------------+-------+-------------+-----------+
[[email protected] ~(keystone_admin)]# cinder type-key lvm set volume_backend_name=LVM_iSCSI
[[email protected] ~(keystone_admin)]# cinder extra-specs-list
+--------------------------------------+-------+--------------------------------------+
| ID                                   | Name  | extra_specs                          |
+--------------------------------------+-------+--------------------------------------+
| 32fd7fe7-fed7-40e4-a84d-228c04514741 | lvm   | {'volume_backend_name': 'LVM_iSCSI'} |
| 9cfa6403-4d33-4ff8-9fdc-b0317cd356dd | iscsi | {'volume_backend_name': 'lvm'}       |
+--------------------------------------+-------+--------------------------------------+
五 命令和配置解释
上述命令创建了一个后端类型”lvm”,并指定它的名字为”LVM_iSCSI”。
每个存储后端在配置文件中都有一组相关的配置,比如使用DevStack部署时,默认配置如下:
default_volume_type=lvmdriver-1
enabled_backends=lvmdriver-1
[lvmdriver-1]
volume_group=stack-volumes-lvmdriver-1
volume_driver=cinder.volume.drivers.lvm.LVMISCSIDriver
volume_backend_name=lvmdriver-1
我们必须设置enabled_backends选项来指定使用的存储后端,如果有多个,则需要使用”,”隔开,比如” enabled_backends=lvmdriver-1, lvmdriver-2, lvmdriver-3”。这里存储后端lvmdriver-1的名字与相关配置组”[lvmdriver-1]”的名字相同。

六 参考
相关标签: cinder