配置Nova--自动回收实例块存储空间到ceph存储池

自动回收实例的空置块存储空间到ceph存储池, 这是Juno版本中新增的feature[1]。

具体解决的问题这里[2]讲的很清楚了(虚机中文件删除了存储空间就应该回收)。

下面是如何配置使用这一feature:

环境:Openstack Juno release, qemu v1.5.3, libvirt v1.1.1, ceph v0.80.7, Nova uses shared rbd pool ; VM OS root file system is ext4.

配置:

1) mount root fs of instance with "discard" option, 这个需要做进image里面。

[root@host-10-13-42-171 ~]# cat /etc/fstab 
... ...
UUID=322bb1b9-e58f-410a-86aa-16395823a903 /      ext4    discard,defaults        1 1 


2)configure image to use "ide" as disk_bus type, the defaut is virtio, but bus type must be "ide", please refer to [3].
glance image-update $image-uuid --property hw_disk_bus=ide


3)configure Nova-compute
in /etc/nova/nova.conf, add:
... ...
hw_disk_discard=unmap

# restart nova-compute service


4) boot VM as normal 
查看虚机的配置:

cat /var/lib/nova/instances/45370d57-523e-45cd-8ed7-60bdfe7eda90/libvirt.xml
... ...
    <disk type="network" device="disk">
      <driver type="raw" cache="none" discard="unmap"/>
      <source protocol="rbd" name="system/45370d57-523e-45cd-8ed7-60bdfe7eda90_disk">
      ...  ...
      <target bus="ide" dev="hda"/>
    </disk>

5)verify
#log into VM:
dd if=/dev/zero of=./test_file bs=1M count=1024

然后删除文件,用”ceph df “命令查看对比 文件创建和删除后的已使用空间。应该看到的是虚机中文件删除后,存储空间就会立马回收。


由于IDE类型虚拟设备不支持热插拔, 而目前Ceph RBD只IDE才支持discard功能,所以要是想给虚机挂载盘Cinder volume(后端是Ceph) 并支持discard是行不通的。


不使用discard这一功能的坏处就是会有一定量的存储空间由于没有及时回收而造成额外浪费。


使用discard也会带来一些副作用,继续研究~


参考:

[1] https://wiki.openstack.org/wiki/ReleaseNotes/Juno  Add support for handing back unused disk blocks to the underlying storage system

[2]http://specs.openstack.org/openstack/nova-specs/specs/juno/implemented/libvirt-disk-discard-option.html

[3] http://ceph.com/docs/master/rbd/qemu-rbd/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值