openstack卷管理

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

一个卷是一个可拆卸的块存储设备,类似于USB硬件驱动。你可以为一台云主机实例添加一个卷。创建和管理卷,结合使用nova和cinder客户端命令。

迁移卷

作为管理员,你可以迁移一个卷从一个地方到另一个地方,它的迁移方式是对用户透明的。你只能迁移没有快照且没有附属在云主机实例上的卷。

卷迁移使用cinder migrate命令,如下:

cinder migrate volumeID destinationHost --force-host-copy True|False

--force-host-copy为True时,执行通用的基于主机的迁移机制,绕过任何驱动程序的优化。

备注:如果卷有快照,指定的目标主机不能接受这个卷。如果用户不是管理员,迁移会失败。

创建一个卷

此例子基于一个镜像创建一个叫my-new-volume的卷。

1.列出镜像,记住要使用的卷ID

 

2.列出可用的空间,记录要使用的ID

 

3.创建一个8 gibibytes (GiB)空间的卷

cinder create 8 --display-name my-new-volume --image-id 397e713c-b95b-4186-ad46-6126863ea0a9 --availability-zone nova

 

4.验证创建是否成功

 

如果创建成功,它是状态是available。如果它的状态是error,有可能是超过了配额。

根据规定的卷类型创建一个卷

Cinder支持三种方式在创建卷时指定卷类型

1.volume_type。通过命令添加--volume-type参数指定

2.cinder_img_volume_type (via glance image metadata)。引用含有cinder_img_volume_type属性的镜像

3.default_volume_type (via cinder.conf)。在配置文件设置默认值。

volume_type

使用创建命令时添加--volume-type参数指定

cinder create --name  --volume-type  

cinder_img_volume_type

如果glance image有cinder_img_volume_type属性,当在创建卷时,cinder使用这个参数来指定卷类型。

选择一个有cinder_img_volume_type属性镜像,然后引用它来创建卷

glance image-list

 

glance image-show a8701119-ca8d-4957-846c-9f4d27f251fa

 

cinder create --name test --image-id a8701119-ca8d-4957-846c-9f4d27f251fa 1

 

default_volume_type

如果上面情况不满足,在创建卷时Cinder使用cinder.conf里default_volume_type值来定义。

例如cinder.conf文件配置如下

[default]
default_volume_type = lvmdriver-1

为云主机实例添加卷

1.添加卷到云主机上,需要指定云主机ID和卷ID

nova volume-attach 84c6e57d-a6b1-44b6-81eb-fcb36afd31b5 573e024d-5235-49ce-8332-be1576d323f8 /dev/vdb

 

2.查看卷信息

cinder show 573e024d-5235-49ce-8332-be1576d323f8

输出显示这个卷是被添加到ID为84c6e57d-a6b1-44b6-81eb-fcb36afd31b5云主机上,可用空间是nova,且是可启动的。

 

调整卷大小

1.要调整卷的大小,首先要从云主机上拆卸下来。拆卸云主机的卷需要传递云主机ID和卷ID

nova volume-detach 84c6e57d-a6b1-44b6-81eb-fcb36afd31b5   573e024d-5235-49ce-8332-be1576d323f8

nova volume-detach这条命令没有输出信息

2.列出卷

cinder list

 

可看到卷的状态现在是可用的。

3.调整卷的大小需要传递卷ID和调整后的数值(调整后的数据要大于旧的)

cinder extend 573e024d-5235-49ce-8332-be1576d323f8 10

备注:当扩展一个带有快照的LVM卷时,该卷将会失效。除非在lvm.conf定义了auto_activation_volume_list参数,它才会自动地重激活。

删除卷

1.要删除一个卷,必须从云主机实例上拆卸下来。如何拆卸卷看前面步骤

删除卷可传卷名或者ID

cinder delete my-new-volume

2.再次列出卷,可以看到被删除的卷的状态为deleting

cinder list

 

当卷被删除成功时,执行cinder list时就不会再出现

 

转让卷

使用cinder transfer命令可以将卷的所有权转给其他人。卷的捐赠者(原拥有人),要创建一个转让请求,然后将转让ID和授权key给接收人。卷接收人需要使用ID和key来实现接收。

备注:卷的转让步骤适用于在同个云内的租户(tenants)

创建一个转让请求

1.以卷的捐赠者身份登陆,列出可用的卷:

 

2.以卷的捐赠者身份登陆,给想要转让的卷创建转让授权码

cinder transfer-create volumeID

3.要转让的卷的状态必须是available,否则请求会被拒绝。如果转让请求在数据库里是有效的(没有过期或被删除),卷会被定为awaiting-transfer状态

cinder transfer-create a1cdace0-08e4-4dc7-b9dc-457e9bcfe25f

 

备注:1. 可以通过--display-name displayName参数来指定卷转让的名字。2.auth_key属性只有在执行cinder transfer-create VOLUME_ID时会显示,执行cinder transfer-show TRANSFER_ID命令不会显示

4.将卷转让的ID和授权KEY发给新拥有人(如用邮件发送)

5.查看等侍转让的卷

cinder transfer-list

 

当卷被接收后,transfer-list就会查不到待转让的卷

 

接收一个卷转让请求

1.卷接收者,必须要先从卷的转让人那里获取卷转让ID和授权key

2.执行接收请求

cinder transfer-accept transferID authKey

例如:

 

删除一个卷转让

1.列出可用的卷查看他们的状态

 

2.查看卷转让ID

 

3.执行卷删除命令

cinder transfer-delete transferID

例如

 

4.验证操作结果

 

 

卷的管理和去管理

快照是卷的时间版本点。管理员可以进行卷的管理和去管理。

管理快照

使用cinder snapshot-manage命令进行快照管理

cinder snapshot-manage VOLUME_ID IDENTIFIER --id-type ID-TYPE --name NAME --description DESCRIPTION --metadata METADATA

参数解析:

VOLUME_ID:快照的父亲卷的ID,此卷是被块存储服务管理的。

IDENTIFIER:快照的标识符,名字或者ID

--id-type后端设备提供的标识符类型。通常是source-name source-id。默认是source-name

--name快照的名字,默认是空。

--description快照的描述,默认是空。

--metadata键值对的元数据,默认是空。

下面的例子将名为my-volume-id的卷创建名为my-snapshot-id快照

cinder snapshot-manage my-volume-id my-snapshot-id

去快照管理

删除快照使用cinder snapshot-unmanage命令

cinder snapshot-umanage SNAPSHOT

SNAPSHOT:快照的名字或者ID

例如

cinder snapshot-unmanage my-snapshot-id

转载于:https://my.oschina.net/jennerlo/blog/735255

你可能感兴趣的:(openstack卷管理)