您的位置:首页 > 运维架构

[管理篇]VMWare搭建Openstack——Cinder的使用以及相关操作

2015-07-07 09:16 447 查看
前面已经介绍了Cinder的安装部署方式,其实是一种最简单的部署方式,控制节点、计算节点、网络节点和存储节点各一个。前面也简单介绍了关于Cinder在部署过后可能出现的简单问题的剖析,这一篇我们就介绍一下Cinder都能用来做什么?

也许你会说,Cinder不就是挂接一个虚拟机服务器的磁盘么,说白了有点像笔记本的移动硬盘,扩展存储空间,这只是一方面,虽然可以扩展存储空间说起来非常简单,但是cinder可以做更多的事情。

例如,如果用户希望你的OpenStack挂载一个类似光盘的装置,可以使用ISO***镜像怎么办?

其实这时候可以变相将ISO挂载到云硬盘上,然后通过这个云硬盘来提供ISO文件即可,当然,我们创建的镜像文件不管是qcow2还是raw格式都可以进行挂载。

1、创建RAW格式的云硬盘

我们可以在Horizon界面进行创建

supercloud@supercloud1:~$ qemu-img create -f raw w1.raw 0.1G
Formatting 'w1.raw', fmt=raw size=107374182 
supercloud@supercloud1:~$ qemu-img info w1.raw
image: w1.raw
file format: raw
virtual size: 102M (107374080 bytes)
disk size: 0

glance image-create --name "ww" --disk-format raw  --container-format bare --is-public True --progress <  w1.raw

sm@controller:~$ source admin-openrc.sh 
sm@controller:~$ glance image-create --name "ww" --disk-format raw  --container-format bare --is-public True --progress <  w1.raw
[=============================>] 100%
+------------------+--------------------------------------+
| Property         | Value                                |
+------------------+--------------------------------------+
| checksum         | 22ba3ea946f1babd3de6b90e0168567d     |
| container_format | bare                                 |
| created_at       | 2015-06-14T15:12:58                  |
| deleted          | False                                |
| deleted_at       | None                                 |
| disk_format      | raw                                  |
| id               | 7a15a7e0-65c8-4359-a815-5cce62311584 |
| is_public        | True                                 |
| min_disk         | 0                                    |
| min_ram          | 0                                    |
| name             | ww                                   |
| owner            | b36c6f68c7bc45eab07b0b62ddc516a8     |
| protected        | False                                |
| size             | 107374080                            |
| status           | active                               |
| updated_at       | 2015-06-14T15:13:02                  |
| virtual_size     | None                                 |
+------------------+--------------------------------------+




同样道理,我们也可以创建qcow2和iso文件的云硬盘

sm@controller:~$ source admin-openrc.sh 
sm@controller:~$ glance image-create --name "testiso" --disk-format iso  --container-format bare --is-public True --progress <  virtio-win-0.1-52.iso
[=============================>] 100%
+------------------+--------------------------------------+
| Property         | Value                                |
+------------------+--------------------------------------+
| checksum         | ad651f9710e6be84df27de527428a2af     |
| container_format | bare                                 |
| created_at       | 2015-06-14T14:57:49                  |
| deleted          | False                                |
| deleted_at       | None                                 |
| disk_format      | iso                                  |
| id               | 1be3871e-cf84-48f3-9bff-4b2efda64050 |
| is_public        | True                                 |
| min_disk         | 0                                    |
| min_ram          | 0                                    |
| name             | testiso                              |
| owner            | b36c6f68c7bc45eab07b0b62ddc516a8     |
| protected        | False                                |
| size             | 58497024                             |
| status           | active                               |
| updated_at       | 2015-06-14T14:57:50                  |
| virtual_size     | None                                 |
+------------------+--------------------------------------+


但是我碰到了一个错误,提示创建失败,查看/var/log/cinder/cinder-volume.log系统提示:qemu-img is not installed and image is of type iso. Only RAW images can be used if qemu-img is not installed。

也就是说我的OpenStack环境并没有安装qemu-img组件,所以系统只支持RAW格式,并不支持qcow2和iso格式,那么我们对控制节点和存储节点安装相关组件即可。

sudo apt-get install qemu-utils.

安装软件之后,我们再创建就可成功了



但是有时候,如果创建更多的时候,或者你的大小过大(X GB),系统也会提示失败,失败信息包括:Stderr: u' Volume group "cinder-volumes" has insufficient free space (255 extents): 256 required.\n' to caller

这个也很好理解,没有足够的剩余空间。

解决方法:

1、对原始的VG进行扩容

2、对该租户的云硬盘配额进行更改。

配额我们既可以在horizon查看,也可以通过命令查看

sm@controller:~$ source userC-openrc.sh 
sm@controller:~$ cinder  absolute-limits 
+-------------------------+-------+
|           Name          | Value |
+-------------------------+-------+
|    maxTotalSnapshots    |   10  |
| maxTotalVolumeGigabytes |  1000 |
|     maxTotalVolumes     |   8   |
|    totalGigabytesUsed   |   9   |
|    totalSnapshotsUsed   |   0   |
|     totalVolumesUsed    |   6   |
+-------------------------+-------+


后面我们专门对该问题进行测试解决。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: