在Dashboard中点击+Create Volume,在弹出的窗口中,我们看到新的volume Source有四种。分别是No source、Snapshot、Image、Volume,如下图所示:
1、No Source, empty volume
此时新建的是一块空的硬盘,我们可以将其attach到instance上。我们新建了一块4G大小的empty volume,如下图,此时状态为available
点击Edit Volume->选择Edit Attachments ,下拉框选择我们新建的volumetest instance。
这时volume的状态发生改变。status 变为 In-Use, attached to volumetest on /dev/vdd 我们通过console进入系统观察是否成功。
这块硬盘已经成功的attach到了我们创建的instance中,我们在这个/dev/vdd 创建了一个分区/dev/vdd1 将其mount在/mnt/test 上,并在/mnt/test 目录下创建了一个test.txt文件。 将分区
umount 后,在dashboard中将volume从instance volumetest上 detach下来。同时新建一个新的instance 名为volumetest2. 进入系统后,fdisk -l 可以看到我们刚刚在另外一个instance中
做的分区,将其mount到/mnt 目录下,进入目录,可以看到我们之前创建的文件test.txt,并打开文件,查看里面的内容,如下图所示
以上是volume作为一个空磁盘使用,可以挂载到不同的instance上,实现数据迁移等功能。
2.Snapshot
使用snapshot创建volume,在此之前,我们需要使用已经存在的volume做一个snapshot,我们使用在上一部分中创建的nosource-test,创建snapshot
点击(nosource-test)Edit Volume-> Create Snapshot ,命名为snapshot-test,这时在volume snapshot标签下,可以看到我们刚刚创建的snapshot,如下图所示:
这时,我们就可以直接点击右侧的 Create volume来创建新的volume或者在之前步骤中,选择snapshot的方式来创建。我们将新创建的volume命名为snapshot-volume
创建完成之后,我们将snapshot-volume attach到我们之前创建的名为volume-test的instance中,通过console我们进入到instance系统中,可以看到/dev/vdc1就是我们刚刚通过snapshot
创建的volume,将其mount到 /mnt/ 上,进入/mnt/ 我们可以看到在上一部分中我们创建的test文件,打开文件观察到内容保存与之前一致。所以,通过snapshot创建的volume,相当于之前
volume的一个复制。
3.image
在这部分,我们介绍使用source为 image 来创建volume
Create Volume-> Source(image)-> 选择镜像(方便起见,我们选择较小的cirros镜像做测试),我们将此volume命名为image-test,此时我们就得到一个能够启动instance的volume
此时我们有两种方式来启动instance
1)使用传统方式在instance标签中启动instance,但是选择镜像时方式不同,如下图所示
2)在volume下,对image-test进行操作,点击Edit Volume 按钮边的下拉箭头,选择launch as instance ,此时系统可以正常启动。经过测试,我们在此系统根目录下创建文件test.txt,将instance
删除,重新新建一个新的instance,在根目录下仍然得到此文件,即instance的内容得到保留。
4.volume
使用这种方式,我们得到一个volume的完整拷贝,选择创建的volumde的大小应比所选择要拷贝的volume的size要大,否则创建会失败,需要注意的是,我们在选择这种方式时,目标volume不能正在使用,
其状态应为“available”才可选择。